1、思考一个即将开展的项目。项目是什么并不重要;它可能是一个有趣的业余项目,也可能是一份数百万美元的合同项目。它不必是一个完整的应用程序,也可以只是一个子系统。进行一次基本的面向对象分析。确定需求和相互作用的对象。勾勒出该系统最高抽象级别的类图。确定主要的相互作用对象。确定次要的支持对象。详细描述一些最有趣对象的属性和方法。对不同对象采用不同的抽象级别。寻找可以使用继承或组合的地方。寻找应该避免使用继承的地方。
面向对象分析步骤
对于即将开展的项目,进行面向对象分析的步骤如下:
-
明确项目需求和其中相互作用的对象
确定项目的核心功能和各个对象之间的关系。 -
绘制该系统最高抽象级别的类图
从整体角度描述系统结构,展现关键类及其关联关系。 -
找出主要的相互作用对象和次要的支持对象
区分核心业务对象与辅助性对象,明确其职责。 -
详细阐述部分有趣对象的属性和方法
对关键对象进行深入分析,定义其数据和行为。 -
对不同对象设置不同抽象级别
根据对象的重要性与复杂度,设定合适的抽象层次。 -
留意可使用继承或组合之处,以及应避免使用继承的情况
合理运用面向对象的设计原则,提升代码复用性与可维护性。
2、访问搜索引擎,查找关于统一建模语言(UML)的教程,选择适合自己学习方式的教程,然后为自己确定的对象绘制一些类图或序列图,感受UML语言,不必刻意记忆语法。
操作步骤
- 使用搜索引擎查找 UML 教程
- 根据自己确定的对象绘制类图或序列图
- 感受 UML 语言,无需刻意记忆语法
3、编写面向对象的 Python 代码。可以创建一些对象并为其添加属性或方法。若有 Python 项目,可将其划分为几个模块甚至包,并使用相关语法;若没有项目,启动一个新的项目,不要求完成,只需勾勒出一些基本的设计部分,不一定要完全实现所有功能,使用 print(“this method will do something”) 来确定整体设计即可。
以下是一个简单的 Python 面向对象代码示例,创建一个表示书籍的类:
class Book:
def __init__(self, title, author):
self.title = title
self.author = author
def get_info(self):
print(f"这本书的书名是 {self.title},作者是 {self.author}")
def update_title(self, new_title):
print("这个方法将更新书籍的标题")
self.title = new_title
# 创建一个 Book 对象
book = Book("Python 编程入门", "张三")
# 调用方法
book.get_info()
book.update_title("新的 Python 编程入门")
book.get_info()
这个示例创建了一个 Book 类,包含属性 title 和 author ,以及方法 get_info 和 update_title 。 update_title 方法使用 print 语句来表示其功能,符合只需勾勒基本设计部分的要求。
4、如果你想不出点子,试试编写一个待办事项应用程序。它的设计与笔记本应用程序类似,但有额外的日期管理方法。这个应用程序可以记录你每天想做的事情,并允许你将它们标记为已完成。请简述编写该待办事项应用程序的好处。
- 编写该待办事项应用程序的好处是,当想不出点子时可以作为尝试方向
- 其设计类似笔记本应用程序但有额外日期管理方法
- 能记录每日待办事项并标记完成
- 方便对日常事务进行管理
5、现在,尝试设计一个更大的项目。它不必真正实现任何功能,但要确保你尝试使用包和模块导入语法。在不同的模块中添加一些函数,并尝试从其他模块和包中导入它们。使用相对导入和绝对导入。观察它们的区别,并尝试设想在哪些场景下你会希望使用它们中的每一种。
可按照以下步骤操作:
首先设计一个大项目,在项目里不同模块添加函数。
对于包和模块导入,Python 3 中有 绝对导入 和 相对导入 两种方式。
绝对导入
绝对导入需指定要导入的模块、函数或类的完整路径,例如要访问 products 模块里的 Product 类,可使用:
import ecommerce.products
然后通过:

最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



