JAVA网页设计Java程序员的丢失―论“假造机”仓酷云
轮性能微软曾做过一个例子,就是同一个项目用java和.net网页编程来作,结果开发周期,.net网页编程是java的一半,性能java是.net网页编程的十分之一,代码量java是.net网页编程的三倍。呵呵,这说明了什么,.net网页编程的全方位比java好。但是有的人说.net网页编程不能跨平台,这个问题我和我同学曾讨论过,都认为微软的.net网页编程很可能早都可以跨平台了,但是微软为了保护他们的操作系统,所以才没有推出跨平台的.net网页编程,只是推出了跨语言的.net网页编程,假造机手艺如今十分抢手,人们以为它能够完成统统事变。人们热中于让JVM能够运转Ruby、PHP或别的一些抢手言语,和撑持像JavaFX之类的手艺。这类征象是好是坏?JoeWinchester以本人的履历来论证了对此的意见。在Java呈现之前我一向是Smalltalk(注:Smalltalk被公以为汗青上第二个面向对象的程序计划言语,和第一个真实的集成开辟情况。)的喜好者。从Smalltalk转向Java的履历,到如今仍然让我念念不忘,从一门言语转向另外一门言语并非一件轻松的事变。我仍然记妥当你真正把握这门新言语时所抵达的临界形态,把握一门新言语常常必要消费数月乃至数年的工夫,经由这段工夫的历练,你才干做出真正优异的计划,和晓得怎样最好的使用它的哪个形式,怎样制止毛病产生,和怎样举行功能调劣等等。
比来由于事情必要,我要回过火来看一些之前的Smalltalk代码,这时候我发明,在履历过这一段进修Java编程的阶段后,我已很难明晰的了解已往本人所编写的Smalltalk代码,很分明,我一定不克不及再称本人是一个及格的Smalltalk程序员。
说这些只是为了表达我的一个概念:我以为每一个人只大概精晓一门编程言语,换句话说,假如你甚么都精晓,实在也就说你甚么都精晓。我喜好一个只要一门言语、大度复杂的“扁平布局”天下。在如许一个天下中,程序员之间交换会变得加倍轻松,每一个人能够相互分享配合的履历,并且不也不必往返的在分歧的言语之间跳来跳往。
当Java第一次面世的时分,已经有些假造机方面的家伙举行一些没有出路的实验:让Java运转在Smalltalk假造机上。只管他们具有一个十分酷的叫做通用假造机(UniversalVirtualMachine,UVM)的手艺,可是回根究竟,这实践上仍是一个回护Smalltalk土地的对抗举动。从实际上说这多是一个好的思绪,人们不再用必需进修一种新的语法就能够体验新言语的优点;可是实践上并不是云云,利用Java当地接口JNI编程来使二者接洽起来是一件令程序员十分疾苦的事变,这几乎就是一场恶梦,程序员在编程的时分要堕入良多贫苦,比方在分歧言语范例之间存在良多数据范例转化的成绩。
要想在Java下举行Smalltalk编程,大概在Smalltalk下举行Java编程,你必要十分精晓两种言语,并且你必要具有一个十分兴旺的年夜脑来调试假造机注册表和大批设置DOS仓库的个数。
数年以来,微软的家伙一向在反攻Java程序的速率慢,它们以为Java程序是注释型字节码,而不是完整编译好的,这也是人们嫌疑Java功能的一个次要托言,而多半微软的言语则都被编译为注释好的p-code。但是如今微软又入手下手宣传它的通用言语运转时(CLR),将其称为编程的圣杯。这一点和Smalltalk/Java夹杂UVM十分类似。实践上,CLR上仿佛只运转微软的言语,自从其问世以来并没有引发太多其他言语的程序员背叛。
如今有一种征象令我感应十分忧愁,“假造机能够完成统统”的概念正在渐渐苏醒。人们的精神不再会合在Java和这个言语向前开展所必要的改善上,人们把精神都投进到让Java假造机JVM往运转Ruby、PHP或别的同类盛行言语上,另有让Java假造机撑持JavaFX这个几近和Java语法有关的手艺上。假如这统统都完成了,留给我们的又是甚么呢?
我们具有了一个不单单能够运转Java还能够运转别的言语的假造机;我们具有了良多不利用Java编写但能够编译为Java的言语;我们具有一些得到了本身代价定位的工具。换言之,我们丢失了本人的偏向,得到了正确的定位。
关于我们这些编程序的人来讲,我仍然以为纯熟把握多种言语实践上是行欠亨的,我们终极会变成二流程序员,只能编写功能糟和计划卑劣的程序,更不必说跟着情况和言语的切换,调试方面的恶梦到处可见。
那末为何人们对假造机的热忱云云低落呢?你也许会说,别的言语是静态的而Java是静态的;大概别的言语像PHP、Ruby更适于Web编程;大概甚么别的的缘故原由?这些都是实际,不外我以为,我们应当往完美Java来办理这些成绩,而不是增添庞大度朝着假造机用力,让其撑持这些几年前已不存在的言语。关于Java来讲,没有甚么毛病和困难是不成以被办理的。我以为这才是人们应当存眷的中央,而不是让JVM酿成一个杂而不精的工具,否者Java终极将面对与Smalltalk不异的运气。
汗青老是在惊人的反复,假如我们不把Java看做一门言语,而仅仅看做是一些“Java手艺”之类的工具的话,我们就正在让它走向死亡,使其相对别的言语的上风渐渐减弱,同时也让编写优异软件变成一件更难的事变。
市场分额,java比asp高一点,因为C#是仿照java开发的,所以哦C#能做的java都能做到,但是java能做的,C#不一定都能做到。毕竟是抄袭吗。 Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。 自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。 Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台 一般学编程语言都是从C语开始学的,我也不例外,但还是可能不学过程语言而直接学面向对象语言的,你是刚接触语言,还是从C开始学比较好,基础会很深点,如果你直接学习JAVA也能上手,一般大家在学语言的时候都记一些语言的关键词,常有的包和接口等。再去做逻辑代码的编写,以后的学习过程都是从逻辑代码编写中提升的,所以这方面都是经验积累的。你要开始学习就从 Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台 那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除了一些散乱的代码之外,可能再没有别的东西了吧! 让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。 其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。 Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。 科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。 象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。 我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。 另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。 是一种语言,用以产生「小应用程序(Applet(s)) 吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧 当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢? Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。 另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。 设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧
页:
[1]