读万卷书
行万里路
名师指路
自己去悟
一本书读一万遍
我们现在还处在第二个阶段,这个阶段需要我们能够尽可能多的去遍历技术,知识,这个过程中我们要付出时间成本,还有一些其他的成本,我们如何能获得最大收益呢?这需要我么在项目开发中时刻反思自己。
关于项目开发的一些反思,可以提高我们的开发效率,成为一个更加高贵的人。
目前的问题:
1、开发的时候不能准确预估开发时间
2、报告领导的时候时间较晚,难以及时解决问题
3、开发前没有画图,无法宏观把控进度
4、推拉代码的时间较长。
5、写代码的复用性不强
6、没有全局性思维,只想着解决眼前的事情,没有想未来会发生什么。
开发前
- 明确目的,开始结束时间,做到什么程度,任务的价值和意义(5w2h)
a. 以甘特图的形式展示出来,以番茄为单位,标好每个任务结束明确的时间点。 - 画图表示需求,和领导沟通一致以后再进行开发。
a. 原型图、流程图、类图
b. 使用审批的方式进行。 - 制定计划要考虑到可能遇到的问题和未知的风险,没有思路的情况下及时反馈。
a. 在流程图上体现可能出现风险的部分。
b. 开发过程中,与甘特图对应,与甘特图时间不符,就进行反馈,解决。 - 进行方案选型,筛选出一种最优的方案与领导沟通后进行实施
a. 先迅速出一版和领导沟通,然后根据问题,进行调整。
开发中
- 如果没有明确思路先去沟通请教。结合任务紧急情况,如果自己半小时不能解决就去寻求帮助。
- 每天推拉代码
a. 每日开发前,先拉取代码。保证自己的代码与test一致
b. 一个需求之间,各部分负责开发完毕进行代码合并,代码必须由需求负责人合。 - 考虑代码复用性的问题,符合阿里规约。
a. 组织大家学习阿里规约。
b. 组织大家进行阿里规约考试。
开发后
1、自测:对本次上线的功能进行测试,编写测试用例,根据测试用例进行本地自测。
2、测试环境:先对新功能进行测试,然后进行全流程测试。
3、生产环境:按照上线文档进行上线,并且进行全流程测试。
上线后
对开发中所有的东西,学习相关知识点,总结成博客,一个需求至少一篇(三天以内完成)。
update语句问题
1、以写通用的sql语句,例如使用if 语句等, 将重复性的内容可以复用。
nginx增加参数问题
1、要有多种方案,不局限于眼前的问题,目光放长远,思考现在想到的方案能不能应对更大的数据量或以后可能出现的同类问题。
2、考虑潜在的风险,未经允许不动生产环境。
一次性添加多条学生信息,删除其中一个,这多条都会一并删除
- 删除的时候,关注的是删除这件事,是面向过程的。
- 三条数据是三个不同的对象,每个对象应该负责自己的事情(例如,删除),自己负责自己删除的时候,应该使用唯一标识
- 如果只考虑面向过程,只关注了删除这个功能的实现,不考虑对其他对象影响。会造成数据混乱,产生的结果无法控制。
将平时的开发和所有事情都计算,纳入到考核中,
减分项
1、当天禅道报警次数最多的 。–0.1分
2、两次述职会之间报警总次数最多的。–0.5分
3、当天任务延期,未与领导沟通,领导未同意。–0.1分。
4、负责的功能出现线上问题bug 。–0.2分
加分项
1、需求整体按期上线 --0.1分。
2、 积极并成功解决线上问题 --0.2分
3、 两次述职会议之间没有报警 --0.5分
4、 协助解决问题,并且被协助人愿意支付分数
火炉设置
- 不遵守规范,直接停止开发
- 进行反思总结。1000字/h,2小时起
- 将总结交由马总审核,审核 通过后才能继续开发。
- 扣积分。百分之一。扣工资百分之一。
总结
ava项目开发是一个涉及多个步骤和技术的过程。以下是一个一般性的Java项目开发流程:
- 需求分析和设计阶段:
确定项目的需求和目标,了解用户的期望。
创建项目的详细设计文档,包括系统架构、模块划分、数据结构等。
2. 环境搭建阶段:
安装Java开发工具,如JDK(Java Development Kit)、IDE(集成开发环境)等。
配置开发环境,确保编译、调试和运行都能正常进行。
3. 编码阶段:
根据设计文档开始编写代码,实现项目的各个功能模块。
使用适当的设计模式和编码规范,确保代码的可读性和可维护性。
4. 单元测试阶段:
编写单元测试用例,针对项目中的每个功能单元进行测试。
使用测试框架(如JUnit)执行单元测试,确保代码的正确性。
5. 集成和系统测试阶段:
将各个功能模块整合在一起,进行集成测试,确保模块之间的协作正常。
进行系统测试,验证整个系统在各种情况下的表现。
6. 调优和优化阶段:
识别性能瓶颈,优化代码和数据库查询等,以提升系统的响应速度和效率。
7. 文档编写阶段:
撰写用户文档和开发者文档,包括安装说明、用户手册等。
8. 发布和部署阶段:
部署项目到生产环境,确保系统能够正常运行。
监控系统的运行情况,处理可能出现的问题。
9. 后续维护阶段:
持续监控系统,修复漏洞和问题,进行版本升级和功能扩展。
一些注意事项:
使用适当的版本控制工具,如Git,以便团队协作和代码管理。
遵循设计模式和编码规范,以提高代码质量和可维护性。
使用适当的开发框架和库,加速开发过程并提高效率。
定期备份和版本控制代码,以避免意外数据丢失。
考虑安全性,避免常见的安全漏洞,如SQL注入、跨站脚本等。
关注用户体验,设计界面友好且易于使用的应用程序。
不断学习和跟进Java生态系统中的新技术和最佳实践。
最后,Java项目开发是一个需要不断学习和实践的过程,随着你的经验积累,你会越来越熟练地应对各种开发挑战。
版本管理和协作:
使用版本控制系统(如Git)来管理代码版本,支持团队协作,记录变更历史。
确保团队成员遵循一致的代码提交流程和分支管理策略。
持续集成与持续交付:
设置持续集成(CI)流程,自动化构建、测试和部署,以确保代码的稳定性和可靠性。
考虑实施持续交付(CD)流程,将代码快速交付给生产环境。
代码质量和静态分析:
使用代码质量工具和静态分析工具来检查代码,识别潜在的问题和不良实践。
确保代码符合编码规范,减少维护成本和潜在的bug。
安全性和认证:
实施身份验证和授权机制,确保只有授权用户能够访问敏感数据和功能。
考虑数据加密、防范跨站脚本攻击(XSS)、跨站请求伪造(CSRF)等安全问题。
性能优化:
使用性能测试工具来模拟负载,确保系统在高并发情况下仍能保持稳定。
优化数据库查询,缓存数据,减少响应时间。
国际化和本地化:
考虑多语言支持,使应用程序适应不同语言和文化的用户。
提供本地化选项,根据用户的地理位置提供不同的内容和显示。
监控和日志:
集成监控工具,实时监测系统的运行状态,及时发现问题并采取行动。
记录详细的日志信息,有助于追踪问题、分析异常和进行调试。
持续学习和改进:
持续学习新的Java技术、框架和最佳实践,以不断改进开发流程和项目质量。
定期进行代码审查和团队讨论,分享经验和教训,推动持续改进。
综上所述,Java项目开发涵盖了许多不同的方面,从代码编写到部署和维护都需要细致的规划和实施。通过遵循最佳实践,不断学习和适应变化,你可以建立出高质量、稳定可靠的Java应用程序。