涨涨姿势,13 个比较冷门但很实用的编程语言

enzerliu 8年前
   <p>值得学习的编程语言多种多样,前端、后端乃至框架选项更是多达数百种。如果大家拥有计算机科学专业背景,那么对C或者C++一定不会陌生; 而如果您属于开发从业者,那么Java、Python、Perl与Ruby则肯定是您的日常工具。</p>    <p style="text-align: center;"><img src="https://simg.open-open.com/show/1382796b1a01e42d7724474f8e11d245.jpg"></p>    <p>如果,您不喜欢随大流学习编程语言,就是喜欢小众的这股特有的调调,或者喜欢不断的学习新的语言~那么请千万别错过下面这份推荐列表,它们不仅很有意而且还有学习的价值,虽然人气不高但却值得一试。</p>    <h3>1. Rust</h3>    <p style="text-align: center;"><img src="https://simg.open-open.com/show/9f1420d47ae607574706af71047532c2.jpg"></p>    <p>由Mozilla Research支持的Rust专注于“类型安全性、内存安全性、并发性与性能”。大家可以利用Rust构建起分布式客户端-服务器应用及可靠的系统级程序。虽然由于诞生时间不长而尚未受到广泛关注,但我们相信Rust一定拥有光明的发展前景。</p>    <h3>2. Hack</h3>    <p style="text-align: center;"><img src="https://simg.open-open.com/show/60ac222cb72940f11584e321eb4c6d3c.jpg"></p>    <p>它 是由非死book开发的新编程语言,是基于Hip-Hop(简称HHVM)开发的,同时结合了动态类型语言(如PHP语言)和静态类型语言(如C语 言)两种特点的一种编程语言,利用Hack,大家能够快速构建起复杂的网站,且无需编译即可运行,这种静态类型语言允许用户使用动态编码方式,尽管其在社 交网络上已经引起关注,但目前Hack的使用范围仍然不广。</p>    <h3>3. Ada</h3>    <p style="text-align: center;"><img src="https://simg.open-open.com/show/c4cac9384791f2c89869ed4e42c8b945.jpg"></p>    <p>Ada拥有众多强大的特性,例如“按需扩展、避免命名空间污染、数据抽象与信息隐藏语义、可复用性、并发支持、方法中立性、实时支持以及关键性安全支持”等灵活优势。不过必须承认,Ada仍未能广泛流行。</p>    <h3>4. Haskell</h3>    <p style="text-align: center;"><img src="https://simg.open-open.com/show/4c1ac0d9e4cba92f1e97857dfb216045.jpg"></p>    <p>Haskell 是一种“纯函数”编程语言,其设计中处处可见懒惰、静态类型与类型推断的痕迹。除了简单且优雅的语法,Haskell的速度也绝对令人惊喜。事实上,它的 人气要比大家印象中更高——ABN AMRO利用其构建投资银行相关程序,而ASIC与FPGA设计软件厂商Bluespec则利用其开发自家产品。</p>    <h3>5. Erlang</h3>    <p style="text-align: center;"><img src="https://simg.open-open.com/show/eef5d1153a1ce9e29daac00fedd563cb.jpg"></p>    <p>由 爱立信计算机科学实验室开发的Erlang可作为开源代码自由使用,支持多线程并与Java一样使用虚拟机机制——但与Java不同的是,Erlang面 向嵌入式系统及强大的服务器。Erlang开发出的知名成果包括非死book chat。有些人认为Erlang的语法比较奇怪,但其仍然非常适用于某些任务,并能够较好地适应普遍性需求。</p>    <h3>6. Racket</h3>    <p>Racket 属于基于Lisp/Scheme的多范式语言。其设计目标之一在于创建、设计及实现其它编程语言。Racket指南的表述非常清晰且组织极为完善。其语法 非常简单; 其属于无类型语言,且提供大量用于教学的库及语言。事实上,我也不明白为什么Racket未能真正流行起来。</p>    <h3>7. IO</h3>    <p style="text-align: center;"><img src="https://simg.open-open.com/show/fbc88927445a77f9f4fb418fc0acb269.jpg"></p>    <p>这是一种相对较新的语言。其具备一套原型设计对象模型,且拥有能够快速上手的语法设置。支持者认为这是一种堪称伟大的通用型编程语言,当然也许新元素太多阻止了其得到广泛认可。</p>    <h3>8. Groovy</h3>    <p style="text-align: center;"><img src="https://simg.open-open.com/show/5733900e165347c1feb312ce9a43fa45.png"></p>    <p>Apache Groovy是一种可选类型的动态语言,且面向Java平台。这一面向对象语言可作为脚本化语言或者通过编译方式使用。人们往往将其称为“java的一套 超集”。其特性包括平稳的学习曲线、紧凑的语法、单元测试支持能力、动态类型与域特定语言、强大的处理能力以及易于上手的Web应用开发机制。这款语言由 于推广不力而未受开发者的应有重视,但TIOBE指数表示其人气已经达到Scala的三倍。</p>    <h3>9. Scratch</h3>    <p style="text-align: center;"><img src="https://simg.open-open.com/show/3a0211df62713dd3cb188c44edfc5edf.jpg"></p>    <p>由麻省理工媒体实验室开发的Scratch专门面向8到16岁的儿童编程学习者。其不具备典型语法。开发团队指出,“这使其比其它语言更易于修改、更具实际意义且更有社交特性。”此语言免费、可视且非常适合用于开发游戏及动画。</p>    <h3>10. Dart</h3>    <p style="text-align: center;"><img src="https://simg.open-open.com/show/81c181537b55667263a94bbe8efdaf58.png"></p>    <p>曾 几何时,谷歌Dart被广泛视为继JavaScript之后最适用于Web开发的语言。遗憾的是,Dart一直未能超越JS,而谷歌则利用 CoffeeScript(Dart到JavaScript编译器)对其进行了重塑。降了谷歌之外,Dart的用户还包括Blossoms与 Workiva等。尽管Dart在谷歌内部拥有崇高地位,但其在外部世界中的人气确实不高。</p>    <h3>11. Q</h3>    <p style="text-align: center;"><img src="https://simg.open-open.com/show/bc08ed02c966cac475776a7471ceb592.jpg"></p>    <p>Q由数据分析厂商Kx Systems公司开发。其为同一问题提供了解决方法,从而实现语言通用性。Q属于面向kdb+(一套基于磁盘的内存列式数据库)的查询语言。作为函数编程语言,其性能可预测性存在一定问题,这可能主要源自懒惰与“对垃圾回收机制的高度依赖”。</p>    <h3>12. Clojure</h3>    <p style="text-align: center;"><img src="https://simg.open-open.com/show/15c4f82702ab63cdfabbf737d0b92ab9.jpg"></p>    <p>Clojure是一种专门面向并发用例的Lisp变体。其运行在Java虚拟机上,大家还可以轻松获得Java交互性以进一步提升其“Lisp”风格。与本列表中的其它语言不同,它拥有相当丰富的附加选项、多种方法以及大量预置数据结构。</p>    <h3>13. Lua</h3>    <p style="text-align: center;"><img src="https://simg.open-open.com/show/faef457cd784dc5b42e1760993e50cf7.jpg"></p>    <p>尽管非常简单,但Lua被广泛认为是一种能够支持命令式、函数式以及面向对象方法的多范式语言。Lua代码拥有较其它解释语言更快的执行速度。</p>    <p>◆◆◆</p>    <p>当然,今天的这份列表肯定不够完整,我们也不可能将一切有价值且人气较低的语言纳入进来。需要强调的是,编程语言只是用来完成工作的工具,真正重要的是掌握符合需求的正确工具。希望今天的文章能够为大家带来一点启示,并找到适合自己的学习方向。</p>    <p> </p>    <p>来自:http://www.techug.com/post/13-rare-and-underrated-programming-skills.html</p>    <p> </p>