了解下JAVA的冒号和他的先生们(连载19)――平台言语
为什么外国人还要写那些框架进行代码封装,他们不就是为了别人使用时可以更简单么!如果要达到一个企业级项目的不用框架是很难的。小一些的项目还行,大的光是MVC模式的设计的编码量就够大的了。还有性能方面,单轮windows,这个工具是微软写的,。19.平台言语
见其可欲也,则必前后虑其可爱也者;见其可利也,则必前后虑其可害也者 ——《荀子·不苟》
逗号提出:“如今应当到了Java工夫吧。”
冒号因利乘便:“上面议论的重心从方才的体系言语转到平台言语——Java和C#。”
问号听得一头雾水:“平台言语?Java不是平台有关的言语吗?”
“平台的意义很广,能够是硬件平台,能够是软件平台,也能够是两者的分离。”冒号注释道,“你说的‘平台’次要指硬件和操纵体系平台,而我说的‘平台’指的是运转情况平台。固然这两种平台是密不成分的,Java与C#之以是能自力于前一种平台,正由于它们自带了后一种平台。详细地说,Java运转于以JavaVirtualMachine(JVM)为中心的Java平台,而C#运转于以CommonLanguageRuntime(CLR)为中心的.NET平台。”
句号打了个例如:“这就比如在分歧的山路上展设不异的沥青,车子跑到哪儿都没区分了。”
“很抽象。”冒号赞道,“从传承的角度看,两者皆为基于C++之上的改善,剔除个中易于堕落或不容易把握的语法特性。我们先来看看它们区分于C++的配合的地方。起首,两者均编译成与呆板有关的托管码(managedcode)或称字节码(bytecode),运转于假造机(virtualmachine)之上。其次,禁用或限用指针并撑持主动渣滓接纳,由此极年夜地束缚了程序员的临盆力。后来这类做法并非没有争议的,但跟着呆板功能的进步和软件范围的扩展,对软件的强健性、平安性和临盆率的请求凌驾了对运转效力的请求,屏障指针和主动内存办理渐渐失掉认同。只管云云,指针与手动内存办理关于体系软件和及时性请求极高的软件仍是必不成少的。一个左证是,Java除不合用于体系软件外,还在JDK免责声明(disclaimer)中暗示它是不合用于空中交通或核举措措施等及时体系的。”
引号较起真来:“那C#没有这类声明是不是意味着它不受此限呢?”
“也许吧。”冒号淡淡地说,“C#的胃口很年夜,上管天、下管地、两头还要管氛围。企业级使用和桌面使用自不用说,底层使用也不放过。早在2003年,微软研讨院就入手下手了用C#开辟的名为Singularity的操纵体系研讨项目,别的另有SharpOS、Cosmos等开源操纵体系。固然它们今朝仅用于研讨,但不丢脸出C#的勃勃野心。提及来这也不奇怪,1998年Sun就弄了个针对嵌进式体系的JavaOS,惋惜没能乐成,为JavaME所代替。”
轮到叹号懵懂了:“方才还说Java和C#是平台言语,怎样又同C和C++一样当体系言语来用了呢?”
冒号释疑:“Java可经由过程JNI挪用C、C++等程序;C#可经由过程P/Invoke会见体系API,加上保存了指针操纵,用于体系编程加倍便利。实在一种言语胜任多种范畴其实不难,难的是在每一个范畴都夺得冠军。可成绩是,有谁不乐见本人撑持的言语被普遍使用呢?不管是微软仍是Sun,他们城市竭尽所能地将本人的言语扩大到每一个角落。程序员作为言语的用户,固然良多时分并没有选择言语的权利,但心中要有杆秤,可不要容易被商家的告白利诱啊。”
逗号不无自嘲地说:“秤却是有一杆,就是不太准啊!”
有人“噗哧”笑作声来。
“多进修、多理论、多体悟,秤的精度天然会进步。”冒号勉励道,“假如本人没有充足的判别商品才能,倡议从商家的合作敌手那边猎取实在的信息。要看Java的长处,不要听Sun的一面之词,能够看看微软的C#仿照了Java的哪些特性,由于仿照是最高的歌颂;要看Java的弱点,能够看看C#屏弃了Java的哪些特性,能够听听微软对Java的批评——固然大概过激,但一样平常也不会太离谱。此法一样合用于包含C#在内的其他言语。”
句号有所感伤:“这既是程序员之幸——言语之间能够相互扬长避短,配合前进;也是程序员之不幸——常常不能不在浩瀚言语中作困难选择,大概多花精神学更多的言语。”
冒号一边摇头一边接着说:“上面持续看看Java与C#的个性。借着方才的话题,我们来看看C#与Java是怎样相互进修的。”
<p>
java比较简单,没有C++的烦琐,但学习时最好有C++为基础.与JSP和SQL起应用,功能强大. Jive的资料在很多网站上都有,大家可以找来研究一下。相信你读完代码后,会有脱胎换骨的感觉。遗憾的是Jive从2.5以后就不再无条件的开放源代码,同时有licence限制。不过幸好还有中国一流的Java程序员关注它,外国人不开源了,中国人就不能开源吗?这里向大家推荐一个汉化的Jive版本—J道。Jive(J道版)是由中国Java界大名 鼎鼎的banq在Jive 2.1版本基础上改编而成, 全中文,增加了一些实用功能,如贴图,用户头像和用户资料查询等,而且有一个开发团队在不断升级。你可以访问banq的网站 是一种使网页(Web Page)产生生动活泼画面的语言 那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除了一些散乱的代码之外,可能再没有别的东西了吧! 一直感觉JAVA很大,很杂,找不到学习方向,前两天在网上找到了这篇文章,感觉不错,给没有方向的我指了一个方向,先不管对不对,做下来再说。 学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。 是一种使用者不需花费很多时间学习的语言 Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。 Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。 Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。 那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除了一些散乱的代码之外,可能再没有别的东西了吧!
页:
[1]