122
社区成员
发帖
与我相关
我的任务
分享| 这个作业属于哪个课程 | 2302软件工程 |
|---|---|
| 这个作业要求在哪里 | 软件工程实践总结&个人技术博客 |
| 这个作业的目标 | 完成对软件工程实践课程的总结、个人技术的总结 |
| 其他参考文献 | 《构建之法》、CSDN |
A1:
在经过了个人项目、结对编程项目和团队开发项目以后
我简略形成了自己的对于一个优秀程序员的简单要求
通常能达到这些要求的程序员,就是好的:
- 个人项目:
- 遇到不会的问题,懂得自主学习,查阅资料;
- 能够有内发的动力催促自己不断推进进度;
- 团队项目:
- 肯沟通,肯学习,能和项目组员和产品经理沟通报备,达到信息一致,当对产品有不明确时,不闭门造车,而是仔细确定需求;
- 不拖延自己的进度,在有限的时间里能够发挥自己的才能和高效率;
- 做好自己那部分工作,不要太插手别人的工作;
- 通用标准:
- 懂得去运用代码规范(无论是个人的还是团队的),形成高内聚低耦合的开发习惯 (减少返工);
- 肯不断学习新知识,强化自己解决问题的能力;
- 懂得什么时间该休息,什么时间该工作;
- 懂得给自己按照任务的重要性和紧迫性来把大任务分解成小任务;
在有了一系列项目开发经验以后,我认为能够做到以上要求的程序员,即是优秀的程序员。(仅限程序员)
Q2.|3.1 对于一名工程师而言,究竟应该是更”专“一点好,还是更”广“一点好呢?
A2:
对于以前的思考,现在的我更加明确了我的想法:
- 工程师在团队里项目的方向不同,有的人负责精细的工作,比如算法岗,有的人负责统筹的岗位,比如产品经理;
- 所以回答也是很明显了,你在的职位,需要你广,那你就广吧,职位需要你专,那你就专吧。
Q3.|1.1 程序员是否有必要为满足小部分人的需求去做软件,或者为软件添加某些功能?
A3:
回答与之前的不同。
- 是否要满足小部分的需求,取决于该项目在市场上的定位。
- 像是公众使用的软件项目,总有一些需求是小部分的人的需求,因为其项目的特殊性,而要去满足,去添加功能,例如医疗服务软件,银行软件等,需要针对老年人或者视障人士的大字号或者黑色调版本;
- 像是追求盈利的软件项目,对于不能获得很多利润的需求,就没必要花费太多成本去实现。
A4:
回答与之前不同。
- 顾客其实是知道他们想要什么的。
- 其实顾客们总是知道他们想要什么,只不过需要产品经理负责循循善诱,将其导出。
- 经验丰富的产品经理会使用各种模型方法(诸如原型需求模型等),诱导顾客们表达出他们的真实需求。
A5:
回答与之前的大致相当
- 知识传递: 更有经验的程序员可以向初学者传授知识和最佳实践,帮助他们快速成长
- 错误减少: 观察员可以实时审查代码,这有助于及早发现错误和问题,从而减少后期调试的时间。
- 代码质量提升: 两个头脑总比一个头脑强。即使一方经验较少,不同视角也可能帮助发现问题,从而提高代码质量。
- 学习与指导: 对于经验较少的一方来说,结对编程是学习的好机会,可以从更有经验的搭档那里获得即时的指导和反馈。
- 团队协作: 结对编程增强了团队成员之间的沟通和协作,有助于建立团队精神和信任。
- 压力分担: 当一个人感到压力或困惑时,另一个人可以提供帮助,分担工作负担。
- 创新思维: 不同的经验和知识背景可以激发新的思考方式和创新解决方案。
| 目标 | 掌握程度(百分制) | 解释 |
|---|---|---|
| 目标1:理解软件工程师的职业道德规范和实践要求,了解国情社情民情,理解软件产品对社会、健康文化等影响,树立积极向上的软件开发理念。 | 96分 | 我在开发软件的时候,比较理解软件工程师的职业道德规范和实践要求,会按照符合当代社会价值观的方式,去开发传递积极向上正能量的软件。 |
| 目标2:掌握需求分析的全过程,能辨别客户表述的多样化要求,熟练使用需求表达工具,能够规范、准确地表达客户的需求,构建需求分析模型。 | 90分 | 我在团队项目中,很好地做到与项目经理合作一起调查使用NABCD方法讨论分析用户需求,通过和UI开发人员以及项目开发人员的沟通,达到表达用户需求,建立需求分析模型的成果。 |
| 目标3:掌握软件开发的全过程,遵循体系结构设计方法和基本设计原则,通过正式的技术评审,完成从体系结构设计模型、数据设计模型和构件级设计模型,形成面向高效可靠的服务组件设计方案或软件系统设计方案。 | 85分 | 在团队项目中,我主要还是遵循团队中协商规定的代码编写规范,基本能遵循着用况图、数据库设计文档、前后端接口文档,面向流程体系结构来进行设计。 |
| 目标4:能够执行从组件到软件系统的技术评测,具备设计模型的评判能力,具有创新设计意识,能够优选设计方案。 | 80分 | 在团队项目中,我能做到基本的设计模型评判,选取较好的设计方案,或者去改正队友的设计方案,基本具有创新设计意识。 |
| 目标5:遵循软件开发各阶段文档标准,采用规范的表达,掌握需求规格说明书、系统设计说明书、系统测试报告等文档撰写方法,具备与业界同行交流能力。 | 90分 | 在团队项目的开发过程中,我都是采用需求规格说明书、系统设计说明书、数据库设计说明书等文档来攥写方法,能够有效与同行交流。 |
| 目标6:具有良好的团队意识和合作技能,能够与其他成员开展有效的沟通和协作;能够组织、协调或指挥团队开展工作。 | 95分 | 在团队中,我不仅负责开发后端云函数,还负责一小部分的前端样式,除此之外我可以充当团队内项目经理的副手,帮助经理组织协调好整个团队的节奏和工作。 |
| 目标7:能够辨别具体软件项目管理中涉及的构成要素,掌握软件规模和工作量的估算方法,能够选择合适的工具规划软件进度并对项目管理过程进行配置,具备初步的管理复杂软件工程项目的能力。 | 70分 | 在这一目标上,我只能做到比较基础的估算,由于没有经验,因此基本上只能做比较宽泛的时间安排。在学习的过程中,我初步学会使用Git管理项目。我还在逐步体会管理复杂软件项目的流程。 |
概述:
- 在编写微信小程序后端云函数的时候,基本上是要调用数据库的;
- 但是对于高范式的数据库设计,有的时候需要用到二到三个表连接查询,这时候就要仔细思考如何运用微信云函数的多表连接查询技术;
- 除此之外,该篇技术博客还将介绍几个云函数使用技巧;
非常感谢林老师、三位助教、还有结对编程开发的伙伴、团队项目开发的七位伙伴们,本门课程的学习,使我受益匪浅。这些收获,必将活用于我今后的工作学习生活中。
Mon Jun 03 2024 00:57:55 GMT+0800.(at FZU)