主要观点总结
文章主要讨论了软件团队开发中代码质量的重要性以及如何提高团队成员能力。文章以一个具体项目为例,指出代码质量问题以及修复过程中遇到的困难,强调开发人员在初期就应注意代码质量,并遵循面向对象设计原则。同时,文章也提到了培养和提高研发团队成员能力的重要性,明确了技术路线下的细分方向,并强调了突破发展瓶颈的必要性。
关键观点总结
关键观点1: 代码质量问题
文章指出开发人员缺乏精益求精的精神,代码存在不必要的重复和难以理解的逻辑,使用了复杂的容器对象导致性能问题和代码可读性差的后果。同时提到修复bug时的困难,因为遗留代码使用了复杂的Map结构,涉及广泛公开的方法和类,改善需要花费大量时间和资源。
关键观点2: 代码重构的挑战
文章提到虽然认识到了代码编写的诸多问题,并想到了更符合OO原则的解决方案,但由于遗留代码使用复杂容器对象的类和方法非常多,且没有充分的单元测试,改善需要大量时间和资源,难以在短期内见效。
关键观点3: 团队成员能力培养的重要性
文章强调了培养和提高研发团队成员能力的重要性,包括明确职业目标、选择发展方向、提高自我突破能力、保持持续学习等。提出了技术人员在进入发展瓶颈期后需要寻找突破方向,否则能力将难以提升。
文章预览
EISaaS团队的开发人员无疑具备了快速实现软件功能的能力,但由于他们从一开始缺乏编写高质量代码的正确认识和严格训练,写出来的代码质量确实不敢恭维。 以下这段代码是当时一位开发人员的“杰作”: public Object load( String name) { Object obj = null ; Object objFromMap = map.get(name); if (objFromMap != null ) { obj = objFromMap; return obj; } else { Object objFromSpring = springFunctionLoader.load(name); if (objFromSpring != null ) { obj = objFromSpring; map.put(name, objFromSpring); return obj; } else { Object objFromReflect = reflectionFunctionLoader.load(name); if (objFromReflect != null ) { map.put(name, objFromReflect); obj = objFromReflect; return obj; } } } return null ; } load()
………………………………