仓酷云

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

[学习教程] JAVA教程之Java行业的圣经-四本最主要的团体躲书

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

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

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

x
J2ME在手机游戏开发的作用也是无用质疑的。至于桌面程序,可能有人说java不行,界面不好看,但是请看看NetBeans和Eclipse吧,他们都是利用java开发的,而他们的界面是多么的华丽,所以界面决不是java的缺点。还有一个不得不提的优点就是大多java人员都挂在嘴边的java的跨平台性,目前这确实也是java优点之一。择要

ThomasDavis保举了四本书,它们可让你在java开辟中受害非浅。这些书扩大了Java的基础语法和语义,使你能更周全地舆解面向对象的程序计划。

注释

《Designpatterns》

《Refactoring:ImprovingtheDesignofExistingCode》

《AntiPatterns:RefactoringSoftware,Architectures,andProjectsinCrisis》

《ExtremeProgrammingExplained:EmbraceChange》

  在这篇文章中,我提出了老手和专家在利用Java举行开辟的区分,并且也给出了一个参考书目,匡助老手超出这个界线。这不是一个书目回忆,而是你通往职业开展中下一步的车票。

  Java是一个程序计划言语。它也是一个工具,假如毛病地利用,它就是无用的,某些时分乃至是伤害的。仅仅晓得它的语法和语义不是一个程序员要做的。一个程序员也必需亲切地存眷和了解情况形式,也就是说在Java情况中,甚么是面向对象计划。晓得对象是甚么、接口是甚么、几对象完成了一个接口等等无聊的工具是远远不敷的。一个程序员必需晓得这类使那些划定规矩和干系交融成一个天真的、可重用的、可扩大的体系的奥秘办法。我在这里会商的这些书将给你那些履历,进步你作为一位Java程序员的职业本质。使人奇异的是,没有一本书在他们的书名中包含Java一词。

注:本文所会商的一切书目标URL地点能够在本文前面的资本中找到。

《Designpatterns》

  这本书的作者是ErichGamma,RichardHelm,RalphJohnson,JohnVlissides,和GradyBoocha――theGangofFour是他们出名的呢称,由Addison-Wesley出书社在1995年出书。形式一词形貌了一类反复的成绩并且供应了一个可重用的办理计划。计划形式最少能够经由过程对象共享来匡助你制止内存限定的缺点以简化你的事情,计划形式也能够制造一个相似于接口的、能够天真地同第三方库举行综合的集成体例来简化你的事情。《Designpatterns》细心形貌了这两种计划形式,给出了评价,并且供应了代码例子和易于了解的相干图表。固然代码例子都是C++的,可是语法非常相似于Java,因而年夜多半程序员将毫无成绩地把握这些观点。有一本本书的仿造品,它接纳Java作为例子,书名是《JavaDesignPatterns:ATutorial》,作者是JamesWilliamCooper,由Addison-Wesley出书社在2000年出书;可是没有theGangofFour在《Designpatterns》中所论述的透辟和深度。

  一旦你熟习了《DesignPatterns》中所列出的计划形式,将熟悉到他们中的一些是怎样开展的。在Addison-Wesley出书社1998年出书的《DesignPatternsApplied(SoftwarePatternsSeries)》中,JohnVlissides叙说了在某些最盛行形式上的争辩和会商,并且先容了一些新的在《DesignPatterns》中删往的形式。

《Refactoring:ImprovingtheDesignofExistingCode》

  会出错误就是人。假如这是真谛的话,我看到了数以百计比我更象人的程序。项目出成绩了。毛病呈现了。进度延期了,质量就义了。这些都是对我们所处置的职业的告诫。可是当事变渐渐变得最糟时,你必要在甚么中央改动偏向呢?我的十分多的同事接纳"throw-away-and-start-over"的办法:从零入手下手,但愿本人已能够制止毛病了。那是最极度的办理举措,它必定激愤了你的老板。可是不要失望,由于有替换的举措。

  《Refactoring:ImprovingtheDesignofExistingCode》是Addison-Wesley出书社面向对象手艺系列丛书中的一本,作者是MartinFowler,KentBeck,JohnBrant,WilliamOpdyke,和DonRoberts,出书日期是1999年,这本书给开辟者供应了从头入手下手的分歧选择。Refactoring就是经由过程重构一个程序的外部布局可是不改动它的内部举动来进步它的功能的处置历程。Refactoring能让一个办法实行得更快大概供应更准确的实行了局,可是不改动这个办法的名字。这些改动对换用该办法的程序而言是不成见的,因而没有代码必要修正。

  这本书教读者怎样经由过程一个特别的认识来辨认成绩代码,并且将每个放到一个程序目次中以便修正。比方,一个认识也许是一个不得当的亲热干系――形貌了两个或更多个类的干系太严密了乃至对一个类的改动请求另外一个类也要改动。这本书所倡议的浩瀚的办理办法的一个是将这个存在成绩的办法移到一个更得当的类中。

《AntiPatterns:RefactoringSoftware,Architectures,andProjectsinCrisis》

  软件开辟不是易于堕落和忽略的独一中央。办理一样易于呈现缺点,这是因为凌乱的开辟历程和不实际的开辟进度。年夜多半因特网公司在他们的开辟部门有一个使人担心的职员活动速率。跟着程序员的到场和加入,职责的条理布局就想代码布局一样变得使人隐晦。《AntiPatterns:RefactoringSoftware,Architectures,andProjectsinCrisis》的作者是WilliamJ.Brown,RaphaelC.Malveau,WilliamH.Brown,HaysW.McCormickIII,和ThomasJ.Mowbray,由JohnWiley&Sons出书社在1998年出书,这本书将把上述到场到你全部的奇迹方针中。它对企图、毛病办理、基础办法中的罕见毛病举行分类,使你跳出深渊。

  你的计划是不是正蒙受委员会的抉剔?就象有十分多的厨师在调一锅汤一样。大概你的代码基本是违背形式的卖方代码,招致你依附一个不成靠的第三方产物。《AntiPatterns》将这些成绩分为12年夜类和约莫24个小类,引导你制止这些成绩大概跳离你偶尔出来的圈套。

《ExtremeProgrammingExplained:EmbraceChange》

  XP是一种奇怪的、有些争议的新的开辟历程,KentBeck是它的先行者。XP力图定时供应好的软件,没有权要风格,不器重传统的开辟周期。在因特网启动的发热期,每一个人的眼光都聚焦在遇上市场。在实际天下中,项目凌驾了预算大概过了最初刻日,就会被作废,这终极招致某些公司完全失利。项目入手下手的文档和图表很少可以反应终极的产物。因而,开辟团队必要顺应项目需求的频仍变更并作出反应。那恰是XP要发光的中央。

  “相同、简便、反应、勇气”是XP喜好者的法门。相同有良多种路子,比方在成双成对的程序计划中完成。也就是一团体编码,同伴们举行对等的及时反省。

  简便意味着当你必要它的时分就仅仅制作那些你必要的。不华侈工夫实行那些办理未来也许会产生的成绩的奢靡计划。

反应意味着“早公布,常公布”,这些为那些开放源代码的狂热者所喜好。经由过程在开辟的初期将产物出现在用户的眼前,你能只管制止呈现在开辟周期前期的激烈变化请求。

  最初,勇气促使XP门生捉住时机并从了局中吸收履历。只要在少少见的场所,你才必需乞助于"throw-away-and-start-over"手艺。《ExtremeProgrammingExplained:EmbraceChange》中形貌了那些法门和它们是怎样匡助你的。这本书的作者是KentBeck,由Addison-Wesley出书社在1999年出书。

结论

  比来我无机会从零入手下手一个公司项目。我的开辟步队靠这些书的教训生存和呼吸,功效是明显的。我们依照进度、没有延期制作了一个出格强健和可扩大的体系。这些书改良了我的职业生活,我信任他们也将改良你的职业生活。

关于作者
  ThomasE.Davis是一个具有SUN认证天分的Java软件工程师,也是他的第二个乐成的Internet企图的首席手艺官。今朝Thomas寓居在阳关充分的南佛罗里达,遗憾的是年夜部分工夫他都呆在室内的一台盘算机后面



轮性能微软曾做过一个例子,就是同一个项目用java和.net来作,结果开发周期,.net是java的一半,性能java是.net的十分之一,代码量java是.net的三倍。呵呵,这说明了什么,.net的全方位比java好。但是有的人说.net不能跨平台,这个问题我和我同学曾讨论过,都认为微软的.net很可能早都可以跨平台了,但是微软为了保护他们的操作系统,所以才没有推出跨平台的.net,只是推出了跨语言的.net,
蒙在股里 该用户已被删除
沙发
发表于 2015-1-21 13:17:05 | 只看该作者
Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。
兰色精灵 该用户已被删除
板凳
发表于 2015-1-24 12:49:00 | 只看该作者
科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
老尸 该用户已被删除
地板
发表于 2015-1-24 17:41:09 | 只看该作者
你可以去承接一些项目做了,一开始可能有些困难,可是你有技术积累,又考虑周全,接下项目来可以迅速作完,相信大家以后都会来找你的,所以Money就哗啦啦的。。。。。。
莫相离 该用户已被删除
5#
发表于 2015-1-30 22:34:50 | 只看该作者
如果你学过HTML,那么事情要好办的多,如果没有,那你快去补一补HTML基础吧。其实JSP中的Java语法也不多,它更象一个脚本语言,有点象ASP。
第二个灵魂 该用户已被删除
6#
发表于 2015-2-5 17:09:25 | 只看该作者
是一种使用者不需花费很多时间学习的语言
7#
发表于 2015-2-13 00:00:42 | 只看该作者
让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。
透明 该用户已被删除
8#
发表于 2015-2-13 06:46:35 | 只看该作者
Java是一种计算机编程语言,拥有跨平台、面向对java
灵魂腐蚀 该用户已被删除
9#
发表于 2015-2-17 18:38:33 | 只看该作者
学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。
简单生活 该用户已被删除
10#
发表于 2015-3-7 10:24:03 | 只看该作者
Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
若相依 该用户已被删除
11#
发表于 2015-3-8 23:36:13 | 只看该作者
关于设计模式的资料,还是向大家推荐banq的网站 [url]http://www.jdon.com/[/url],他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。
山那边是海 该用户已被删除
12#
发表于 2015-3-16 17:45:18 | 只看该作者
不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。
冷月葬花魂 该用户已被删除
13#
发表于 2015-3-17 01:09:16 | 只看该作者
Pet Store.(宠物店)是SUN公司为了演示其J2EE编程规范而推出的开放源码的程序,应该很具有权威性,想学J2EE和EJB的朋友不要 错过了。
乐观 该用户已被删除
14#
发表于 2015-3-17 09:17:39 | 只看该作者
当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢?
小女巫 该用户已被删除
15#
发表于 2015-3-22 20:12:40 | 只看该作者
Jive的资料在很多网站上都有,大家可以找来研究一下。相信你读完代码后,会有脱胎换骨的感觉。遗憾的是Jive从2.5以后就不再无条件的开放源代码,同时有licence限制。不过幸好还有中国一流的Java程序员关注它,外国人不开源了,中国人就不能开源吗?这里向大家推荐一个汉化的Jive版本—J道。Jive(J道版)是由中国Java界大名 鼎鼎的banq在Jive 2.1版本基础上改编而成, 全中文,增加了一些实用功能,如贴图,用户头像和用户资料查询等,而且有一个开发团队在不断升级。你可以访问banq的网站
活着的死人 该用户已被删除
16#
发表于 2015-4-10 09:26:17 | 只看该作者
是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言
海妖 该用户已被删除
17#
发表于 2015-4-10 14:39:25 | 只看该作者
Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。
金色的骷髅 该用户已被删除
18#
发表于 2015-4-16 07:11:48 | 只看该作者
是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言
精灵巫婆 该用户已被删除
19#
 楼主| 发表于 2015-4-21 23:48:40 | 只看该作者
一般学编程语言都是从C语开始学的,我也不例外,但还是可能不学过程语言而直接学面向对象语言的,你是刚接触语言,还是从C开始学比较好,基础会很深点,如果你直接学习JAVA也能上手,一般大家在学语言的时候都记一些语言的关键词,常有的包和接口等。再去做逻辑代码的编写,以后的学习过程都是从逻辑代码编写中提升的,所以这方面都是经验积累的。你要开始学习就从
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-12-23 07:08

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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