zoukankan      html  css  js  c++  java
  • OO第四单元总结

    一、架构设计

    本单元后两次作业都只进行了增量开发,没有对前次内容进行修改,故只放第三次的UML图

    由于每次作业都在上一次作业的基础上进行增量开发,而没有对原架构进行修改,故仅上第三次作业的UML图。

    第一次作业:

    只有一个umlInteraction类,没有设计复杂的数据结构存储信息,也没有对uml图信息建模,而是只保存了所有类的父亲和对element进行了分类,对于所有查询都是现算。

    第二次作业:

    对所有状态图分别建图并保存,时序图现查

    第三次作业

    分别实现了每条规则检查,并把超出500行的部分放到了另一个类中

    二、架构设计及OO方法理解的演进

    第一单元

    前两次作业比较简单,第三次作业内容比较复杂,一开始我粗略的想采用表达式树的架构就直接动手,后来越写越乱,于是停下后比较详细的设计了架构、填充了细节并画了类图,最终比较顺利的完成了第三次作业

    第二单元

    初次接触多线程,先学习了生产者-消费者模式,用其完成了前两次作业,然后学习了工人模式,用其解决了第三次作业

    第三单元

    学习了契约式编程,作业主要是对契约式编程的实践,按照jml补充代码即可

    第四单元

    学习了有关uml图的知识,主要是类图、协作图、状态图三个理解架构的角度,图是对程序的抽象和可视化,学习了uml后对架构设计和理解帮助很大,比如现在看别人的blog只看的uml图就可以大致了解他的设计。因为到了烤漆,不能再像前几个单元一样全情投入OO作业中,我这个单元的oo完成的比较仓促。作业是实现uml解释器,可以感受到我们实现的规则奥妙重重,但是由于精力被牵扯也没什么心思琢磨,比较遗憾。

    三、测试理解与实践的演进

    因为经常压线作业,所以没有对我的工作做除了样例以外的测试,oo各单元bug不断。没有耕耘,没有收获

    四、我的课程收获

    主要的收获都已经呈现第二部分中了

    五、一些建议

    1. 建议取消第三单元博客配置工具链的内容,感觉没有意义。
    2. 建议第四单元在介绍关联、聚合比较迷惑的关系时能增加一下示例代码来辅助理解。
    3. 建议第四单元可以有一个对于输入内容的具体说明
    4. 建议对实验结果提供反馈

    六、线上学习的感受

    感觉和线上学习差别不大,就是交流机会更多需要自己去创造

  • 相关阅读:
    【转】利用Python将多个PDF合并为一个
    sudo配置教程
    tomcat查看并修改jvm大小
    jetty隐藏版本号教程
    weblogic为同一domain下的不同server添加不同参数
    Oracle使用expdp/impdp导出导入数据
    Windows设置.txt文件默认打开程序
    weblogic查看版本号教程
    Linux登录超时自动退出处理办法
    telnet强制中断登录
  • 原文地址:https://www.cnblogs.com/lllllllllllllllllllllllllllll/p/13162564.html
Copyright © 2011-2022 走看看