1.你可能会常常发现,写了一段代码后,编译程序时是一大堆的出错 (原因:语法不熟)
──别担心,这是每个程序员必须经历的事,这时候你就需要更大的耐心及细心,对每一行代码进行仔细人阅读并改正,这个很重要,这可以培养你的理解代码能力,所以要常读程序,不要等到程序运行以后才知道你的程序的结果。
──如何避免:在写代码以前,要认真的学习计算机语言的语法,如关键点,易错点,易忘点。同时要自已动手写自已的测试代码,而尽量不要抄别人的代码示例。即使抄,在学习阶段也尽量不要每一行一模一样的对着抄。而应对着代码示例写有所不同的例子
比如:在学java 知识点时,你最好建一个工程把所有的代码都写到这个工程中,以便对照分析学习
2. 你可能会常常发现,写完一段码后,编译通过,可是运行起来却出来很多逻辑上的错误。(原因:理解错误或逻辑上想错了──提高逻辑思维和理解能力
3.拿到一个需求却不知从那里开始(对系统不太了解)
4.常常为了一个小小的错误用了很长的时间,不知从那里查,也查不出结果
5.常常做出来的东西是有了东却少了西(考虑不全)
6.有时为了一个特殊功能模块的实现查了很工时间却没有查出结果来(备查的资料不全)
7.有时是否要项目经理叫你做东,你做了完全没有必要的西?(沟通不及时)
8.有时为了能提前完成某一个任务,加班到深夜,可是到了明天却效率低下,还不如不加班(要注意休息)
9.有时自已认为已测好了好多次,可以保证不会出错,可是经测试人员一测试却很多错误(不够细心或测试方法有问题
10.有时为了避免出错,常常全比写代码的时间超出两倍用于测试(方法有误)
11. 有时写好了一段代码给质量管理人员时却因为代码不够规范而导致重写?(代码不够规范)
可以总结为两大关键点:一是养成好的编程习惯,二是针对自已的工作提高自已的知识含量.
一. 好的编程习惯
1. 写程序前打个草稿可以在心里,最好在纸上:目的要从整体上考虑程序的实现。
如果公司采用建模的方式,有建模工具(rose ,visio )那是最好不过的了。
2. 注意休息,不要浪费自已的休息时间,用去了自已的时间不但会写出的代码因为注意力不集中而会常常出现代码的质量有问题,逻辑常出错
3. 要善于收集相关的专业开发上的资料,以便以后能更快更好的解决问题目。提倡公司能提供内部知识勾通的工具(如知识论坛,内部即时聊天器);提倡公司内部有技术资料的共享库,提高解决问题的能力.
4. 提高对所写的模块的相关全局把握能力,在写程序中要最好先详细设计后再发布.
5. 要学会与他人沟通如非工程师,学会沟通的不同方式,提高沟通的效率。
二. 不同的目标不同的知识重点
(一)目标:程序员
职责:根据详细设计文档,或根据高级程序员的设计进行相关的开发。
1. 要学会看相关的需求文档及详细设计文档。
注意:你必须要通过阅读这些文档把握住其中的重点,关键点,相关易漏
2. 如果公司里会用UML来相互的沟通,这时你必须要深刻理解UML 的相关知识,一定要注意千万不要对UML图一知半解的情况下,就着写代码,那样会错的很惨。
3. 学好对应的计算机语言的基础知识,如:程序的语法,关键点,易错点,对应的出错如何出理,如何才能把对就的程序写的键壮一些
4. 如果用到数据库的内容,在学会sql的前提下,尽量学会数据库原理中的相关sql内容, 当然为了提高查询的能力也可以增加一点
5. 如果用到面向对像的语言那最好学点相关的设计模式,这样的可以增加代码的扩展性,及可维护性等,能够理解详细设计中的模块间的设计原则这个也可以提高对模块的内容编写的正确性.
6. 你一定要学会公司内部的通用的编码规范。
7. 学习如何做单元测试比较好.必须要熟悉相关的单元测试工具.
8. 要不断的对相关知识进行总结,同时也要必须把相关的资料进行整理和学习,在学习过后的资料中你可以在遇到问题时更快的找到问题的答题。
9. 在开发你必须记录下大家常出错的地方及大家的解决方法,这个对你以后错误的避免有很大的作用
10. 在写代码中时必须把上面写过代码记在心里,这样就可以养成习惯,提高代码的速度
11. 对数据库操作时,要尽量共用Connection,并小用以减少Connection的数量
(二)目标:高级程序员
职责:对需求文档进行系统相关模块的详细设计,并负责对程序员的支持及指导和相关核心模块的编写所以不但要学会相关程序员要的知识,同时还要学会难度比较大的知识。
1. 程序员的知识,如设计模式你一定要不是简单的看要懂,你还要应用设计模式对相应的模块进行相关的详细设计。
2. 要学好相关详细设计的工具做的有的放矢,这样可以更好提高对自已的设计的表达
3. 为了提高系统的运行效率会运用到
a. 数据库的表结构如何建才能使应用的要查询sql 更快。这时可要认真认真的学习一样数据库原理,千万不要以为采用数据库的范式越高系统的运行效率会越好,有时候适当的表冗余可以大幅度的提高系统的查询效率. 同时适当的建索引,视图,存储过程也是提高系统对数据库的查询的效率之一
b. 学习多线程的编程,不过千万不要以为线程数越多运行的速度会越快,一般线程的数量超过一定的数量后,系统的运行速度反而会变慢。
为了应用好多线程,操作系统这本书也要关于同步及相关进程和线程的知识必不可少。
c. 设计好的一程序的好的算法,可要比起解一道同一复杂的数学题,要难的多,所以要在学好的相关数学的知识上(如线性代数,离散数学,概率论,数理统计)。更要深入计算方法,及数据结构,让数学问题用计算机来解决。
4.为了让系统设计的更加的可扩展性,稳定性,设计模式和软件工程可是不能少的东西。所以必须把设计模式用于模式级的设计.
5. 如果公司采用的是Rose (UML)进行设计的话,你对于UML 的理解一定要非常的准确,同时你要跟小组中的程序之间进行充分的UML概念上及对应用例图,类型图,对象图,协作图的意思多写一些注释加深大家对你的设计上的理解。
(三)目标:系统分析员
职责:做好与客户之间的关系,同时对客户的需求要正确的理解,要选择合适的开发技术,同时做好与客户间沟通交流,学会说服对方。
1.学会对客户的沟通:要正确理解客户的需求同时要保证相互之间的沟通顺畅。
2.对了解来的需求要能用笔正确的描述下来,并能很好的传叙给其他人。这时要学会用如ROSE 等的软件建模的工具。和powerdesign等的数据库建模工具。和相关的UML,数据流程图及相关的内容的知识。
3.不但要全面的了解客户的需求而且还要对需求进行未来的可能的改变要有相当多的了解。
4.全面的了解客户的需求后,要选择合适的相关技术用于开发,:
这时要学习各种知识
a. 先择数据库:db2,infomix ,oracle ,sql server,mysql 的优缺点,可以从中选择最适合的数据库及理由。
b. 设计数据库:要扎实在数据库的理论(数据库原理,数据库系统设计)及相关数据库设计经验,要尽量多的分析过去数据库设计,分析这么设计数据库的好处。这时可能要用到 powerdesign等工具。
c. 写需求说明文档和概要设计文档,同时要学会要分析相关需求说明文档的需要的内容的相关知识,如人员工时的计算方法, 一般会用project 来分析相关的项目的内容。
d. 选择合适的程序语言及相关的架构,一般主流的架构是 J2EE和.net的相应的优点及它们之间的结合,如采用soap xml进行相关的结合,或用java-com 桥 进行相关的功能的调用。和它们之间的相关语言优缺点
e. 还要根据b/s,c/s 结构对开发的网络影响的相关内容采取
5. 学会说服对方,毕竟客户都不是个个是软件专家,他们的选择有时未必是正确的所以学会说服对方,是系统分析员必备的能力条件.
三.例:java 程序员的知识结构及学习流程:
(一) 学习相关工作必须的知识
1.Java 语言的基础(推荐书:《 java 编程思想》)关键:
(1.java 面向对象及对应的程序现实
(2.java 多线
(3.java 网络 socket
(4.应用界面
2.学会用智能集成开发工具jbuilder,eclipse等一种,根据资料里的内容,自已写与例程类似的代码,但注意不要直接抄它,一定要自已写。
同时最好写到一个工程中以便对比。
3.如果用b/s结构要学习jsp的知识(推荐书:《 JSP 2.0技术手册 》)
关键:
(1. 界面处理:
a . HTML——超文本标志语言:用于显示页面如:超文本链接, 表格,各种标志等。
b. CSS———层叠样式表:控制正文外观的一组格式.用于美化HTML页面。
c. javaScript—嵌入HTML页面浏览器来执行的脚本语言:让页面可以根据用户的操作或事先设置等在客户端进行动态变化,而且不需传回服务器。比如: 对表单输入的正确性做客户端验证.
(2.jsp元素:如java代码写法,对应标志---jsp:include,jsp:useBean,jsp:setProperty,jsp:getProperty等.jsp的几大对
(3. javaBean及其在jsp 中的调用和相关应用.
(4. 其他技术:
a. 如何操作数据库—用jdbc(可能要补充一些数据库的知识,如oracle ,sql server,包括如何写高效率的查询sql,存储过程等) ,
b. 如何发送email—用javaMail,
c. 如何学习如何用实现文件的上传下载,如果操作文
d. 如何操作xml --用jdom 及 jaxp(这时有必要学习一下xml 的语法如 dtd等)
e. 如何远程方法调用—用 rm
f. 如何进行消息服务 ---用 jm
5.再有些公司会用到 J2EE 的架构如 EJB 作为业务逻辑
(1.EJB中要分清
(2. struts MVC
(3. Hibernate 操作数据
6.最好学习一下UML 学用Rose建模
分享到:
相关推荐
提高开发效率之tomcat免重启(随意更改java代码)提高开发效率之tomcat免重启(随意更改java代码)提高开发效率之tomcat免重启(随意更改java代码)提高开发效率之tomcat免重启(随意更改java代码)
MyEclipse10高级配置快速提高开发效率
Devkits 是一款轻量级桌面端应用,提供了一系列开发者工具,提高开发效率。 离线。类似的在线工具已经不少了,但是大多数都是在线的,网络不好的时候就很难用了。Devkits 提供了离线使用的功能,可以在没有网络的...
提高软件开发效率经验 软件开发效率是软件企业的生命线,影响着企业的盈利模式和产品研发管理。提高软件开发效率需要从多方面入手,包括提高项目成员工作技能、制定适当的研发流程和部门协作流程、总结经验反省过错...
NULL 博文链接:https://royal2xiaose.iteye.com/blog/1461511
单元软件测试中如何通过单元测试提高开发效率?KevlinHnney是英国的一位独立顾问和培训师,其关注的范围主要包括软件架构、模式、开发过程和程序设计语言。在本文中他将谈谈如何通过单元测试提高开发效率。单元测试...
如何通过单元测试提高开发效率?软件测试KevlinHnney是英国的一位独立顾问和培训师,其关注的范围主要包括软件架构、模式、开发过程和程序设计语言。在本文中他将谈谈如何通过单元测试提高开发效率。单元测试只会浪费...
这是一个js - dojo框架。配合JS的的开发,可以提高更多的功能,更高速的开发。
提高 List 转换效率是 Java 开发中非常重要的一方面,本文将讨论如何将 List 转换为逗号分隔的字符串,并提高开发效率。 首先,为什么需要将 List 转换为逗号分隔的字符串?因为在实际开发中,我们经常需要将数据...
该项目为基于Java的orion-kit工具类库设计源码,总计包含852个文件,涵盖了834个Java...orion-kit库以其全面的功能和简洁的设计,旨在消除重复的底层代码编写,显著提升开发效率,并使代码更易于阅读、维护和优雅。
总结来说,Node.js 作为前后端协作的利器,通过 Mock 数据和设置 Proxy 代理,能够有效提高开发效率,减少开发过程中的等待时间,同时也方便了调试和测试。对于任何从事前后端分离开发的团队而言,掌握这些技能都是...
【Asp.Net Core 提高开发效率的方法】 在Asp.Net Core的开发中,提升效率不仅关乎于使用自动化工具,还涉及到编码规范、编码技巧、开发思想以及设计模式等多个方面。本文将从这些方面分享一些实战经验和技巧,帮助...
此份教材重点探讨了如何通过不同的策略来提高开发效率,特别是对于大规模开发的企业而言。首先,我们需要理解效率提升的几个关键方面: 1. **管理流程标准化**:以中式快餐和麦当劳的比较为例,中式快餐虽然在国内...
在项目开发中,提高开发效率和优化项目周期是至关重要的,因为这直接影响到项目的成功与否以及团队的工作压力。以下是一些关键的策略和心得,可以帮助改善这种状况。 首先,代码复用是提升效率的关键。通过将常用的...
彩虹缓存您的star是我继续前进的动力,如果喜欢请帮忙点个star简介一套缓存注解,缓存可以使用本地缓存或redis缓存,内置利用redis完成的并发锁(使用并发锁注解一定要接收redis),提高开发效率,让开发人员更专注...
4. 业务操作IT化:金地集团认识到将业务流程IT化对于消除时空差距、减少手工工作量、提高开发效率的重要性。2006年的重点包括设计关键节点管理系统、设计变更与现场签证管理系统、部品应用与供应商管理系统、设计...
Newbiest(VCIM)是致力于打造一个速提高开发效率,帮助节省人力成本,摆脱CRUD的痛苦,让更专业的人做更专业的事。同时又不失灵活性。可以用于所有的Web应用程序,CIM服务项目。 Newbiest(VCIM)宗旨是提高UI能力的...
代码生成+手工MERGE半智能开发将是新的趋势,单表数据模型和一对多数据模型的增删改查功能直接生成使用,可节省60%工作量,快速提高开发效率!!!简介JEECG(J2EE代码生成)是一种基于代码生成器的智能开发平台。...