面向对象设计与构造2022 (北京航空航天大学 - 计算机学院)

  • OO_Unit2_电梯难题

    原博客链接 电梯难题 这单元作业的主题是电车电梯难题,整体感觉还行,如果不去纠结最优,明白锁这个概念的话,实现难度还是挺低的。(感觉不如第一单元。。。。难度) 同步和锁 本次作业我没有使用lock(因为第一次作业用的synchronized,懒得改了).对于同步块的选择,我的想法如下 为何需要同步代
    青衫染墨   2022-04-27 11:58   0   44
  • OO第二单元博客

    OO第二单元博客 目录 OO第二单元博客 架构 第一次作业 第二次作业 第三次作业 UML协作图 同步块与锁 锁方法 锁代码块 调度器设计 测试与bug分析 bug分析 测试 心得体会 线程安全 层次化设计 架构 第一次作业 架构设计 架构中共有输入线程、调度器线程、电梯运行线程三个线程,采用双生产
    Doris_M   2022-04-27 11:33   0   40
  • 面向对象第二单元总结

    面向对象第二单元总结 fishlife 写在前面 ​ 终于结束了。。。 ​ 面向对象第二单元,算是比较平安地完成了三次作业,没出大锅。因为有了第一单元的锻炼,对面向对象有了更深一层的理解,虽然总的代码量比第一单元多,但是这次的代码编写和迭代相对而言比上一单元轻松了一些。当然这也得益于设计模式。但是由
    fishlife   2022-04-27 10:46   0   34
  • BUAA_OO_2022_Unit_2_Summary

    一、程序设计构架 第一次作业 需求简述: 模拟一个多线程实时电梯系统,各楼座有且仅有一台纵向电梯,处理已知起终点的同楼座乘客请求。 代码构架: |- Unit2:主类 |- InputHandler:输入线程 |- Controller:各楼座候乘表 |- Elevator:电梯线程 |- Outp
    ChorlingLau   2022-04-26 22:50   0   108
  • OO2022第二单元作业总结

    本文为OO2022第二单元总结。本次作业主要以电梯系统的设计为内容熟悉和熟练掌握线程方面的知识。主体思路上我才用了生产者消费者模式,在文章中分别阐述了三次作业中的主要思路,调度器设计与交互,同步代码块的设置与锁的选择。之后利用UML类图,与方法复杂度分析了本次作业架构的不完美之处,最后分享了自己在本次作业中关于层次化设计与线程安全的心得体会。如有错误,谢谢指正!
    Lei_YuYu   2022-04-26 21:52   0   27
  • 面向对象2022-第二单元作业总结

    面向对象2022-第二单元作业总结 第一次作业 本次作业是在单栋楼中设置一部电梯接送上下楼的乘客。 (1) 同步块设置&锁的选择 这次作业是多线程作业伊始,能否处理好锁与同步块之间的线程安全,让不同线程间可以共享数据并且保证安全,对多线程作业的发展具有重要意义。在对题干进行一番迅速却又不失严谨的推理
    早点明安   2022-04-26 21:21   0   57
  • BUAA_OO_2022第二单元总结

    1 概述 1.1 基本思想 让各个线程处于临界区的时间尽可能短,因此要让临界区操作尽可能简单,这样也有助于避免线程安全问题 电梯只负责乘客上下电梯与电梯的上下移动,电梯的控制工作交给调度器完成 在满足上述两个条件的前提下,代码实现要尽可能简单,即使有可能损失一些性能 注:该作业中没有使用UML类图与
    郭鸿宇   2022-04-26 17:20   0   111
  • 面向对象第一单元个人总结

    一、第一次作业 UML类图 第一次作业我依托训练的代码进行自己的构造,主要有三个部分:输入转换、表达式解析以及结果的计算与输出。其中,对于表达式的解析结果,我使用后缀表达式进行存储,以方便计算。此时,传入到最后一部分的就只有一串字符,满足低耦合的要求。整体上,使用training的语法分析模式,设计
    魔光、炫水   2022-03-26 15:52   0   24
  • OO第一单元总结

    一、作业分析 第一次作业 思路 采用训练所提供的框架,并且具体实现依照强生同学在讨论区发的帖子。先是采用lexer对我们的输入表达式进行读取,把他们都读取成为一个一个“因子”,包括各种运算因子和计算符号还有小括号之类的。 然后我们用parse类来对已经读取出来的一个一个“因子”来解析。具体解析方式是
    谷福胜   2022-03-26 15:52   0   25
  • BUAA OO 第一单元总结

    BUAA OO 第一次作业总结 第一次作业 任务介绍 第一次作业是简单的单变量多项式展开,括号嵌套最多一层,支持加,减,乘,乘方运算。 UML图与类结构 架构分析 整体程序分为三个部分,parser用于对输入进行解析同时建立表达式树,Expr和Factor作为实际维护数据的对象,Plus、Minus
    刘鸿睿SC   2022-03-26 15:49   0   44