免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: arron刘

【话题讨论】Scala在JVM上作为一个函数式语言有哪些优势(获奖名单已公布-2013-7-25) [复制链接]

论坛徽章:
0
发表于 2013-07-05 18:17 |显示全部楼层
1.算是scala初学者
2.scala对于java程序员来说一种革命性的语言个人认为.
在支持多种范式编程的情况下,拓宽了java程序员思维习惯和思维模式.
而且scala各种语法糖带的语言上的表达能力非常强,代码简洁易理解.表达力强的语言带来最直接的效果大大的提高了程序员的生产效率.
不可变数据类型,tuple数据类型,已经语言级别actor支持,是对优秀并发编程模型的支持.
和java类库的无缝兼容,带来丰富java类库.

论坛徽章:
0
发表于 2013-07-05 18:21 |显示全部楼层
回复 11# redcap0
活跃的scala社区加上作者丰富的经验.scala演进迅速.比java到java8才支持函数编程来看.scala语言在快速发展.
scala特别是在分布式计算领域.个人以后是scala的天下


   

论坛徽章:
6
寅虎
日期:2013-10-10 21:59:16狮子座
日期:2013-11-12 09:24:41金牛座
日期:2013-12-14 17:02:23酉鸡
日期:2014-01-16 12:34:37技术图书徽章
日期:2014-02-15 12:52:31巨蟹座
日期:2014-05-17 14:09:52
发表于 2013-07-06 20:56 |显示全部楼层
scala  表面看起来简单,但是要写出实际有用的代码并不容易,是属于较“深”的哪种语言,而且涉及面广、特性多,快赶上c++了。作为开拓视野我觉得还可以,但是要用于实际项目,没有相当功力,就要小心提防后果。

论坛徽章:
0
发表于 2013-07-06 21:58 |显示全部楼层
回复 13# fergon
非常统一楼上观点。
我们最近的项目转向scala,在摸索中。
   

论坛徽章:
42
19周年集字徽章-周
日期:2019-10-14 14:35:31平安夜徽章
日期:2015-12-26 00:06:30数据库技术版块每日发帖之星
日期:2015-12-01 06:20:002015亚冠之首尔
日期:2015-11-04 22:25:43IT运维版块每日发帖之星
日期:2015-08-17 06:20:00寅虎
日期:2014-06-04 16:25:27狮子座
日期:2014-05-12 11:00:00辰龙
日期:2013-12-20 17:07:19射手座
日期:2013-10-24 21:01:23CU十二周年纪念徽章
日期:2013-10-24 15:41:34IT运维版块每日发帖之星
日期:2016-01-27 06:20:0015-16赛季CBA联赛之新疆
日期:2016-06-07 14:10:01
发表于 2013-07-08 07:50 |显示全部楼层
个人觉得,scala就是对java语法的一种抽象和改进.
能够利用jvm是它的优点,能否完全替代java还不一定
就像能用 c库的语言很多,比如perl,lua
但是不少库本身还要c来写.

还有一个问题,scalar的并发模型,其实主要是基于线程的,和java并无本质不同
如果要使用event模式,在使用JVM资源时就要小心选择非阻塞的io.这个难度很大.
作为java的替代品,scala是不错的.
但是,在并发方面,觉得还是erlang,golan跟这些原生支持并发的更好.

论坛徽章:
0
发表于 2013-07-08 15:04 |显示全部楼层
回复 15# laputa73

Scala并发模型和erlang基本上是一样的思想。
scala actor方式比java写actor。表达能力更强。
在scala 中actor模型是可以基于线程调度,也可以基于用户线程调度。
   

论坛徽章:
3
CU大牛徽章
日期:2013-05-20 10:43:41CU大牛徽章
日期:2013-05-20 10:44:06CU大牛徽章
日期:2013-05-20 10:44:16
发表于 2013-07-08 15:53 |显示全部楼层
Scala有几项关键特性表明了它的面向对象的本质。例如,Scala中的每个值都是一个对象,包括基本数据类型(即布尔值、数字等)在内,连函数也是对象。另外,类可以被子类化,而且Scala还提供了基于mixin的组合(mixin-based composition)。与只支持单继承的语言相比,Scala具有更广泛意义上的类重用。Scala允许定义新类的时候重用“一个类中新增的成员定义(即相较于其父类的差异之处)”。Scala称之为mixin类组合。

论坛徽章:
1
丑牛
日期:2014-04-04 17:35:24
发表于 2013-07-08 16:08 |显示全部楼层
话说最近想学习 JAVA 了,既然是入门级别了,送我一本呗

论坛徽章:
0
发表于 2013-07-08 17:08 |显示全部楼层
Scala把Erlang风格的基于actor的并发带进了JVM。开发者现在可以利用Scala的actor模型在JVM上设计具伸缩性的并发应用程序,它会自动获得多核心处理器带来的优势,而不必依照复杂的Java线程模型来编写程序。

论坛徽章:
0
发表于 2013-07-08 23:44 |显示全部楼层
回复 17# heaven_sky
先买本java的书看看吧概念搞清楚吧。


   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP