大家好,今天小编关注到一个比较有意思的话题,就是关于最难做的编程语言有哪些的问题,于是小编就整理了2个相关介绍最难做的编程语言有哪些的解答,让我们一起看看吧。
开发一套编程语言有多难?
简单的不那么难,学一下AST,能解释就算了。但是要做的运行效率高,安全,高并行,编译效率高,多平台支持等等是计算机科学里最深奥的领域,关垃圾收集器就可以研究整个职业生涯了
说难吧,现在有几千种语言,其中很多都是个人完成的,例如我最近比较喜欢的elixir,是个巴西人写的。说不难吧,国内确实没一个像样的语言项目,至于易语言,这个可能9成的程序员没把它当个语言。所以难还是不难?其实从技术角度来看,并不难。但从时间,精力的耗费上,以及后期推广及社区维护上来看,就吓跑了一堆人。对国内程序员包括我来说,有那时间,不如挣点奶粉钱
谢谢邀请,
开发一套编程语言,主要存在两个障碍,其一:任何一种编程语言都有其存在的必要性,所以要搞明白为什么要弄一套新的编程语言,首先一定要有市场需求所在,编程语言如同一个产品,一定有强烈的市场需求,编程语言存在的价值在于生态链,只有具备完善的生态链才能存活的有意义,现在全球有600多种编程语言,主流的编程语言也就是几十种,而这些编程语言中,都有强大的社区依托,也就是强大的生态链支撑,生命力才会如此的强大。
其二 本身的技术实现框架,有些编程语言在诞生之处就能感受到其强大的支配力,可扩展性等等特性,在设计之处越是想的明白,越是框架清晰,后期越容易维护,编程语言底层实现基本上靠的都是C语言,所以社会上很多对于内在不是很了解到人,说到C语言已经是过时的语言了,现在学习意义已经不大的论调,只不过在就业岗位绝对数量上,和java,python等高级编程语言无法比拟,但在一些关键岗位上离开了C语言还真不行,编写编程语言就属于这类的工作,一定需要强大的C语言做支撑。
现在国内很多人喊着什么时候有一套属于自己的编程语言,现在的易语言就是迎着这种势头发展起来的,虽然很多内行程序员不是很认可这种编程语言,觉得只是包了一层语言了而已,但毕竟有了中文编程的模式,按照这个道理应该这种编程语言,在国内会有一个非常大的发展前景,经过这些年的发展,还是没有登上主流编程语言的舞台,倒是现在很多游戏辅助软件都在用这种编程语言去搞,很多学习易语言的人就是为了做个游戏***或者***梦想着一天能够赚大钱,在08年之前制作游戏***的人基本上赚了大钱,主要当初针对游戏***的法律还不完善,让很多人钻了空子,在08年之后基本上从事这方面的人,从台前转到了幕后,专心做dll库文件,从中继续谋取暴利,所以编程语言的最难的在于如何普及,如何被大众认可,要成为主流的编程语言首先具备广泛性,从这点来讲英语编程相对来讲是比汉语更加有优势,在传播性更加容易被接收,从各个层面讲,一种编程语言要具备,通用性,兼容性,稳定性等特点。
编程语言的设计不是为了编写而编写,首先要迎合科技发展的需要,如同C语言的诞生让程序员摆脱了用汇编编写程序的痛苦,Java等高级语言的诞生又让程序员不在用面向过程中的语言,去写复杂的功能,只需要调用成熟的类库就可以轻松完成很强大的功能,主要在于编程语言在向高度集成化的方向发展,所以好的编程语言一定顺应科技发展大趋势,只有这样才能圈更多粉丝,建设更全面的生态链。
你要懂的东西很多,首先是计算机方面的,计算机原理,汇编,编译原理;然后是一整套的语言逻辑;再者,还要懂数学方面的知识,比如离散数学等等。一个人很难完成,需要团队合作。还有个前提就是,你本身就是一个资深的编程者。
开发一套编程语言的难度对于任何团队来说都是难度系数极高的,个人基本上不可能开发完整一套。
编程语言现状
目前优秀的编程语言以C语言,J***a语言,Python语言三大语言比较有代表性,也是目前的主流语言。
任何一门编程语言都是一种工具,那么这个工具需要用来做什么,这是首先需要考虑的。因为目前编程语言这么多,你要开发一套语言用来做什么别人做不到的,或者比别人做的更好的。就别说超越J***a或者C语言,先开发一套可以替代这两种的语言就非常优秀了。
编程语言开发大致思路
首先要定下一个体系,是面向对象还是面向过程,还是另辟蹊径。这需要你对计算机底层有足够的了解,对编译原理非常精通。
然后你要给语言定一套规则,会用怎么样的[_a***_],会有什么样的特性。一点非常重要,会决定这套语言的受众面和推广程度。
接下来你可以选择去设计这套语言,是基于C语言的库,还是借用点J***a的类库,还是自己设计一套与汇编语言有密切关系的语言。
IT行业里面的编程语言都很难吗?
计算机编程语言相对来说确实比较难
因为计算机语言过多的是逻辑抽象能力,你需要有非常强的逻辑思维能力。例如,最基本的排序算法,不管是冒泡排序还是快速排序,你都需要有一个空间想象能力,你要能在大脑中想象出每一种排序过程中,数组中的每一个数字变化的过程。如果缺乏一定的抽象思维能力,那你是无法想象出来这个逻辑的。
再例如一个简单的登陆逻辑,如果你的思维逻辑能力不强,你可能只会想到用户名或者密码不对这个逻辑,但是一个登录的逻辑看似简单,其实却也有很多的逻辑处理。先要查询用户名存不存在,不存在返回错误提示,如果存在,找到对应的密码,两个密码进行比较,相等则登陆成功,不相等返回错误信息。此外,我们还需要处理登陆的错误次数,防止恶意攻击。这需要通过验证码和错误次数来的逻辑来处理。所以我们还需要处理用户输错用户名和密码的次数。所以,这里面有很多的业务逻辑来处理,对于一个程序员的最基本的要求就是良好的逻辑思维能力。
而如果你已经有计算机语言的基础,比如你之前学过C或者C++、J***a之类的,那学其它编程语言就很简单,因为语言都是相通的。一旦你通过学习其它编程语言已经培养了良好的逻辑思维能力,那这种思维逻辑能力就是根深于你的脑子中,在你学习其它语言的过程中,这种逻辑能力是完全适用的。所以,你学习其它编程语言就非常快的。比如去学习Python、Golang、JavaScript等语言,基本只需要很短的时间就可以掌握。
到此,以上就是小编对于最难做的编程语言有哪些的问题就介绍到这了,希望介绍关于最难做的编程语言有哪些的2点解答对大家有用。