Programming 板


LINE

※ 引述《carelai (风云人物)》之铭言: : 就是以Haskell,OCaml,Clojure,Scala为代表的语言, : 在将来会有前途吗?正面和反面的理由各是什么?谢谢诸位。 来说一下个人对 Scala 和 Clojure 的感觉好了。 Scala 和 Clojure 都是 JVM 语言,Java函式库直接拿来用大部分不会有问题, Java函式库的完整性很高,不管是开发网页、手机(Android)、Hadoop 等, 都有现成的可以用,要写游戏,甚至部分系统程式也可以。 因此选择 JVM 语言,就实务上来说,实用性很高, 比较少会碰到,需要某种功能,但是没现成函式库要自己开发的情形。 Scala : 非常容易入门,只要写过 Java 的人要转过来很容易, 一开始就算不会写函数式语言也没差,靠基本的 OO 功力, 把 Java 语法稍微调一下,就是个 Scala 程式了。 甚至 Scala 在语法上算是领先 Java 的, 先学 Scala 对於未来 Java 语言可能会有的功能,可以预先使用 :QQ 加上 Scala 人材培养难度也比较低,找个会 Java 的人, 大概一下子 Scala 就能上手了,程式要交接问题也比较小。 当然 Scala 要写得很函数式也行,我觉得 Scala 可以说是, OO 和函数式语言的完美融合,也许完美是有点言过其实, 但是它至少整合得蛮漂亮的, Scala 也有不少进阶的语法,尤其是有一堆符号的使用, 有一些的确初期看起来是很困难的,而且 Scala 语言的广度也很够, 就语法来说,Scala 算是很多的,这些不是短时间能马上理解的, 要慢慢靠时间去学的。 用 Scala 建议先把 sbt (Simple Build Tool)学起来, 对开发 Scala 程式很有帮助。 但大体来说 Scala 的优点是: JVM 语言 上手容易但深度广度够 ( 有点类似 Blizzard 游戏的感觉 ) 静态型别 ( 动态语言还是适合高手用,尤其 Java 物件型别不少, 动态不见得比较好 ) Clojure : 如果试过了 Scala 觉得想要挑战一下 Hard Mode 的话, 就可以考虑走 Clojure 了。 Clojure 是 Lisp 系的语言,不过拜 Java 函式库支援的实用度所赐, 加上 Clojure 在语法上来说,比起其他 Lisp 语言,个人觉得容易阅读, 想学 Lisp 系语言,我是比较推荐 Clojure。 但是 Lisp 系语言天生的一堆括号和前置式语法, 对於很多人会造成阅读和撰写的困难 ( 很需要排版 ), 加上编辑器的支援,编辑器只要支援括号就解决大多问题了。 Clojure 虽然有人觉得它比 Scala 更偏向纯函数式语言, 但在使用 Java 函式库的前提之下,部分的 OO 还是必要的 ( 除非包装起来 或是用别人包装好的 Clojure 函式库 ) 举例来说,很多 Java 函式需要你继承某个类别来写自己的类别,再传给他, 这 Clojure 的 proxy 只能适合於简单的场合, 太复杂的还是要用 gen-class 的方式。 另一方面,Clojure 是动态语言,除错上比 Scala 困难, 就算把可读性写得不错了,实际执行效能也要考量, 要写出和 Scala 可以匹敌的程式,要花的功夫超过 Scala。 也因此,如果程式用 Clojure 写的,要交给下一个人, 十之八九他会恨你的,就算自己维护,有时候自己要看懂还要一下子, 使用 Clojure 则是建议使用 leiningen。 Clojure 的优点: JVM 语言 如果喜欢 Lisp 的 S-Expression 形式可以考虑 富有挑战性 总而言之, Scala 像是 法师和牧师的全套技能都给,让你自由用。 Clojure 则像是体内两股真气让你可用两套武功, 但是又互相牵制让你没办法只用同一套。 --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 111.251.139.60
1F:推 MOONRAKER:生动 1.34.60.15 10/06 23:23
2F:推 KoenigseggG:超棒! 218.161.96.206 10/07 00:25
3F:推 coolcomm:推123.110.242.126 10/07 01:02
4F:推 kewang:推这篇! 118.163.25.228 10/07 13:09
5F:推 dream1124:想请问您对Groovy有什麽看法呢? 118.168.93.214 10/23 23:24
6F:→ Schelfaniel:Groovy没用多少,大多用Scala/Clojure111.251.138.148 10/31 23:56







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Boy-Girl站内搜寻

TOP