三、 项目开发

1. 需求:

1) 需求最终需要开发人员在产品中实现,开发不合理的设计会浪费时间,开发技术无法实现的设计带来最大的痛苦:失败。所以,开发人员要重视需求以及需求评审,提出自己能够想到的所有异议;

2) 开发人员不但要做好需求分析,还要做出精确的估计。因为编码工作保质保量的按时完成需要多方的准备工作,技术难点需要进行充分的技术预言,不熟悉的依赖平台或类库要进行熟悉;

2. 计划:一栋楼很难估算重量,但是一块砖头可以精确估算重量。一个项目的时间很难准确的估计,但把项目开发划分为不能再进行分割的模块功能点,对每个点的估计是可以更精准的估时的,由此由上至下,由下至上,可以得出近乎准确的开发时间。

3. 设计:

1) 一图胜万言,模块结构以及流程等很难用用文字描述,即使用文字描述出来也很难看懂,所以在设计中,要善用用图;

2) 详细设计过程中有思考的痛苦,繁琐的痛苦,但是绕过这些痛苦,编码期间将会面临更大的痛苦,要以快乐的心态面对。

4. 编码:

1) 对于一个实现可以有很多解决方案,花些时间精力选取你认为最好的解决方案可以总体上提高工作成效,往往还可以得到用户更好的体验效果;

2) 细致认真严谨的工作即是对工作负责,更是对自己负责,让这些成为习惯。任何一次,任何时候所进行的编码工作,在逻辑、风格、简单有效等方面都尽可能的做到最好,既能更好为公司实现价值,同时更有利自己在技能,岗位的进步;

3) 简单是美,在有效的前提下,越是简单的处理方法越是珍贵的,代码编写也是,简单的代码便于理解维护,同时不容易产生错误

4) 慎做改动,当然不是说不做改动或不鼓励改动,而是不做仓促、草率的代码改动。没有洞察全局,考虑全面,而仓促进行的改动往往没有达到改动的目的却带来了其他问题

5) 模块的性能不是减少一行或几行执行代码所能提高的,性能的优化首先是从算法上考虑,降低时间复杂度,然后从执行逻辑入手,减少循环执行代码的执行次数

6) 关键地方要打印日志输出到文件中,在运行过程中不断检查日志,发现任何异常都要检查原因并修改

5. 测试:

1) 事出有因,任何bug都是由于代码的疏漏造成的,利用排除法或跟踪调试代码等方法找到疏漏所在;

2) 遇到自身模块相关问题首先检查自己,相互推诿只会浪费时间以及减弱在其他同事对你的信任;

3) 站的高看得远,不同的视角有不同的风景。遇到比较难解决的问题而苦苦没有思路时,转换思路或把问题的考虑范围放的更广一点,往往可以找到解决方案

4) 功能提交测试前或bug修复提交验证前,开发人员都要自己详细的测试一下,验证无误再提交。(参考附录2--测试常见问题)

6. 其它:

1) 善于及时的沟通。在项目的整个流程过程中,遇到他人的问题或自己解决不了的问题,切忌堆在自己心里,要及时找问题解决方进行沟通,寻求解决方案

2) 善于发现并学习别人的长处。作为开发人员,我们在追求接近完美的同时,也需要学会欣赏别人的长处,发现别人的优点,并学习别人的优点,转化为自己的潜质,这样,我们才可以进步的更快,更全面

3) 善于帮助他人解决问题以及进行知识经验的分享,更有利于自己的提高,同时还可以获得他人的尊重

java开发经验分享(三)的更多相关文章

  1. java开发经验分享(四)

    四. 关于测试 1. 在整个项目计划中,测试时间安排的合理性,对测试阶段的情况应作充分预计,不可为了赶发布点而忽略质量. 2. 务必清楚产品包.更新包.bug包的提交规范.具体请参照<开发规范手 ...

  2. java开发经验分享(一)

    一. 编码 1. 约束自己,规范编码习惯 充足的代码注释.标准缩进的格式.注意命名规范.参考<开发管理规范> "看上去"专业能促进代码质量.越是难看的代码,在它的演化过 ...

  3. uni-app开发经验分享三: Vuex实现登录和用户信息留存

    在做用户登录的过程中,其实最重要的是登录成功后的数据要怎么储存,储存到哪里,这里我分享一个利用vuex来实现用户登录和用户数据留存的方法 vuex代码如下: //引入vue和vuex import V ...

  4. java开发经验分享(二)

    二. 数据库 1. SQL语句中保留字.函数名要大写,表明.字段名全部小写 如:SELECT vc_name,vc_sex,i_age FROM user WHERE i_id = 100 AND i ...

  5. 【Meetup回顾】Apache DolphinScheduler在联通的实践和二次开发经验分享

    在由 openLooKeng 社区主办,Apahce DolphinScheduler社区.Apache Pulsar 社区.示说网协办的联合 Meetup 上,来自联通数字科技的王兴杰老师分享了Do ...

  6. java‘小秘密’系列(三)---HashMap

    java'小秘密'系列(三)---HashMap java基础系列 java'小秘密'系列(一)---String.StringBuffer.StringBuilder java'小秘密'系列(二)- ...

  7. Java入门(三):变量和运算符

    上次谈到了Java的基本数据类型,今天接着聊Java的变量.运算符. 一.变量 1.变量的分类 变量分为成员变量.局部变量和常量,其中成员变量又分为实例变量.类变量. 2.变量的定义 语法:变量类型( ...

  8. Java微信分享接口开发

    发布时间:2018-11-07   技术:springboot+maven   概述 微信JS-SDK实现自定义分享功能,分享给朋友,分享到朋友圈 详细 代码下载:http://www.demodas ...

  9. 2017-2018-1 JAVA实验站 第三周作业

    2017-2018-1 JAVA实验站 第三周作业 团队展示 队名 JAVA实验站 拟作的团队项目描述 (2048)增加其他模式,使得2048更加丰富多彩 团队的首次合照 团队的特色描述 团队内部很团 ...

随机推荐

  1. O - 覆盖的面积 - hdu 1255(求面积)

    分析:求一层的面积覆盖是非常简单的事情,不过多层面积覆盖应该怎么搞???也是比较简单的事情,只需要用两个变量记录就好了,一个记录覆盖一次的,一个记录覆盖两次的,就很容易解决了 ************ ...

  2. http常见错误

    100:继续  客户端应当继续发送请求.客户端应当继续发送请求的剩余部分,或者如果请求已经完成,忽略这个响应. 101: 转换协议  在发送完这个响应最后的空行后,服务器将会切换到在Upgrade 消 ...

  3. HBase的rowkey的设计原则

    HBase是三维有序存储的,通过rowkey(行键),column key(column family和qualifier)和TimeStamp(时间戳)这个三个维度可以对HBase中的数据进行快速定 ...

  4. 2016-05-I

    2016 年上半年软件设计师上午真题 1. VLIW 是( )的简称.A.复杂指令系统计算机 B.超大规模集成电路C.单指令流多数据流 D.超长指令字 2.主存与 Cache 的地址映射方式中,( ) ...

  5. Linux进程实时监控 - htop

    htop 是一个 Linux 下的交互式的进程浏览器,top的增强版 htop:                        进入:htop        退出:按q键 常用操作:          ...

  6. 手游2dx面试笔记一

    第一轮IQ测试:都来面试程序了,相信IQ再怎么也坑不到哪里去吧.要问什么样的题,几页纸呐, 如:1.找出不同类:羚羊.斑马.鲨鱼 2.在()里添一字使2边都能组词:木()料 3.中间值?:1,2,4, ...

  7. linux shell 切换到ROOT用户

    #!/bin/bash expect -c "        set timeout 1000        spawn /bin/su - root         expect \&qu ...

  8. Android 自定义控件玩转字体变色 打造炫酷ViewPager指示器

    1.概述 本篇博客的产生呢,是因为,群里的哥们暖暖给我发了个效果图,然后问我该如何实现顶部ViewPager指示器的字体变色,该效果图是这样的: 大概是今天头条的app,神奇的地方就在于,切换View ...

  9. jsp DAO设计模式

    DAO(Data Access Objects)设计模式是属于J2EE体系架构中的数据层的操作. 一.为什么要用DAO? 比较在JSP页面中使用JDBC来连接数据库,这样导致了JSP页面中包含了大量的 ...

  10. 关于html控件和服务器控件摁回车后提交按钮的问题

    今天做项目用到,项目是一个洗车系统,刷卡后在焦点出自动触发回车键事件,如,一个文本框,把焦点放入,刷一下卡,文本框自动获取卡号,同时触发回车事件,(就像银行办卡一样),发现刷卡后页面刷新后并没有执行按 ...