仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 555|回复: 10
打印 上一主题 下一主题

[学习教程] JAVA编程:Java 8会干失落Scala吗?仓酷云

[复制链接]
只想知道 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:19:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
市场分额,java比asp高一点,因为C#是仿照java开发的,所以哦C#能做的java都能做到,但是java能做的,C#不一定都能做到。毕竟是抄袭吗。最使人等候的Java8已于2014年3月18日公布,该版本包括良多使人镇静的新特征,被以为是自Java5公布以来对Java做出的最年夜改动。关于开辟者而言,最值得注重的特征包含:Lambda表达式/闭包、接口撑持静态办法、默许办法、函数式接口、java.util.stream、改良了泛型中对范例推理的撑持、java.time和NashornJavaScript引擎。别的,新版本还移除PermGen。
而被一部分人以为是Java替换者的Scala则是一门风趣的言语,它一方面吸取并承继了多种言语中的优异特征,另外一方面也没有丢弃Java这个壮大的平台,它能够运转在Java假造机之上,可以轻松地与Java互联互通。与Java分歧的是,Scala既撑持面向对象的特征,又撑持函数式编程,它的作风和特征吸引了大批的开辟职员,那末新版本的Java可否借助大批的特征“立异”干失落Scala呢?体系架构师、开源传教者AhmedSoliman比来在本人的博客上宣布了一篇博文表达了本人的意见,同时这篇文章在LinkedIn和HackerNews上也引发了剧烈的会商,上面是笔者摘录的一些概念。
AhmedSoliman以为:
Java8新引进的Lambda表达式其实不像Scala中的Lambda那末壮大,它仅仅触及了Lambda的外相。比方,并非一切函数都能够作为一等元素(first-class)传进其他函数中,函数必需被显式地界说为Lambda表达式大概利用函数式接口。在汇合操纵方面,借助于新的java.util.stream包,开辟职员能够在一些Java汇合上编写函数式作风的操纵,这和Scala中的办法相似,可是后者更简便、范例更准确。Java和Scala之间仍然有很年夜的差异,Java其实不会酿成一门函数式言语,它的方针是企业,同时要包管安定的向后兼容性;而Scala的方针则是多核软件开辟。Java8向前迈出了巨大的一步,这一点让良多人都十分镇静,乃至关于Scala程序员也是云云,可是它的方针并非“干失落”Scala,现实上,这二者应当是一种互补的干系。
来自于Reply的StefanoS复兴说:
Scala在计划上就是函数式,而Java则是被扩大成函数式,在函数式的纯度上这两门言语就纷歧样,我以为Java8是不是可以获得乐成很年夜水平上取决于JDK的完成情形。假如JDK8安定且凝结性高,那末对Scala而言一定会形成伟大的打击。假如仅仅必要进修一些新的语法就可以使用和其他言语类似的语法及特征,那保持本人熟习的言语往进修一门新言语的来由是甚么呢?
openForce信息手艺的具有者GesmbH批评说:
Java不成能替换Scala。起首Scala开辟十分活泼,计划明晰,方针明白。JDK的开辟则对照停止。很明显,关于Oracle而言定时托付一个新的JDK仿佛有一些贫苦。以是,我团体对JDK8在2014年可否包括之前答应的一切特征持嫌疑立场。而就Scala而言,假如统统停顿顺遂,那末我们能够在往年见到Scala2.11,该版本会办理良多使人厌恶的成绩。其次,JDK类库在计划上就有一些缺点,要成为一门真实的函数式言语必需要办理这些缺点,比方汇合框架。再就是Java相对良多其他的言语太甚于拢沂褂Java开辟了12多年的企业使用,而利用Scala才两年,可是我其实不想回到已往。固然Java生态体系十分优异,JVM也十分巨大,可是Java作为一门言语已有点过期了。
数据和软件工程师AdamR批评到:
我以为Java8的函数式功效太少,来得也太迟了。固然这的确是一个改善,可是间隔Scala仍然很远。那些真正在意这些功效的开辟职员早就转向了其他的函数式言语。Java8的确会为Java开辟职员带来函数式编程的认识,可是一部分隔发职员希冀取得更多的特征,而另外一部分则基本不在意。
来自于CabotResearch的软件工程师BrianT以为:
思索到Java7给我们带来的劫难,同时鉴于Java8仅完成了闭包的一部分而其他部分将会在Java9中完成,我以为Scala基本没需要忧虑。就是在今天我们不能不将一台新呆板从Java7回退到Java6,缘故原由是一些Eclipse插件没法在新版本上事情。Java8大概会是多数人利用(绝对而言)的一门优异言语。
Eranation在HackerNews上批评说:
[quote]作为一个Scala和Java开辟者,我乃至没有一点乐趣鄙人一个项目中保持Scala转向Java8。假如只能选择Java,那末最好是Java8,可是假如有其他选择,我想除Lambda以外Scala另有良多吸引我的中央。
一切的工具都是表达式,它撑持推导式(出格是有多种大概的情形,利用大度的语法办理出生回调三角)、隐式转换、Case类、形式婚配、元组、字符串拔出、多行字符串、默许参数、定名参数、范例揣度、内置依附注进,同时一切元素的equals和hashcode办法都已被准确地完成(可使用元组乃至是数组作为map的键)。
我以为Scala仍然会呆在这里,最少关于Scala开辟职员来讲是如许的,我十分断定没有任何一个Scala开辟职员会说:“Java8撑持Lambda表达式了?十分好,再会Scala!”。我会思索Java8只要两个缘故原由,就是编译工夫和二进制兼容性。假如疏忽失落这两个缘故原由,我只能说Java8所做的这统统刚好证实了Scala正走在准确的路上。

其实你不用Struts,spring这些工具,直接用jsp,servlet能够很方便地写出来,而且,可以根据个人的水平、爱好,有很多方案。而struts,spring这些工具的出来。
再现理想 该用户已被删除
沙发
发表于 2015-1-20 20:13:41 | 只看该作者
你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?
海妖 该用户已被删除
板凳
发表于 2015-1-29 20:20:08 | 只看该作者
关于设计模式的资料,还是向大家推荐banq的网站 [url]http://www.jdon.com/[/url],他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。
飘灵儿 该用户已被删除
地板
发表于 2015-2-1 16:07:46 | 只看该作者
Java 编程语言的风格十分接近C、C++语言。
因胸联盟 该用户已被删除
5#
发表于 2015-2-7 07:41:33 | 只看该作者
Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。
金色的骷髅 该用户已被删除
6#
发表于 2015-2-21 00:32:14 | 只看该作者
是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言
再见西城 该用户已被删除
7#
发表于 2015-2-22 18:31:41 | 只看该作者
一般学编程语言都是从C语开始学的,我也不例外,但还是可能不学过程语言而直接学面向对象语言的,你是刚接触语言,还是从C开始学比较好,基础会很深点,如果你直接学习JAVA也能上手,一般大家在学语言的时候都记一些语言的关键词,常有的包和接口等。再去做逻辑代码的编写,以后的学习过程都是从逻辑代码编写中提升的,所以这方面都是经验积累的。你要开始学习就从
不帅 该用户已被删除
8#
发表于 2015-3-2 15:35:50 | 只看该作者
多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。
深爱那片海 该用户已被删除
9#
发表于 2015-3-11 04:18:59 | 只看该作者
[url]http://www.jdon.com/[/url]去下载,或到同济技术论坛的服务器[url]ftp://nro.shtdu.edu.cn[/url]去下,安装上有什么问题,可以到论坛上去提问。
变相怪杰 该用户已被删除
10#
发表于 2015-3-17 20:10:33 | 只看该作者
你现在最缺的是实际的工作经验,而不是书本上那些凭空想出来的程序。
小妖女 该用户已被删除
11#
发表于 2015-3-24 23:42:59 | 只看该作者
自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-9-28 19:18

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表