`
zithan
  • 浏览: 175931 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

项目代码编写技巧(部分)

阅读更多

项目代码编写技巧

关于JavaScript

<!--[if !supportLists]-->1、  <!--[endif]-->使用JAVASCRIPT验证表单,必须同时使用JAVASCRIPT提交表单,而不是使用type=submit的按钮提交表单。这样用户在IE设置中禁止脚本之后,数据验证被屏蔽的同时,表单也无法提交。

<!--[if !supportLists]-->2、  <!--[endif]-->JavaScript变量和函数的命名要求同JAVA代码。局部变量必须使用VAR定义,避免使用全局变量。如:Var i,j;

<!--[if !supportLists]-->3、  <!--[endif]-->在编辑页面的保存、审核、反审核等javascript函数的开始处,一般需要下面代码,以防止页面按钮重复提交问题。

<!--[if gte vml 1]><v:shapetype id="_x0000_t202" coordsize="21600,21600" o:spt="202" path="m,l,21600r21600,l21600,xe"> <v:stroke joinstyle="miter" /> <v:path gradientshapeok="t" o:connecttype="rect" /> </v:shapetype><v:shape id="_x0000_s1027" type="#_x0000_t202" style='position:absolute; left:0;text-align:left;margin-left:0;margin-top:7.8pt;width:468pt;height:85.8pt; z-index:2' /><![endif]--><!--[if !vml]-->

<!--[endif]--><!--[if !mso]-->
<!--[endif]-->

document.edit.store.disabled = true;

document.edit.Submit.disabled = true;

或者

document.edit.Submit.disabled = false;

document.edit.store.disabled = false;

<!--[if !mso]-->
<!--[endif]--><!--[if !mso & !vml]--> <!--[endif]--><!--[if !vml]-->
<!--[endif]--> 

 

 

 

 

 

 


关于HTML

<!--[if !supportLists]-->1、  <!--[endif]-->要特别注意大小写,虽然在windows下没有区分,但是unix是区分的,并且该问题在windows下可能不能被检出。

<!--[if !supportLists]-->2、  <!--[endif]-->所有链接不允许使用根目录符号/”,只能以本文件所在目录为开始路径寻找需要的文件,即使用“./”或者“../”两种方式来寻找文件。

<!--[if !supportLists]-->3、  <!--[endif]-->HTML变量的命名按照JAVA代码规范,并且表单变量的名称必须与对应的ValueObject成员变量的名称一致。

<!--[if !supportLists]-->4、  <!--[endif]-->使用缩进的格式,具体格式要求同JAVA代码。(避免使用tab字符,缩进长度为4个空格)

<!--[if !supportLists]-->5、  <!--[endif]-->使用统一的css文件,规范编排格式;所以表格不允许指定高度、字体无需指定sizefont等。

<!--[if !supportLists]-->6、  <!--[endif]-->尽量少用Struts<html>标签库,而是直接写html代码,便于使用可视化编辑工具。

<!--[if !supportLists]-->7、  <!--[endif]-->若非特殊情况,不允许在JSP页面直接写JAVA代码。所以如果使用scriptlet,必须写清楚使用的原因以及影响。

<!--[if !supportLists]-->8、  <!--[endif]-->HTMLHEAD部分,一般都会有类似的代码,以便于IE确定文件的编码方式和减少IE缓存而导致的数据重复提交、数据不一致等问题,同时指定页面显示风格、引用常用javascript函数包。

<!--[if gte vml 1]><v:shape id="_x0000_s1026" type="#_x0000_t202" style='position:absolute;left:0;text-align:left;margin-left:0;margin-top:7.8pt; width:468pt;height:124.55pt;z-index:1' /><![endif]--><!--[if !vml]-->

<!--[endif]--><!--[if !mso]-->
<!--[endif]-->

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

<meta http-equiv="Expires" content="0">

<meta http-equiv="Pragma" content="no-cache">

<meta http-equiv="Cache-Control" content="no-cache">

<link rel="stylesheet" href="../CSS/style.css" type="text/css">

<script language="Javascript" src="../Script/util.js"></script>

<script language="Javascript" src="../Script/utilfloat.js"></script>

<!--[if !mso]-->
<!--[endif]--><!--[if !mso & !vml]--> <!--[endif]--><!--[if !vml]-->
<!--[endif]--> 

 

 

 


<!--[if !supportLists]-->9、 <!--[endif]-->如果使用DreamWeaver编辑页面,一定要先设置编码为UTF-8

 

关于Struts

<!--[if !supportLists]-->1、  <!--[endif]-->统一使用关键字action的原因是可以方便的实现用户权限判定。

 

页面session超时验证和系统登陆用户验证

系统登陆用户信息统一存放在名称为SYSUser_LoginSession中;每个Action类的perform函数开始部分需要验证session是否超时、用户是否已登陆,单元测试代码如下:

      //begin get the session and the test login user

      HttpSession session = httpServletRequest.getSession();

      SYSSysuser usrTest = SYSSysuserProxy.findSYSSysuser(new Long(1));

      session.setAttribute("SYS_SYSUser_Login",usrTest);

      //end get the session and the test login user

<!--[if !supportLists]-->n         <!--[endif]-->提交集成时上面代码需要修改为:

       //begin get the session and the login user

       HttpSession session = httpServletRequest.getSession(false);

       if (session == null || session.getAttribute("SYS_SYSUser_Login") == null)

         throw new GeneralException(ExceptionType.SESSION_TIME_OUT_EXCEPTION,                                    "In Action.perform()");

       //begin get the session and the login user

 

关于JAVA

<!--[if !supportLists]-->1、  <!--[endif]-->尽量保持简洁明了,长度尽量限制在25个字符以下。

<!--[if !supportLists]-->2、  <!--[endif]-->不要使用下划线、美元符号开头的标识符,尽管这在语法上是允许的。

<!--[if !supportLists]-->3、  <!--[endif]-->使用完整的单词,避免使用只取首字母的简写词和缩写词(除非缩写词比完整词汇的使用更广泛,比如URLHTML)。

<!--[if !supportLists]-->4、  <!--[endif]-->采用客户该领域的词汇(例如:如果用户称他们的客户为Customer而不是Client,就要求使用Customer)。

<!--[if !supportLists]-->5、  <!--[endif]-->避免使用“神秘数”,而是使用常量来代替。

<!--[if !supportLists]-->6、  <!--[endif]-->常量使用大写字母和下划线“_”组成的字符串。

<!--[if !supportLists]-->7、  <!--[endif]-->源代码一行不要超过80个字符,超过80个字符就使用折行(Warpping Line

<!--[if !supportLists]-->8、  <!--[endif]-->避免在源程序中使用Tab

<!--[if !supportLists]-->9、  <!--[endif]-->pakage放在import之前,import必须输入完整的类名。优先列出本项目的包,然后才是标准库。

<!--[if !supportLists]-->10、              <!--[endif]-->空白 Blank

<!--[if !supportLists]-->10.1、     <!--[endif]-->whileforifswitch等关键字与判断条件之间加上空格。

<!--[if gte vml 1]><v:shape id="_x0000_s1028" type="#_x0000_t202" style='position:absolute;left:0;text-align:left; margin-left:45pt;margin-top:4.15pt;width:369pt;height:54.6pt;z-index:3'> <v:textbox style='mso-next-textbox:#_x0000_s1028' /> </v:shape><![endif]--><!--[if !vml]-->

 
  <!--[endif]--><!--[if !mso]-->
<!--[endif]-->

while (true){

    statements;

}

<!--[if !mso]-->
<!--[endif]--><!--[if !mso & !vml]--> <!--[endif]--><!--[if !vml]-->
<!--[endif]--> 

 

 

 


10.2、在函数的多个参数之间加上空格。

<!--[if gte vml 1]><v:shape id="_x0000_s1029" type="#_x0000_t202" style='position:absolute;left:0;text-align:left; margin-left:45pt;margin-top:4.15pt;width:369pt;height:23.4pt;z-index:4'> <v:textbox style='mso-next-textbox:#_x0000_s1029' /> </v:shape><![endif]--><!--[if !vml]-->

 
  <!--[endif]--><!--[if !mso]-->
<!--[endif]-->

myMethod(arg1, arg2, arg3);

<!--[if !mso]-->
<!--[endif]--><!--[if !mso & !vml]--> <!--[endif]--><!--[if !vml]-->
<!--[endif]--> 

 


10.3、一元运算符与变量之间不能加空格。如:argv++;

 

<!--[if !supportLists]-->11、              <!--[endif]-->变量声明之后,应该马上对变量进行初始化。

<!--[if !supportLists]-->12、              <!--[endif]-->变量应该在块(block)的开始部分集中声明,而不是用到的时候才声明。(临时变    量、循环变量、异常变量除外)

<!--[if !supportLists]-->13、              <!--[endif]-->强烈建议不要用public变量!

<!--[if !supportLists]-->14、              <!--[endif]-->先写注释,后写代码。

<!--[if !supportLists]-->15、              <!--[endif]-->注释信息不仅要包括代码的功能,还应给出原因

<!--[if !supportLists]-->16、              <!--[endif]-->使用Javadoc标记注释,以便于生成api文档。

<!--[if !supportLists]-->17、              <!--[endif]-->保持注释的简洁清晰。

 

分享到:
评论

相关推荐

    c语言编写单片机技巧

    而且单片机开发应用需要软硬件结合,所以不能只满足于编程技巧如何完美,平时也要注意硬件知识的积累,多上上电子论坛网站,买一些相关杂志。可能的话,可以到ic37去买一些小零件,自己搭一个小系统让它工作起来。 ...

    CSS代码编写的一些性能优化技巧总结

    有鉴于此,不同的样式系统引擎可能会拥有完全不同的表现和行为,特别是 Gecko 与 WebKit, 这两个引擎都是开源项目,实现了类似的算法,具有极其相近的优缺点。因此下面介绍的小技巧对于真实世界的 Web 文档将会十分...

    代码阅读方法与实践

    我想介绍有可能出现在软件开发人员面前,与代码相关的大部分概念,包括编程构造、数据类型、数据结构、控制流程、项目组织、代码规范、文档和构架。 本书中提供的许多源代码示例都来自NetBSD的源代码。NetBSD主要的...

    JAVA上百实例源码以及开源项目源代码

    Java圆形电子时钟源代码 1个目标文件 内容索引:JAVA源码,系统相关,电子钟 用JAVA编写的指针式圆形电子钟,效果图如下所示,其实代码很简单,希望对你有帮助。 Message-Driven Bean EJB实例源代码 2个目标文件 摘要:...

    编写可维护的JavaScript(中文)

    《编写可维护的JavaScript》向开发人员阐述了如何在团队开发中编写具备高可维护性的JavaScript代码,书中详细说明了作为团队一分子,应该怎么写JavaScript。本书内容涵盖了编码风格、编程技巧、自动化、测试等几方面...

    《Visual Studio .NET使用技巧手册》精选版

    全书内容分为精练而容易把握的几部分,收录的技巧从编辑代码,到编译和调试,以及VS.NET编译器深入了解等多个方面,对所有开发人员而言都是本必读的书籍,无论他们是否熟练,或者使用哪种开发语言。本书涵盖了Visual...

    Eclipse开发入门与项目实践 源代码

    2.2.2 代码编写过程中Eclipse的帮助 26 案例2-2 猜数游戏程序的实现 29 2.2.3 Java程序调试技巧 34 2.2.4 Eclipse中提高工作效率的其他措施 40 案例2-3 人员信息察看程序的实现 40 案例2-4 一对一聊天...

    ios开发技巧总结.docx

    理解MVC架构:iOS应用遵循Model-View-Controller(MVC)设计模式,理解并合理划分各部分职责有助于编写清晰、易于维护的代码。 Auto Layout与Size Classes:灵活布局是iOS开发中重要的一环,掌握Auto Layout可以...

    代码阅读方法与实践.2004.中文版(38.4M清晰版)

    养成阅读高品质代码的习惯,可以提高编写代码的能力。 阅读代码是程序员的基本技能,同时也是软件开发、维护、演进、审查和重用过程中不可或缺的组成部分。本书首次将阅读代码作为一项独立课题,系统性地加以论述。...

    ADO.NET在开发中的部分使用方法和技巧.pdf

    目录 一、如何使用 SqlDataAdapter 来检索多个行 二、使用 SqlAdapter 生成 DataSet 或 DataTable...十五、如何编写 ADO.NET 手动事务处理代码 十六、如何使用 Transact-SQL 执行事务处理 十七、如何编写事务性 .NET 类

    编写可维护的javascript(英文)

    《编写可维护的JavaScript》向开发人员阐述了如何在团队开发中编写具备高可维护性的JavaScript代码,书中详细说明了作为团队一分子,应该怎么写JavaScript。本书内容涵盖了编码风格、编程技巧、自动化、测试等几方面...

    Oracle优化日记:一个金牌DBA的故事 白鳝.扫描版

    另外《Oracle优化日记:一个金牌DBA的故事》第一次详尽地披露了Oracle数据库内部存储结构,并公布了部分代码,对于有兴趣研究数据库内部存储结构或者编写dul工具的读者有一定的参考价值。《Oracle优化日记:一个金牌...

    Python项目开发实战_网络爬虫批量采集股票数据保存到Excel中_编程案例实例课程教程.pdf

    通过本章的学习,读者可以掌握分析网页的技巧、Python 编写网络程序的方法、Excel 的操作,以及正则表达式的使用。这些都是爬虫项目中必备的知识和技能。通过编写爬虫,将指定日期时段内的全部上市公司股票数据爬取...

    使用VBA进行solidworks开发指南

    - 提供编辑和优化宏的技巧,以提高代码质量和性能 第四部分:示例项目 - 通过实际示例项目,演示如何使用VB创建SolidWorks插件或宏 - 涵盖图形绘制、参数化设计和自动化等任务 第五部分:调试与错误处理 - 介绍如何...

    基于SSM+vue在线云音乐系统的设计与实现+jsp(源码+部署说明+演示视频+源码介绍).zip

    同时,还提供了一些代码编写的技巧和注意事项,帮助用户更好地理解和学习项目的代码。 总之,这个项目是一个非常完整的在线云音乐系统的设计与实现,包含了从前端到后端的完整代码,以及详细的部署说明和源码介绍。...

    代码阅读方法与实践(Part1)

    养成阅读高品质代码的习惯,可以提高编写代码的能力。 阅读代码是程序员的基本技能,同时也是软件开发、维护、演进、审查和重用过程中不可或缺的组成部分。本书首次将阅读代码作为一项独立课题,系统性地加以论 述...

    代码阅读方法与实践(part2)

    养成阅读高品质代码的习惯,可以提高编写代码的能力。 阅读代码是程序员的基本技能,同时也是软件开发、维护、演进、审查和重用过程中不可或缺的组成部分。本书首次将阅读代码作为一项独立课题,系统性地加以论 述...

    learning-[removed]包括作为学习 VBScript 的一部分而编写的用于 QTPUFT 的代码

    我必须学习 VBScript 作为我最近一直在工作的一个新项目的一部分,并决定采取一次有趣的方法,因此想出了一个简单的基于点击的游戏,该游戏仅在 Windows上运行,以及另一个函数库可以插入 QTP/UFT 脚本(或不插入)...

Global site tag (gtag.js) - Google Analytics