新南威尔士大学本科面向对象设计课程COMP2511旨在向学生介绍设计灵活、可重用和可维护软件的基本原则。学生可以接触到面向对象的编程范例,并探索OOP如何试图解决好的软件设计问题,同时学习其他范例,如函数式范例。学生还将探索软件编写和测试中的基本设计模式及其在软件架构中的作用,并将这些解决方案应用到理论和现实世界的问题中。对于正在学习这门课的同学来说,提前了解课程重点是非常有必要的。这样不仅能有效进行课前预习,还能为考试提供复习框架。以下内容就是这门课的重点摘要。
一、重点内容摘要
1、Java;面向对象范例
2、封装;继承和多态;抽象类和接口;Domain建模;契约式设计
3、异常;泛型和集合;JUnit测试;设计原则
4、重构;功能范式;设计模式;策略模式;状态模式
5、企业软件工程;观察者模式;重构;复合模式;测试设计
6、生成模式;单例模式;异步设计;泛型编程;修饰模式
7、事件驱动和异步设计;迭代器模式;模板模式;适配器模式;生成器模式
8、访问者模式;工程风险;高级类型理论;设计模式案例研究
9、微服务架构
二、预期学习成果
1、了解如何创建和维护设计良好的系统;
2、了解不同的设计范例和方法,及其背景和应用;
3、理解并应用面向对象设计的原理来解决问题;
4、理解并应用广泛使用的设计模式来创建可扩展的设计;
5、开发从零开始创建中等规模系统的技能,以及作为软件开发生命周期的一部分在现有系统上工作的技能;
6、使用企业编程语言和IDE;
7、探索软件设计和工程中的人为因素,例如模糊性、未知性和权衡。
希望以上新南威尔士大学本科面向对象设计课程COMP2511重点内容摘要对同学的学习有帮助,同时也希望同学能够早日达成预期学习成果。