《代码中的软件工程》学习总结/心得体会 110

cclTODO 2023-07-11 13:46:17

通过学习《代码中的软件工程》课程,我获得了广泛的软件工程知识和实践经验,对软件开发的各个方面有了更深入的理解。课程覆盖了软件开发的工具、方法、模型、设计和质量等多个方面,帮助我建立起系统化的软件开发思维和能力。在本文中,我将总结我的学习心得,展示我在这门课程中的收获和成长。

首先,在课程中讲解了常用的软件开发工具,如VS Code、Git和正则表达式。通过学习和实践,我掌握了在VS Code中使用Git进行版本控制和协作开发的方法,以及正则表达式在文本处理中的应用。这些工具不仅提高了我的开发效率,还改善了我的代码管理和调试能力。特别是Git作为版本控制工具,我学会了如何创建分支、合并代码和解决冲突,下一步我将学习如何在应用在团队协作。同时,通过学习正则表达式,我可以更灵活地进行字符串匹配和处理,提高了我的文本处理能力。

其次,课程强调了编写高质量代码的重要性,并介绍了许多实用的编码方法和设计原则。

例如,模块化方法让我学会将复杂的软件系统分解为独立的模块,提高了代码的可维护性和可扩展性。本地化外部接口的方法。在软件开发中,许多应用程序需要与外部接口进行交互,例如调用第三方API、连接数据库或与其他系统进行通信。为了确保应用程序与外部接口的正常运行,需要进行本地化外部接口。此外,回调函数的概念让我了解到一种灵活的调用方式,通过将函数作为参数传递,实现了解耦和代码重用。此外,课程还讲解了代码的风格和规范、可复用和可重入函数的设计、线程安全等编写高质量代码的原则和技巧。这些方法和技巧对于提高代码的质量、效率和可维护性具有重要意义。

其中,我印象深刻的是,对性能优先策略的考量。性能优先策略在软件开发中是常见的一种选择,旨在追求代码的高效执行和系统的响应速度。然而,对于性能优先策略,我们也需要进行一些反思和权衡。性能优先策略带来的隐藏代价包括:

  • 编写代码的速度增加:为了追求性能,可能需要使用更复杂的算法和数据结构,编写代码的过程可能会更加复杂和耗时。
  • 测试代码的成本增加:由于性能优先策略可能引入更多的复杂性和边界条件,测试代码的编写和执行成本可能会增加。
  • 理解代码的困难增加:性能优先的策略可能导致代码的可读性和可理解性降低,使得其他团队成员更难理解和维护代码。
  • 修改代码的成本增加:性能优先的代码通常更加面向机器,对代码进行修改和扩展可能更加困难和耗时。

第三,我学习了软件概念结构的复杂性及其对软件开发带来的挑战。工程专家们经过长时间的研究,发现没有一种万能的解决方法,即没有所谓的“银弹”可以完全解决软件开发中的所有问题。软件概念结构的复杂性是软件危机的根本原因之一,解决这一问题需要采用系统化的方法,而不仅仅是凭借个别的技术手段。

课程介绍了软件开发过程中的需求分析和设计阶段。通过学习UML建模语言,我了解了用例建模、类图、时序图等多种建模方法,可以更好地理解和表达软件系统的需求和结构。这些建模方法帮助我从更宏观的角度把握软件开发过程,避免了过于关注细节而忽视整体架构的情况。课程还讲解了不同的开发模型,其中瀑布模型和敏捷开发是其中的代表。瀑布模型是传统的开发模型,按照线性顺序执行不同的开发阶段,如需求分析、设计、编码、测试和部署。而敏捷开发则强调迭代、协作和快速响应变化的原则。这两种模型各有优劣,我们需要根据具体的项目特点和需求来选择适合的开发模型。在课程中,我还对软件工程中的架构模式有了更深入的了解。例如,MVC架构模式通过分离模型、视图和控制器,提供了一种结构化的设计方法,增强了代码的可维护性和可测试性。我还学习了微服务架构的概念和优势,了解了如何将复杂的软件系统划分为独立的服务,提高了系统的可扩展性和灵活性。这些架构模式为我在实际项目中进行系统设计和优化提供了指导。

最后,课程还介绍了软件管理和项目管理的方法。我了解了PSP、TSP、CMM/CMMI、敏捷开发和DevOps等管理技术和方法,这些方法对于提高软件开发过程的效率和质量具有重要作用。通过学习这些管理方法,我对软件开发的全过程和生命周期有了更深入的认识,帮助我更好地理解和应用软件工程的最佳实践。,增强了我在软件项目管理方面的能力。

学习《代码中的软件工程》课程,除了具体的知识和技能,课程还培养了我对软件工程的系统思维和综合能力。我学会了分析和解决问题的方法,理解了软件开发过程中的各个环节和相互关系。我不仅学到了丰富的软件工程知识和实践技能,还培养了系统思维和团队合作能力。我学会了通过使用工具和方法来提高开发效率和代码质量,更好地理解和应用软件开发的整个流程。我也明白了软件工程在现代社会中的重要性和挑战,将继续深入学习和研究软件工程领域的最新发展,不断提升自己的技能和能力。


学号110 
参考资料《代码中的软件工程》

 

...全文
127 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

567

社区成员

发帖
与我相关
我的任务
社区描述
软件工程教学新范式,强化专项技能训练+基于项目的学习PBL。Git仓库:https://gitee.com/mengning997/se
软件工程 高校
社区管理员
  • 码农孟宁
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧