仓酷云

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

[学习教程] JAVA网站制作之Bad Smells in Code

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

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

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

x
轮性能微软曾做过一个例子,就是同一个项目用java和.net来作,结果开发周期,.net是java的一半,性能java是.net的十分之一,代码量java是.net的三倍。呵呵,这说明了什么,.net的全方位比java好。但是有的人说.net不能跨平台,这个问题我和我同学曾讨论过,都认为微软的.net很可能早都可以跨平台了,但是微软为了保护他们的操作系统,所以才没有推出跨平台的.net,只是推出了跨语言的.net,
1.DuplicatedCodeSameexpressionintwomethodsofthesameclass:ExtractMethodSameexpressionintwosiblingsubclass:ExtractMethod,thenPullUpFieldDuplicatedcodeintwounrelatedclasss:ExtractClass/Themethodbelongsonlyinoneclassandbeinvokedbytheotherclass.

2.LongMethodAheuristicwefollowisthatwheneverwefeeltheneeddtocommentsomething,wewriteamethodinstead(ExtractMethod).Agoodtechnologytoidentifytheclumpsofcodetoextractistolookforcomments.Conditionalsandloopsalsogivesignsforextraction.

3.LargeClassExtractMethod

4.LongParametersListReplaceParameterwithMethod,PreserveWholeObject,IntroduceParameterObject.

5.DivergentChangeExtractClass.

6.ShotgunSurgeryMoveMethod,MoveField,InlineClass,.

7.FeatureEnvyMoveMethod,ExtractMethod,.

8.DataClumpsExtractClass,IntroduceParameterObject,PreserveWholeObject

9PrimitiveObseesion

10.SwitchStatementsExtractMethod

11.ParallelInheritanceHierarchis

12.LazyClass

13.SpeculativeGenerality

14.TemporaryField

15.MessageChains

16.MiddleMan

17.InappropriateIntimacy

18.AlternativeClasseswithDifferentInterfaces

19.IncompleteLibraryClass

20.DataClass

21.RefusedBequestPushDownMethodandPushDownField

22.Comments

唉!都是钱闹的1.Swing和.net开发比较------从市场份额看.net开发主要占据大部分的中小型和中型的的桌面开发,原因是它封装了很多工具
深爱那片海 该用户已被删除
沙发
发表于 2015-1-20 15:59:10 | 只看该作者
那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除了一些散乱的代码之外,可能再没有别的东西了吧!
若天明 该用户已被删除
板凳
发表于 2015-1-29 12:48:24 | 只看该作者
是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言
小魔女 该用户已被删除
地板
发表于 2015-2-6 00:58:47 | 只看该作者
你一定会高兴地说,哈哈,原来成为Java高手就这么简单啊!记得Tomjava也曾碰到过一个项目经理,号称Java很简单,只要三个月就可以学会。
灵魂腐蚀 该用户已被删除
5#
发表于 2015-2-6 08:15:03 | 只看该作者
不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。
第二个灵魂 该用户已被删除
6#
发表于 2015-2-15 18:46:56 | 只看该作者
另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。
简单生活 该用户已被删除
7#
发表于 2015-2-26 05:36:47 | 只看该作者
那么我书也看了,程序也做了,别人问我的问题我都能解决了,是不是就成为高手了呢?当然没那么简单,这只是万里长征走完了第一步。不信?那你出去接一个项目,你知道怎么下手吗,你知道怎么设计吗,你知道怎么组织人员进行开发吗?你现在脑子里除了一些散乱的代码之外,可能再没有别的东西了吧!
飘飘悠悠 该用户已被删除
8#
发表于 2015-3-5 23:13:17 | 只看该作者
Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)
透明 该用户已被删除
9#
发表于 2015-3-12 11:39:03 | 只看该作者
让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。
金色的骷髅 该用户已被删除
10#
发表于 2015-3-17 07:09:14 | 只看该作者
一般学编程语言都是从C语开始学的,我也不例外,但还是可能不学过程语言而直接学面向对象语言的,你是刚接触语言,还是从C开始学比较好,基础会很深点,如果你直接学习JAVA也能上手,一般大家在学语言的时候都记一些语言的关键词,常有的包和接口等。再去做逻辑代码的编写,以后的学习过程都是从逻辑代码编写中提升的,所以这方面都是经验积累的。你要开始学习就从
柔情似水 该用户已被删除
11#
发表于 2015-3-24 00:47:18 | 只看该作者
Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
飘灵儿 该用户已被删除
12#
发表于 2015-4-4 14:21:22 | 只看该作者
是一种使用者不需花费很多时间学习的语言
山那边是海 该用户已被删除
13#
发表于 2015-4-5 04:18:06 | 只看该作者
J2SE开发桌面应用软件比起 VC,VB,DEPHI这些传统开发语言来说,优势好象并不明显。J2ME对于初学者来说,好象又有点深奥,而且一般开发者很难有开发环境。
小妖女 该用户已被删除
14#
发表于 2015-4-16 02:11:35 | 只看该作者
是一种使网页(Web Page)产生生动活泼画面的语言
冷月葬花魂 该用户已被删除
15#
发表于 2015-4-20 04:01:36 | 只看该作者
是一种使用者不需花费很多时间学习的语言
admin 该用户已被删除
16#
发表于 2015-4-27 18:55:34 | 只看该作者
[url]http://www.jdon.com/[/url]去下载,或到同济技术论坛的服务器[url]ftp://nro.shtdu.edu.cn[/url]去下,安装上有什么问题,可以到论坛上去提问。
再见西城 该用户已被删除
17#
发表于 2015-4-28 14:38:16 | 只看该作者
是一种将安全性(Security)列为第一优先考虑的语言
分手快乐 该用户已被删除
18#
发表于 2015-5-1 16:09:10 | 只看该作者
学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。
莫相离 该用户已被删除
19#
发表于 2015-5-4 02:05:59 | 只看该作者
至于JDBC,就不用我多说了,你如果用java编过存取数据库的程序,就应该很熟悉。还有,如果你要用Java编发送电子邮件的程序,你就得看看Javamail 了。
不帅 该用户已被删除
20#
发表于 2015-6-11 17:39:58 | 只看该作者
吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-5-5 04:56

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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