面向对象与结构化方法:软件工程的视角

0 下载量 29 浏览量 更新于2024-08-30 收藏 169KB PDF 举报
"本文作者分享了自己对面向对象方法和结构化方法的理解,以及这两种方法在实际软件工程中的应用。作者认为,无论是面向对象还是结构化范型,都是贯穿整个软件开发过程的,并且先进方法能更好地支持技术管理。文中提到,使用统一建模语言(UML)和面向对象的思想需要一个规范的软件工程环境,同时改进软件过程也是关键。作者以过去在小型软件公司的经验为例,指出在不规范的环境中,人们容易直接从需求转向编码,而忽视了UML在设计和维护中的价值。文章还讨论了结构化方法和面向对象方法在功能需求获取过程中的差异,认为在实际工作中,两种方法的界限并不明显,都需要进行模块划分。最后,作者通过对比自己和同事在设计数据库管理应用时的思路,展示了两种方法在J2EE技术背景下的相似结果。" 本文的核心知识点包括: 1. **面向对象方法与结构化方法**:面向对象方法强调对象的封装、继承和多态,而结构化方法则注重模块化和流程控制。两者在软件开发的各个阶段都有应用,且各有优势。 2. **软件工程环境的重要性**:良好的软件工程环境有助于应用如UML这样的建模工具,规范的流程可以推动面向对象方法的实施。 3. **UML的作用**:UML是一种可视化建模语言,用于表示面向对象的设计,包括用例图、类图、序列图等,它在需求分析和系统设计中起到关键作用,尤其是对维护人员。 4. **功能需求获取**:两种方法在获取系统功能需求时可能看似相似,都需进行模块划分,但面向对象更关注对象和它们之间的关系,结构化方法更侧重于功能分解。 5. **技术选择的影响**:在J2EE等纯面向对象的技术背景下,即使采用不同的分析方法,最终的设计结果可能相近,但这并不意味着方法选择无足轻重。 6. **软件设计过程**:面向对象设计通常涉及识别对象,映射到数据库表,然后定义对象行为,而结构化设计可能先设计数据结构,再定义模块接口。 7. **开发实践中的融合**:在实际开发中,两种方法的界限可能会模糊,尤其是在编程时,即使使用面向对象语言,也可能体现出结构化设计的元素。 8. **团队协作与沟通**:作者通过与同事的合作,展示了不同方法如何并存和互补,强调了团队成员间理解和协调的重要性。 面向对象方法和结构化方法各有其适用场景和优势,开发者应根据项目需求和团队环境灵活选择和结合使用。规范的软件工程流程和有效的建模工具能够提升开发效率和软件质量。