美文网首页橙小张的Java后端学习之路
关于项目开发中的一些思考

关于项目开发中的一些思考

作者: 橙小张 | 来源:发表于2018-04-15 21:40 被阅读20次

往前走时,记得抬头看路

在新入职的这段时间,刚开始维护老项目,之后开发新项目,对于项目开发上的一些问题和项目维护中的一些问题有一些感悟,分享出来。

老项目

可能大部分人都有维护过老项目的一些经验,一个项目经历了项目初期开发项目前期工期紧张项目中期人员离职,文档交接不全的一些过程,之后的人维护起来简直想要XXX,公司有个老项目,据说有百万行代码,之前的老员工基本离职了,这个项目至今无人敢改,我之前维护的项目代码量虽说没这么多,但是经过4年的运行,中间交替了好几拨人,代码中@author也是有10个以上,在这中间,也是积累了一些经验

老项目存在的问题

  • 代码不规范
  • 日志打印格式不规范
  • 魔法值频现
  • 方法名称(类名称)和具体想要做的事情不一致
  • Maven依赖混乱
  • 逻辑嵌套太深
  • 异常处理不规范(直接捕获Throwable)
  • 方法过长(大的方法超过了500行)
  • 重复代码

维护老项目的一些好处

  • 可以快速了解公司(部门)业务
  • 可以学习到一些好的代码风格
  • 有机会解决一些系统性能上的问题
  • 尝试去修改一些坏味道的代码

维护老项目的一些思考

在维护老项目的过程中,看别人写的代码其实是可以看到自己的影子的,自己在维护项目的过程中遇到的一些问题会逼迫自己在之后写代码的过程中避免这些问题,例如在哪些地方该打印日志,哪些地方可以不用打印如何处理异常怎么写出更好的代码

新项目

新项目更多的是对于前期系统设计,需求沟通以及开发人员之间的协作,在这次项目中有一些经验也想分享出来

  • 合理的规划前期设计的时间(不好太赶,做好设计很重要)
  • 在做技术方案时确保一些问题:
    • 业务的合理性和必要性
    • 业务确认后确保自己理解了业务
  • 做好技术方案后和技术Leader以及上下游小伙伴以及产品经理展开讨论,分析自己设计的不足以及一些边界问题的考虑
  • 不要太相信自己的记忆力,不管是会议中的正式讨论还是一个小问题的确认,最好是记录邮件或者自己笔记有地方记录起来
  • 从现在开始观察和记录自己开发的时间(方便之后的开发时间量化)
  • 二八原则,为重要的工作保障时间和效率
  • 分析项目中的风险点,并做好应对方案
  • 每天给自己做一个TodoList,下班前将List清空(早上先做重要和困难的事情)
  • 后端开发在着手开发之前做好功能List,细化到每个API接口
  • 如果前期项目比较着急,和产品讨论出核心功能(不做会影响主流程的)
  • 对于接口交互的地方多考虑点
  • 做好单元测试

准则

墨菲定律:

  1. 任何事情都没有表面看起来那么简单
  2. 所有的事都会比你预期的时间长
  3. 可能出错的事情总会出错
  4. 如果你担心某种情况发生,那么它就更有可能发生

相关文章

  • 关于项目开发中的一些思考

    往前走时,记得抬头看路 在新入职的这段时间,刚开始维护老项目,之后开发新项目,对于项目开发上的一些问题和项目维护中...

  • 对产品需求文档的思考

    对PRD的一些思考与理解 PRD是什么 PRD,也就是产品需求文档 ,是用于在项目开发过程中,由产品撰写,开发...

  • vue 中如何修改element ui源码,自定义时间线Time

    前言: 项目开发中,总要一些需求不能完全使用element ui源框架,这次就是公司项目有个关于时间线的需求,使用...

  • 关于后台管理系统前端项目的思考

    关于后台管理系统前端项目的思考 开发后台管理系统是大部分前端开发人员接触过的项目,如何更好的进行项目的搭建、组件的...

  • 关于项目需求蔓延的一些思考

    最近在做项目过程中,关于项目需求蔓延有一些新的思考。 作为项目经理,肯定不希望需求蔓延,一来容易造成项目延期,二来...

  • Keras 源码阅读(1):Minimal-Keras

    关于我对阅读开源项目代码的一些思考,可以参考《如何阅读开源项目代码和我的一些思考》。 环境准备 2.2.x 和 2...

  • 对 Android 开发的一点思考

    17 年毕业开始工作到现在已快两个年头,在实际项目开发的过程中,我对 Android 开发有了一些自己的思考。本着...

  • 测试开发与TDD、BDD

    开发测试一直都是项目开发过程中的一个重要环节,甚至在一些开发模式下能够起到主导作用。 关于敏捷开发 敏捷开发是一种...

  • 关于项目管理的一些思考

    项目管理的背景 随着团队逐渐壮大,不同业务线上的产品迭代难免会出现一些项目管理的问题,主要表现在: 1.目标不一致...

  • 关于项目工程的一些思考

    上周及之前出现的一些问题 发版的线上包出现Debug模式开启。线上版本出现重大事故,误以为是开发版。 1. 发版的...

网友评论

    本文标题:关于项目开发中的一些思考

    本文链接:https://www.haomeiwen.com/subject/pvujkftx.html