readme

Java面向对象程序设计

项目概要

本项目用于学习和训练Java语言面向对象程序设计知识和技能。本项目包括20个小项目,由浅入深地逐步练习Java语言面向对象的各个特性以及使用多种设计模式,构建高效的、可扩展的实战项目。在本系列项目中,将会练习类和对象的创建、继承特性、多态特性、接口的设计、创建个性化标注、使用函数式编程等特性。在实现的过程中,还会使用工厂模式建造者模式单例模式适配器模式组合模式策略模式状态模式享元模式订阅者模式责任链模式代理模式装饰模式中介者模式迭代器模式对象池模式空对象模式等16种设计模式,开发出逻辑清晰、扩展性好的工程项目。

本项目的应用背景为开发一个小水滴校园管理系统。该系统的主要功能围绕着学生在校园中的生活展开,使用场景和主题包括:学生、课程、教授的数据建模;课程注册、课程信息读取、课程查询、答疑、完成实验报告、租用实验设备等日常学习生活中常常发生的事情。项目的全景,包括项目结构、内容分布、训练的知识点等如下图所示。

图一 项目全景图

图一 项目全景图。

在本项目全部完成之后,学员能够开发出一个包含11个包、67个源代码文件的中型项目。项目完成后的文件与目录结构如下所示。

图二 项目目录全景图

图二 项目目录全景图。

在开始本项目之前,小水滴建议学员先学习Java编程语言的基本概念设计模式Maven工程管理工具的内容。

因为本系列项目包括20个子项目,它们前后相连。小水滴建议从第一个项目"创建类和对象"开始,逐步完成。项目的全部内容可在小水滴提供的项目环境中运行。项目环境支持项目编译、项目运行和项目测试。

本系列实战项目包括

  1. 创建类和对象
  2. 继承
  3. 创建对象
  4. 多态
  5. 学生和课程管理
  6. 接口(一)
  7. 接口(二)
  8. 迭代器Iterator
  9. 课程查询
  10. 高级课程查询(一)
  11. 高级课程查询(二)
  12. 查找优秀学生
  13. 模拟学年结束
  14. 答疑(一)
  15. 答疑(二)
  16. 答疑(三)
  17. 租用实验设备
  18. 完成实验报告(一)
  19. 完成实验报告(二)
  20. 完成实验报告(三)
Copyright  2019 Little Waterdrop, LLC. All Rights Reserved.