软件体系结构笔记2(用代码案例直观理解)

二、Call/Return Software Architecture Style(调用/返回风格)

1、主程序\子程序风格

主程序\子程序风格是一种非常经典的程序设计模式。它将一个程序分为两个主要部分:

  • 主程序(Main Program):
    • 负责程序的整体控制流程。
    • 调用各个子程序来完成具体的功能。
  • 子程序(Subroutine):
    • 完成特定的任务。
    • 被主程序调用,并可能返回结果。

这种结构使得程序模块化,易于理解和维护。

示例:学生成绩管理系统

这个例子模拟了一个简单的学生成绩管理系统,包含了多个子程序,分别负责不同的功能,例如:

  • 输入学生信息
  • 计算平均分
  • 查找最高分
  • 输出成绩单
def input_student_info():
    """输入学生信息"""
    students = []
    while True:
        name = input("请输入学生姓名(输入'q'退出):")
        if name.lower() == 'q':
            break
        score = float(input("请输入学生成绩:"))
        students.append((name, score))
    return students

def calculate_average(scores):
    """计算平均分"""
    if not scores:
        return 0
    return sum(scores) / len(scores)

def find_max_score(scores):
    """查找最高分"""
    if not scores:
        return None
    return max(scores)

def print_report(students):
    """输出成绩单"""
    print("学生成绩单:")
    for name, score in students:
        print(f"{name}: {score}")
    average = calculate_average([score for _, score in students])
    max_score = find_max_score([score for _, score in students])
    print(f"平均分:{average}")
    print(f"最高分:{max_score}")

def main():
    """主程序"""
    students = input_student_info()
    print_report(students)

if __name__ == "__main__":
    main()

这个例子展示了主程序/子程序风格的几个优点:

  • 代码可读性高: 每个函数都有明确的功能,代码结构清晰。
  • 可维护性强: 修改某个功能只需要修改对应的函数,不会影响其他部分。
  • 可扩展性好:
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值