简单生活 发表于 2015-1-18 11:18:02

发布一篇面向Java开辟职员的Scala指南 - 面向对象的函数编程

还得说上一点,就java本质而言,是面相对象的,但是你有没有发现,java也不全是,比如说基本类型,int,那他就是整型而不是对象,转换类型是还得借助包装类。
在汗青上,Java™平台一向属于面向对象编程的范畴,可是如今,乃至Java言语的刚强撑持者也入手下手注重使用程序开辟中的一种新趋向:函数编程。在这个新的系列中,TedNeward先容了Scala,一种针对JVM将函数和面向对象手艺组合在一同的编程言语。在本文中,Ted将举例申明您为什么应当花工夫进修Scala(比方并发),并先容怎样疾速从中受害。
您永久不会健忘您的初恋!
关于我来讲,她的名字是Tabinda(Bindi)Khan。那是一段兴奋的少年光阴,正确地说是在七年级。她很俊丽、伶俐,而最好的是,她经常因我的愚笨的笑话而兴高采烈。在七年级和八年级的工夫里,我们常常“进来逛逛”(当时我们是这么说的)。但到了九年级,我们分隔了,粗俗一点的说法是,她厌倦了一连两年听到一样的愚笨的男孩笑话。我永久都不会健忘她(出格是由于我们在高中卒业10周年聚首时再次相遇);但更主要的是,我将永久不会得到这些可贵的(大概有点夸大其词)回想。
Java编程和面向对象是很多程序员的“初恋”,我们看待它就像看待Bindi一样尊敬和完整的倾慕。一些开辟职员会告知您Java将他们从内存办理和C++的炼狱中拯救出来了。其他一些人会告知您Java编程使他们挣脱了对历程性编程的失望。乃至关于一些开辟职员来讲,Java代码中的面向对象编程就是“他们办事情的体例”。(嘿嘿,假如这对我爸爸,和爷爷有效该多好!)
但是,工夫终极会冲淡一切对初恋的影象,生存仍旧在持续。情感已变了,故事中的配角同样成熟了(而且学会了一些新笑话)。但最主要的是,我们四周的天下变了。很多Java开辟职员意想到只管我们深爱Java编程,但也应当捉住开辟范畴中的新时机,并懂得怎样使用它们。
我将一直爱着你……
在比来五年中,对Java言语的不满心情渐渐增加。只管一些人大概以为RubyonRails的开展是次要要素,可是我要狡辩的是,RoR(被称为Ruby专家)只是了局,而非缘故原由。大概,能够更正确地说,Java开辟职员利用Ruby有着更深入、更隐伏的缘故原由。
复杂地说,Java编程略显老态了。
大概,更正确地说,Java言语略显老态了。
思索一下:当Java言语最后出生时,Clinton(第一名)在办公室中,很少有人利用Internet,这次要是由于拨号是在家里利用收集的唯一体例。博客还没有创造出来,每一个人信任承继是重用的基础办法。我们还信任,对象是为对天下举行建模的最好办法,摩尔定律将永久统治着天下。
实践上,摩尔定律引发了行业内很多人的出格存眷。自2002/2003年以来,微处置器手艺的开展使得具有多个“内核”的CPU得以制造出来:实质上是一个芯片内具有多个CPU。这违反了摩尔定律,摩尔定律以为CPU速率将每隔18个月翻一倍。在两个CPU上同时实行多线程情况,而不是在单个CPU上实行尺度轮回周期,这意味着代码必需具有固定的线程平安性,才干存活上去。
学术界已睁开了环绕此成绩的很多研讨,招致了过量新言语的呈现。关头成绩在于很多言语创建在本人的假造机或注释器上,以是它们代表(就像Ruby一样)到新平台的转换。并发抵触是真实的成绩地点,一些新言语供应了壮大的办理计划,太多的公司和企业对10年前从C++到Java平台的迁徙仍念念不忘。很多公司都不肯意冒迁徙到新平台的风险。现实上,很多公司对上一次迁徙到Java平台仍心不足悸。
懂得Scala。
一种可伸缩言语
Scala是一种函数对象夹杂的言语,具有一些壮大的长处:
起首,Scala可编译为Java字节码,这意味着它在JVM上运转。除同意持续使用丰厚的Java开源生态体系以外,Scala还能够集成到现有的IT情况中,无需举行迁徙。
其次,Scala基于Haskell和ML的函数准绳,大批自创了Java程序员宠爱的面向对象观点。因而,它能够将两个范畴的上风夹杂在一同,从而供应了明显的长处,并且不会得到我们一向依附的熟习的手艺。
最初,Scala由MartinOdersky开辟,他多是Java社区中研讨Pizza和GJ言语的最出名的人,GJ是Java5泛型的事情原型。并且,它给人一种“严厉”的感到;该言语并非一时髦起而创立的,它也不会以一样的体例被丢弃。
Scala的称号标明,它仍是一种高度可伸缩的言语。我将在本系列的后续文章中先容有关这一特征的更多信息。
<p>
首先第一点:jsp,servlet,javabean这些最基本的,嘿嘿,就算你是高手的话,在大行的企业级应用的话还是需要框架的,一个好的框架确实能构解决许多问题。

谁可相欹 发表于 2015-1-20 19:51:31

另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。

不帅 发表于 2015-1-21 10:39:06

让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。

精灵巫婆 发表于 2015-1-26 19:30:51

应用在电视机、电话、闹钟、烤面包机等家用电器的控制和通信。由于这些智能化家电的市场需求没有预期的高,Sun公司放弃了该项计划。随着1990年代互联网的发展

透明 发表于 2015-1-28 09:10:19

一般学编程语言都是从C语开始学的,我也不例外,但还是可能不学过程语言而直接学面向对象语言的,你是刚接触语言,还是从C开始学比较好,基础会很深点,如果你直接学习JAVA也能上手,一般大家在学语言的时候都记一些语言的关键词,常有的包和接口等。再去做逻辑代码的编写,以后的学习过程都是从逻辑代码编写中提升的,所以这方面都是经验积累的。你要开始学习就从

小妖女 发表于 2015-1-29 06:27:16

Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。

金色的骷髅 发表于 2015-2-2 10:47:38

当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢?

冷月葬花魂 发表于 2015-2-7 17:55:39

至于JDBC,就不用我多说了,你如果用java编过存取数据库的程序,就应该很熟悉。还有,如果你要用Java编发送电子邮件的程序,你就得看看Javamail 了。

老尸 发表于 2015-2-17 07:44:13

Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。

简单生活 发表于 2015-3-4 21:27:32

Java是一种计算机编程语言,拥有跨平台、面向对java

山那边是海 发表于 2015-3-11 21:05:56

一般学编程语言都是从C语开始学的,我也不例外,但还是可能不学过程语言而直接学面向对象语言的,你是刚接触语言,还是从C开始学比较好,基础会很深点,如果你直接学习JAVA也能上手,一般大家在学语言的时候都记一些语言的关键词,常有的包和接口等。再去做逻辑代码的编写,以后的学习过程都是从逻辑代码编写中提升的,所以这方面都是经验积累的。你要开始学习就从

变相怪杰 发表于 2015-3-19 13:25:14

其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。

飘灵儿 发表于 2015-3-28 02:39:55

所以现在应用最广泛又最好学的就是J2EE了。 J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。
页: [1]
查看完整版本: 发布一篇面向Java开辟职员的Scala指南 - 面向对象的函数编程