Linux.ChinaUnix.net
ChinaUnix | Linux首页 | 新闻 | 博客 | 文章 | 专栏 | 新手 | 方案 | 图书 | 下载 | 人才 | 手册 | wiki | 搜索     
Linux论坛
  会员: 密码: 免费注册 | 忘记密码 | 会员登录 | 搜索



[开源业界] 开发人员希望使用的六种脚本语言
首页 » CU论坛 » Linux » 汇总贴列表 » 开源业界与评论 »  
[打印] [订阅] [收藏] [本帖文本页] [推荐此主题给朋友,立即获积分]
管理员 Send_linux
管理员-法王



CU奥运火炬传递手2008
CU编号: 149458
注册:2004-4-7
最后登录: 2009-07-05
帖子:15768
精华:7

可用积分:16019 (大富大贵)
信誉积分:100
专家积分:0 (本版:0)
空间积分:0
推广积分:0

来自:CAU
状态:...离线...

[个人空间] [短信] [博客]


1楼 发表于 2009-1-8 10:38 
  Lynn Greiner的文章《脚本世界现状》遭到痛批。一些人对文章明显的疏漏表示出了不满,因为文章只涵盖了PHP ,Perl,Python,Ruby,Tcl和JavaScript。Lynn只选择这些语言,因为那她是为三年前的一篇文章做的后续报道。此外,大多数 IT经理即使没有亲自编写过代码,也都至少熟悉其中一种脚本语言。

  然而,尽管我们已经深入了解上述五种语言,但是开发人员使用语言的却不仅限于这五种。由于每种编程语言都是适合于解决某个具体问题的工具,因此每个IT公司都能挑选一个最适合自己的语言。在本文中,我们会分享一些新兴的脚本语言,以提供些指导。

  Scala

  Scala对开发人员而言是别具吸引力的。按照其网站所说:“Scala...既是对象面向型又是实用型的。它混合了一些现代语言功能,同时与Java保持着密切的兼容性。”

  Object Mentor的高级顾问Wampler说:“Scala是我见到的最好的一体适用的语言。Scala弥补了Java的不足,比方Java为对象面向型编程提供的支持冗繁而有限。此外,Scala支持功能性编程——在学术计算机科学界已存在很长一段时间的一种方法,但现在被证明用来编写强效并行软件非常有用。并行技术对在大型网站和企业扩展软件十分重要。”

  Trampoline Systems开发人员David Ritchie Maclver认为,Scala的主要好处是能避开Java。他说:“就图书库的支持,性能和易于部署而言,我可以匹配Java。”许多Java工具也推到Scala。他认为,他的公司正为可视化软件的软件采用Scala,随着这一更新,将减少Java和Ruby的使用。

  但是,Maclver并不推崇Scala的一切。他说:“为了发挥并行优势,人们会推动Scala的发展。但请不要受制于这种诱惑。因为它不能取代Java。”

  Groovy

  另一种语言就是Groovy,根据其网站所称,Groovy是为Java虚拟机(JVM)而设计的一种灵活而动态的语言。集Java之长,但受Python , Ruby和Smalltalk的启发,具备额外的功能和特点。

  Groovy令人信服之处在哪里呢?首先提出这一问题的开源新闻平台批评家说:“我感到惊讶的是Groovy没有出现在任何地方。如果有一个动态语言能平衡企业的拥堵,那它就是Groovy。它能汇编进Java字节码,并直接利用庞大的Java库,却省去了繁琐的Java句法。几年的时间后,Python和Ruby被Groovy取代将不会使我感到惊讶。”

  Groovy让Java开发的指令有效表达,同时又与Java代码保持相互兼容性。

  Closure

  您的公司可能会采用最新的硬件,但您的软件可以充分利用其多线程功能吗?您可能想看看Clojure,它是一个以虚拟机为目标的动态编程语言。其网站上解释说, Clojure被设计成一个通用语言,它是将高效和强劲的基础设施同脚本语言的可接近性和互动发展相结合的多线程编程。 Clojure是一种直接编辑JVM字节码的语言,却保存了完整的动态特点。每个由Clojure支持功能在运行时也获得支持。 Clojure提供对Java框架的轻松访问,通过可选类型提示和类型推断确保调用的Java可避免映射。

  小?强大?Java?这三个能并存吗? Clojure是一种体积小,功能强大的语言,它在虚拟机上编辑并运行,因此不需要新的基础设施。此外,它也可以让您以更少的代码处理更多事情。这对发展进程和维护都是好事。特别有益于在缺乏像Java那样足够多的程序员开销时,利用多核硬件。

  现在软件开发中最紧迫的问题在于如何更好地利用多核CPU ,以提高性能和降低能源成本。就方便与安全性而言,Clojure用于并行要比其他任何语言都要优越。它继承的Lisp极大地提高程序员的生产方式,随着时间的增长,它能实现简单的DSL创建以便商家验证程序的正确性。它能在模拟机上运行并能顺利与数百万行遗留的Java代码融合还仅是其表面现象。”

  Lua

  正式点说,Lua是一个强大,快速,轻量,可嵌入的脚本语言。Lua结合了简单的程序句法并具备强大的基于关联数组和可扩展的语义的数据描述。 Lua是动态型的,它的运行通过为基于寄存器的虚拟机解释字节码来实现,通过增量垃圾收集自动管理内存,非常适合配置,撰写脚本,和快速原型。

  通俗点说,这只是一个非常小的语言工具用它办事很快。

 开发人员RalphHempel将Lua描述为“编程语言中最棒的小秘密”,他还说:“虽然它没有一个正式认可的库分配机制。但却有大量的标准库供文件系统访问,网络连接,数据库访问等等。对我来说,该系统最好的部分是坚如磐石的语言核心和考虑周密的升级和补丁。Lua的发布由从一开始就参与该语言的‘Three Amigos’控制。”Hempel已向LEGO Mindstorms NXT移植Lua。

  Lua的优势在于它的快速敏捷式开发超过了传统的语言。它给你所需要的积木,您可以以任何方式建立你想要的任何东西。惊人的小和快是Lua特点。就技术层面而言,它是杰作。

  F#

  .NET开发社区并非没有一套脚本语言增强功能。其中最突出的是F#,它起先作为微软的编程语言研究,集安全,简洁,性能,表达和脚本于一身,能高品质运行,支持现代运行系统。现在微软把F#转变成.NET平台上的充分支援语言。

  F#促进编程的功能性不可改变类型,而这适合并行和分布式程序的编写。此外,它支持编程的陈述风格。陈述风格可以让你区分为解决问题开发一些智能库的高级程序员和使用它来解决日常问题的初级程序员。

  许多编程语言可以很容易地写一些小东西,再扩展成一个较大的应用程序,但当软件需要变成一个真正的有强大逻辑结构的库时,问题就来了。F#就可以让你做得很好,你可以从简单的(就像使用动态类型语言如Python或Ruby那样)开始,最终完成一个非常强大的程序(如同C #或Java )。F#的关键益处是做到过渡完全流利而无须经历任何痛苦的步骤。事实上,你不需要重写任何开始时的代码。

  F#额外的好处是通过学习F#有助于你成为更好的C#程序员, ”F#有助于人们了解LINQ。如果你未来想平行运行什么东西,它可能是很好的准备。

  Boo

  Boo在其主页上宣布,它是“为CLI(通用语言基础设施)设计的,一个新的面向对象的静态类型的编程语言,具备Python-inspired句法并特别侧重于语言和编译器的可扩展性。”

  这不是一种解释语言,因为它的编纂是为了CLI。由于它在.Net上运行,您拥有.Net的所有权力,只有它更灵活,而且您把它当作一个脚本或编好的程序。Boo也有足够的技术优势,如能在汇编过程中操纵编译器输出。

  计算机语言是制作软件的一种工具,Boo作为一种计算机语言与其他工具(.Net 生态系统)一样表现出色,但Boo更具竞争力,因它给予开发者空前的力量开发自己的语言工具。大多数语言围绕一套固定的概念工作,Boo赋予开发者制作自己的语言概念的能力。此外,Boo句法也很奇妙,并配备了各种口译以加速发展。

  该语言在轻量特定领域子语言和微型格式中取得优势。它也是微小的,自我控制和跨平台的,所以在Windows编写代码和在Linux或Mac OS X是一样的。它有一个内置的GUI库,能够发送电子邮件和访问内内置的网络资源。没有包含文件,只有两条简单的线。可执行程序也很小,在Java做同样的事情将有数以百计兆数据,在C将有以吨计的包含文件和许多代码。

来源:IT专家网



您对本贴的看法:鲜花[0] 臭蛋[0]
iorifreedom
精灵王



CU编号: 429388
注册:2006-6-11
最后登录: 2009-05-20
帖子:283
精华:0

可用积分:795 (稍有积蓄)
信誉积分:100
专家积分:0 (本版:0)
空间积分:0
推广积分:0

状态:...离线...

[个人空间] [短信] [博客]


2楼 发表于 2009-1-8 11:54 
N多不使用的东东!



您对本贴的看法:鲜花[0] 臭蛋[0]

__________________________________

在开源世界中自由地飞翔
林杰杰
精灵王




CU编号: 509245
注册:2006-12-22
最后登录: 2009-06-15
帖子:379
精华:0

可用积分:276 (白手起家)
信誉积分:100
专家积分:0 (本版:0)
空间积分:0
推广积分:0

状态:...离线...

[个人空间] [短信] [博客]


3楼 发表于 2009-1-8 12:32 
Scala支持功能性编程。。。

我该哭还是笑?



您对本贴的看法:鲜花[0] 臭蛋[0]

__________________________________


sshnuke
天使
五毛党代言人




CU编号: 361060
注册:2006-1-10
最后登录: 2009-06-22
帖子:1084
精华:0

可用积分:1189 (家境小康)
信誉积分:105
专家积分:0 (本版:0)
空间积分:0
推广积分:0

状态:...离线...

[个人空间] [短信] [博客]


4楼 发表于 2009-1-8 12:53 
彻底的外行人翻译的

对象面向性编程
功能性编程



您对本贴的看法:鲜花[0] 臭蛋[0]

__________________________________

衅将不免,吾辈首当其冲,战死者荣,偷生者辱。国家多难,军人应马革裹尸,惟以死报国。
Magicloud   帅哥 (Magicloud)
风云使者



CU编号: 97921
注册:2003-9-17
最后登录: 2009-07-03
帖子:693
精华:0

可用积分:2185 (小富即安)
信誉积分:100
专家积分:5 (本版:0)
空间积分:0
推广积分:0

状态:...离线...

[个人空间] [短信] [博客]


5楼 发表于 2009-1-8 13:39 
不但是外行翻译,而且是外行撰写。
程序员不是系统管理员。他咋不要haskell作脚本?



您对本贴的看法:鲜花[0] 臭蛋[0]

__________________________________

竹密岂妨流水过
山高哪阻野云飞
版主 MMMIX
广告杀手-法王




CU编号: 342513
注册:2005-11-28
最后登录: 2009-07-05
帖子:13385
精华:0

可用积分:39997 (巨富豪门)
信誉积分:100
专家积分:229 (本版:0)
空间积分:0
推广积分:0

状态:...保密...

[个人空间] [短信] [博客]


6楼 发表于 2009-1-8 15:05 


QUOTE:
原帖由 Magicloud 于 2009-1-8 13:39 发表
不但是外行翻译,而且是外行撰写。
程序员不是系统管理员。他咋不要haskell作脚本?

程序员就不能/不需要写脚本了? 你如果愿意,也可以用 Haskell 做脚本语言。

[ 本帖最后由 MMMIX 于 2009-1-8 15:06 编辑 ]



您对本贴的看法:鲜花[0] 臭蛋[0]

__________________________________

天地不仁, 以万物为刍狗!
管理员 Send_linux
管理员-法王



CU奥运火炬传递手2008
CU编号: 149458
注册:2004-4-7
最后登录: 2009-07-05
帖子:15768
精华:7

可用积分:16019 (大富大贵)
信誉积分:100
专家积分:0 (本版:0)
空间积分:0
推广积分:0

来自:CAU
状态:...离线...

[个人空间] [短信] [博客]


7楼 发表于 2009-1-8 15:09 


QUOTE:
原帖由 sshnuke 于 2009-1-8 12:53 发表
彻底的外行人翻译的

对象面向性编程
功能性编程

编辑很多不是专业的
大家原谅吧,呵呵
其实大概意思差不多就行了

说不定人家是台湾或者大马的华人呢



您对本贴的看法:鲜花[0] 臭蛋[0]
x2   帅哥 (X-2)
风云使者




CU编号: 364087
注册:2006-1-16
最后登录: 2009-06-26
帖子:592
精华:0

可用积分:668 (稍有积蓄)
信誉积分:100
专家积分:0 (本版:0)
空间积分:0
推广积分:0

状态:...保密...

[个人空间] [短信] [博客]


8楼 发表于 2009-1-8 16:56 


QUOTE:
原帖由 Send_linux 于 2009-1-8 15:09 发表
http://roomescapegame.blogspot.com/2007/09/mobai-room-2.html

编辑很多不是专业的
大家原谅吧,呵呵
其实大概意思差不多就行了

说不定人家是台湾或者大马的华人呢

“面向对象”在台湾是叫“物件导向”的。



您对本贴的看法:鲜花[0] 臭蛋[0]

__________________________________

参与者们的思维是他们所参与的过程的整体的一部分,将这种过程视为由单纯的事实所构成就会扰乱主题。──乔治·索罗斯
luo118
精灵使



CU编号: 536422
注册:2007-3-13
最后登录: 2009-06-18
帖子:2509
精华:0

可用积分:4533 (小富即安)
信誉积分:98
专家积分:236 (本版:0)
空间积分:0
推广积分:203

状态:...保密...

[个人空间] [短信] [博客]


9楼 发表于 2009-1-8 17:00 
第一次认识这些语言



您对本贴的看法:鲜花[0] 臭蛋[0]

__________________________________


迷你倉|觀塘商務中心|葵涌商務中心| 觀塘文件倉|葵涌文件倉
chenyx   帅哥
法师


CU奥运火炬传递手2008
CU编号: 2008
注册:2001-12-24
最后登录: 2009-07-05
帖子:7640
精华:1

可用积分:2304 (小富即安)
信誉积分:96
专家积分:102 (本版:0)
空间积分:804
推广积分:0

状态:...保密...

[个人空间] [短信] [博客]


10楼 发表于 2009-1-8 22:02 
一个也没听说过



您对本贴的看法:鲜花[0] 臭蛋[0]

__________________________________

宝剑锋从磨砺出,梅花香自苦寒来!!!


首页 » CU论坛 » Linux » 汇总贴列表 » 开源业界与评论 »

 


Copyright © 2001-2008 ChinaUnix.net All Rights Reserved     联系我们:

感谢所有关心和支持过ChinaUnix的朋友们    转载本站内容请注明原作者名及出处

京ICP证041476号


清除 Cookies - Linux时代 - Archiver - WAP - TOP

Processed in 0.169227 second(s), 5 queries , Gzip enabled