yqj2065的博客

每天进步一点点...

同学们写学习笔记——认识IoC、DI和DIP

【2018.8.3】我准备了一个Chat,介绍如下: 面向对象设计/OOD领域充满混乱。当我们建立 OOD 的完整的逻辑体系时,需要澄清一些错误认识。特别是依赖倒置原则/DIP、控制反转/IoC 和依赖注入/DI 搅合在一起,成为“那些年搞不懂的高深术语”,本活动的出发点,旨在解释这些高深术语,...

2018-05-25 14:13:46

阅读数:658

评论数:12

实验5:复合函数

通过设计复合函数,引入桥接模式。这里以一般性的数学例子,y = f(x),其中 f 表示中x到y的映射。 -------------------------- 1.映射f 映射方式多种多样,如 f(x) = x+1 f(x)= x *x f(x) = (x+1)* (x+1) 因此,映射...

2016-12-18 07:10:24

阅读数:1292

评论数:0

实验2 行为参数化

本实验通过输出0-x之间符合特定条件的数,引入行为参数、高阶函数、闭包(closure)等概念,并就此展开对函数模块的扩展性的讨论。 注:上机实验前,我删除了本文章中需要你编写等一些代码。考试前,也不会添加进来。 求解问题:编写函数solve(int x),输出0-x之间 3的倍数而且含5的数...

2016-11-17 15:13:38

阅读数:2798

评论数:0

实验1:框架设计者

通过对排序算法的测试程序,引入单一职责原则、针对接口编程/抽象依赖原则、框架(分层设计、控制反转)、策略模式等原则和概念。 实验1.框架设计者  SortorTest->BubbleSort。客户依赖具体的服务BubbleSort,地球人都知道这不好。 SortorTe...

2014-10-03 18:06:46

阅读数:7066

评论数:2

Java设计模式-导航

最后编辑时间:2018.5.30 面向对象设计:原则、模式和应用(Java8) 本学期(2017-2018-2)围绕上机题展开。 学习环境   实验1.框架设计者 实验2.行为参数化 实验3.使用工具类God 实验4 求和方法的一般化 累积函数 实验5 复合函数-桥接模式 ...

2013-02-19 21:37:49

阅读数:6386

评论数:0

板砖拍Martin Fowler

今天yqj2065用板砖,拍Martin Fowler的《IoC容器和依赖注入模式》(Inversion of Control Containers and the Dependency Injection pattern[1] )。将我在其他博客中关于他这篇文章的吐槽,条理化。 1.Marti...

2018-08-11 11:55:09

阅读数:120

评论数:0

玩一下GitChat

不知道GitChat怎么玩,就博客同学们写学习笔记——认识IoC、DI和DIP发布一个Chat,看看玩不玩得好。 Chat如下: 认识 IoC、DI 和 DIP  殊路同归:Java、C 和 Scheme 如何实现回调机制 ...

2018-08-04 01:05:10

阅读数:132

评论数:0

拍到什么程度

写《OOD实战(Java8)》最难的地方,在于OOD领域存在大量错误认识,而我们又必须建立完整的逻辑体系。在讲解OOD的“正确”知识时,我就需要拍一下GoF、Robert C. Martin、Martin Fowler。对于GoF,我是心怀敬意的,但是Robert C. Martin的DIP,就要...

2018-07-13 08:56:25

阅读数:59

评论数:0

2017-2018-2 OOD试卷AB

一、 编程论述题:框架设计者1. 以SortTest和IntSort为例,说明什么是控制反转IoC(7分)2.什么是抽象依赖原则,它与应用程序、框架的关系(5分)3. 有一个接口如下 package util;@FunctionalInterface  public interface  Doub...

2018-06-26 20:00:17

阅读数:109

评论数:0

《OOD实战(Java8)》难产中

虽然yqj2065自认为不是一个很负责的老师,但是比起绝大多数老师,我算得上对得起我的学生。我讲课的内容,全世界独一无二。你们不会在任何其他人那里获得,除了我的博客中,零零散散。我也准备了大量例程、文字...但是将它们搞成一本书,还差得远。但是,我有更有趣的事情要做,身体也不宜久坐,写书挺无趣。最...

2018-06-24 22:39:07

阅读数:120

评论数:0

我是OO砖家

yqj2065是OO砖家.作为OO砖家,我都不屑拍国内的设计模式书籍的作者,都是垃圾书,有什么好拍的。要拍的是GoF、Robert C. Martin、Martin Fowler这些装逼的货。   并且,要求学生一起拍。拍得不好,我挂你!...

2018-06-10 21:40:34

阅读数:97

评论数:0

OOD/设计模式学习环境

OOD/设计模式的主要使用语言为Java,开发环境为BlueJ; 使用的其他语言环境: C语言:Pelles c   Scheme语言:DrRacket

2018-05-17 13:28:16

阅读数:98

评论数:0

什么是闭包?

2.1.4 柯里化和闭包 嵌套函数有什么重要作用呢?它涉及到几个术语:函数柯里化、闭包和偏应用。

2018-01-27 19:57:03

阅读数:208

评论数:0

编程类课程的问题

编程类课程的问题 从C语言教学开始,我们的教学体系就不是在讲授如何编程,而是在讲一门语言的语法,要求学生死记硬背一些乱七八糟的东西;这些传统,一直延续到C++和Java教学中。 很多人学完C,不知道什么是过程编程范式,接口与实现分离,成天 变量与常量——这两个概念为什么放在一起讲、printf...

2018-01-18 19:43:08

阅读数:147

评论数:0

考前提示

考试前请学生们注意: 1.本课程开卷,不限制你带任何书籍和资料。我不知道教务处有没有限制你们不得使用手机,但是我不建议你们用手机,因为你肯定不懂才到处查资料,而你查到的网上的资料,大多数我会认为是错误的。 2.不得大篇幅抄袭我的博客中的内容。你不会的,抄唐诗宋词比较好。抄我的,驴头不对马嘴,会让...

2018-01-14 23:42:23

阅读数:256

评论数:0

1.2 抛弃依赖倒置原则

1.1 抛弃依赖倒置原则 在应用程序设计和框架设计中,抽象依赖原则/ADP均有重要作用。在应用程序的编程中,可以把ADP视为一种规劝或忠告;而在框架设计中,依赖抽象类型则是条例和军规。 本节以对排序算法进行测试为例,说明ADP的重要作用。测试例程将有五个步骤的变化,其中涉及单一职责原则、针对接口编...

2017-12-29 21:55:10

阅读数:273

评论数:0

动态类型+面向对象 = shit

动态类型+面向对象 = shit 1.动态类型  动态类型语言,属于看起来方便,用后麻烦的东西,我不喜欢它们。除非不需要考虑软件工程场合——如作为脚本语言。 动态类型+高阶函数,使得Scheme定义的op非常强大,如同酒驾的司机,非常狂野。 (define (op a b how-op) ( ...

2017-12-26 18:30:54

阅读数:279

评论数:0

为什么人们说Python容易?

在讲OOD时,我用了C、Java和Scheme的例子,对语言我比较了解。 有学生说Python学习起来很容易。Python有动态类型、面向对象、lambda表达式,它会容易?

2017-12-24 12:16:59

阅读数:1430

评论数:1

实验3 累积函数

关键词: 实验4 求和方法的一般化 , 模板方法模式,通用函数,高阶函数

2017-12-24 10:06:56

阅读数:795

评论数:0

依赖丈母娘原则

依赖丈母娘原则

2017-07-09 23:23:32

阅读数:431

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭