《大话设计模式》读后感

Crossref查重报告全解析:从颜色标记到降重技巧 本文全面解析Crossref查重报告的使用技巧,从颜色标记解读到高效降重方法。详细介绍了2024年新版报告的变化、重复率计算原理,并提供了6个实战降重技巧,帮助作者应对不同期刊的重复率标准。特别推荐了学术写作工具和术语验证平台,提升论文原创性。 阅读详情

       第一次读《大话设计模式》,是在刚接触C#的时候。疲累于大部头的官方教材中时,无意间翻开了这本生动有趣的书,甚是眼前一亮。由于当时C#基础薄弱,只是把它当小说来看,如饥似渴,饶有滋味,一口气看到凌晨四点,被不知觉间流逝的时间吓傻了。

        而今重读,更多的是想重温设计模式的应用场景和感受小菜对编程的热忱。一边做笔记一边看书,初步弄懂UML类图,效率果然高很多。感动也颇多。师傅领进门,修行看个人呀。

        对程序员来说,精彩的代码是如何想出来的,要比看到精彩的代码更加令人期待。正如做一个足球运动员(软件设计编程者),能够亲自上场比赛,并且最终成为球星(软件架构师),会远比做一个助威呐喊的球迷(软件使用者&代码崇拜者)更来得激动人心。

        那么如何才能想出精彩的代码呢?历练使人成长,经验迸发灵感。然而所有的灵感都应有其因,那就是万变不离其宗的六大面向对象的设计原则,即单一职责原则、开放--封闭原则、依赖倒转原则、里氏代换原则、迪米特法则和合成--聚合复用原则。但这六大原则仅仅是一系列的“口号”,真正付诸实施还需要有详尽的指导方法,于是23种设计模式应运而生。归根到底,就是通过重构改善既有代码,使代码的耦合度降低,最终实现易维护、易扩展、易复用和灵活性好的编程设计,得到精彩的代码。

        编程是一门技术,更是一门艺术。只懂编程技术的程序员是代码工人,被称为码农;然而编程绝不仅仅指编程技术的熟练掌握,而应指站在一个更高的层次去欣赏程序代码、软件设计、架构,完成从码农到架构师的蜕变。因此我们需要学习设计模式。设计模式是软件行业的经验总结,因此具有更广泛的适应性,不管使用什么编程语言,也不管遇到什么业务类型,设计模式都可以自由地“侵入”。

        深知设计模式应该从大量的实战经验中来,若没有大量立即付诸实践的场景是不能说理解设计模式。实战中理解设计模式将是我的最终的奋斗目标。在入门伊始,初期目标是对设计模式有一个初步的了解。

        写这篇文章的主要目的,是为了记录我此时的学习状态和心得,以便日后回顾。同时也培养边看书边做笔记的好习惯。下列的Story均为《大话设计模式》中的实践场景。

        下面切入正题:(6种设计原则&23种设计模式)

一.六种设计原则(核心:强内聚,松耦合)

    1.单一职责原则

         Story:手机功能齐全,但一在关键时刻就“萎”掉;

         Concept:就一类而言,应该只有一个引起它变化的原因,体现了类的职责分离。

         Tips:如mvc架构,实现逻辑和界面的分离。

    2.开放--封闭原则

         Story:考研&找工作两手抓,香港澳门一国两制;

         Concept:是所有面向对象原则的核心。软件实体应该是可扩展,而不可修改的。即对扩展是开放的,而对修改是封闭的。

         Tips:应该仅对程序中呈现出频繁变化的那些部分做出抽象,拒绝不成熟的抽象和抽象本身一样重要。

    3.依赖倒转原则

         Story:修电脑门槛低,因为PC电脑的主板、CPU和内存等针对接口设计,而不是针对实现设计,耦合程度低,依赖性弱,易维修;而收音机过多强耦合开发,难排查,难维修;

         Concept:高层模块不应该依赖低层模块,两者都应该依赖其抽象;抽象不应该依赖细节,细节应该依赖抽

【LVGL】学习笔记--(3)界面切换以及显示优化 界面切换和帧率优化 阅读详情

相关推荐

移植 lwip,在 windows 内核构建一个 TCPIP 协议栈

移植 lwip,在 windows 内核构建一个 TCPIP 协议栈 亲,当你点开看这篇文章,就说明你知道我想要干什么事情,或者说,你知道在 Windows 的内核种绕开它的网络协议,再独立构建一个网络协议栈的意义。如果你要问我有 windows 系统的网络协议栈不用,移植 lwip 有什么意义,那么你可以关闭链接走人了,因为这篇文章不适合你,它不是讲 lwip 移植原理的。 经常关注我的博客的朋...

oRbIt 的专栏 3526

分享选书原则,推荐几本书(附书评)

分享一下我选技术书的原则(很多大家可能都知道,我只是抛砖引玉),有其他好的建议,我们可以讨论。 [b]1.jolt获奖书籍[/b] jolt又称为震撼大奖,号称计算机界的诺贝尔奖,虽然评选出来的结果不完全客观(看过几本感觉很痛苦的获奖书,可能翻译的不好,也可能本人水平有限),但多数是值得一读的。每年都会评选出几本计算机领域不同方向的书。 [b]2.O'Reilly出版社...

技术积累 559

多岗位自动考勤管理系统excel表格模板.zip

多岗位自动考勤管理系统excel表格模板

读《大话设计模式》有感

读《大话设计模式》有感前言正文 前言 为响应 征文|@程序员,你读过的书,藏着自己的命运,特别写了这篇博客。也顺便给小伙伴们安利一本好书。 本博客主要是想向大家推荐一本设计模式的入门书:《大话设计模式》-程杰著 本博客的故事内容纯属虚构,希望大家不要介意。 正文 读一本好书,就像是和许多高尚的人谈话。 关于设计模式的话题,博主曾经向许多高尚的人取过经。他们都非常厉害,是这个领域的专家,和他们...

Andy's Blog 739

大话设计模式-----随着学习的进度陆续更新----阿冬读后感!!!!

在学习Java和Android的过程中,顺带着接触到了UML和设计模式相关的内容,再后来查找了些资料才发现:设计模式的魅力原来如此的大、如此的实用。。说句心里话,对于Java的学习有一段时间了,但是对于OO(面向对象)的思想还是停留在表面,不是很深,后来知道了设计模式的概念后,在实验室师哥师姐的建议下,在网上买了《大话设计模式》这本书,现在只是简单的看了第一章----简单工厂模式;还有后边的---

阿冬专栏 774

大话设计模式读后感

因为工作原因,转java,所以抽了本比较易懂的设计模式入门书籍,确实简单易懂,但是需要实践,另外读书真是需要前后链接最后,以一个最合适的速度读完最好,虽然是抽时间来读,但由于中间的耽搁,所以导致连续性不好而对学习效果打了折扣,希望自己不断总结学习的教训更好的学习技术。

u012855875的专栏 513

大话设计模式读后感---策略模式

大话设计模式读后感—策略模式 策略模式是一种定义一系列算法的技巧,每一个算法完成的都是相同工作,都是一个独立的类,继承了相同的抽象类,减少了各种算法类与使用算法类的耦合。 Strategy类是抽象父类, Context是实现多个算法类的类 ConcreteStrategyA是具体的算法类A ConcreteStrategyB是具体的算法类B ConcreteStrategyC是具体的算法类C //Strategy类是抽象父类 public abstract class Strategy { //算法

qq_35228318的博客 278

大话设计模式读后感之代理模式(JAVA)

如果你交给某人一个程序,你将折磨他一整天,如果你教某人如何编写程序,你将折磨他一辈子。 最近学习了设计模式后,发现自己JAVA基础不够扎实,回头开始看《Thinking in java》,吐槽一下。。。文章的翻译好僵硬。。这书真的是推荐给初学者的么。 一、依据故事我所设计的代理模式。 故事:李四请张三帮忙以他的名义把东西送给娇娇。 代理模式的定义:给某一个对象提供一个代理,并由代理对象控制

qq_16882073的博客 397

大话设计模式之装饰模式读后感

引言:让我们重温经典,致敬经典 装饰模式:动态的给一个对象添加一些额外的职能,就增加功能来说,装饰模式比生成子类更加的灵活 UML图: 总结:装饰模式是为已有功能动态的添加更多功能的一种方式,把每个要装饰的功能放在一个单独的类里面,并让这个类去包装它所要装饰的对象,每个装饰类只需要关注自己要实现的功能,不去关注如何被添加到对象链中去。因此在执行特殊行为时,客户端就可以在运行时根...

weixin_30437481的博客 167

大话设计模式读后感之工厂模式

一、面向对象思维(OOP) 何为面向对象,我举个例子:在北宋前,人们每当要复印新东西,都需要从新雕刻。当活字印刷术出现后,就省事多了。 活字印刷术作为对象具有属性和方法 1、封装:用的人不需要会雕刻只要认字就行了(便维护)。 2、继承:如果有缺少的字,只需要增加(可扩展)。 3、多态:可以应付各种印刷问题(可复用)。 那么我们使用活字印刷术不就是面向对象了么。 二、简单工厂模式 按

qq_16882073的博客 323

混蛋的面试题——《大话设计模式读后感

【公司面试题】 “请用C++、Java、C#或VB.NET 任意一种面向对象语言实现一个计算器控制台程序,要求输入两个数和运算符号,得到结果。 【小菜的第二个答案】 class Program { static void Main(string[] args) { try { Console.Write("请

9904

大话设计模式读后感之面向对象设计基础

面向对象设计基础: 1、类与实例 什么是对象? 对象是一个自包含的实体,用一组可识别的特性和行为来标识 什么是类? 就是具有相同属性和功能的抽象的类的集合 什么是实例? 一个真实的对象 2、构造方法 构造方法又叫构造函数,就是对类进行初始化。构造方法与类同名,无返回值,没有void 只需要new 就行,如果定义的类没有定义构造方法,系统会默认生成一个无参的构造方法 3、方法重载 方法重载提供...

七夜的博客 299

大话设计模式之简单工厂读后感

引言:让我们重温经典,致敬经典 简单工厂模式:根据调用端传参来有选择的实例化目标对象。 UML类图: 我们知道简单工厂就是为我们生成我们需要的对象。 举个栗子: 我们在舞台看表演的时候,一场场表演下来,我们可以总结个流程,舞台 表演1 ,表演2,表演3 。。。 结束。抽像为舞台 表演 结束。其实啊我们可以抽象为程序,有一个客户端,调用表演者的show方法,执行结束。关键不同...

weixin_30364147的博客 93

大话设计模式读后感之装饰模式

愿天下有情人终成兄弟! 一、装饰模式(Decorator) 动态地给一个对象添加一个额外的职责,就增加功能来说,装饰模式比子类更为灵活。 简单装饰模式 Component类/** * Created with Intellij IDEA. * User : ybh * Created on 2017/8/4. * Description : * Component 是定义一个对象

qq_16882073的博客 537

大话设计模式读后感之策略模式

一、策略模式 策略模式定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法独立于使用它的客户而独立变化。 优点: 1、恰当使用继承可以把公共的代码转移到父类里面,从而避免重复的代码,算法的增加变得容易 2、减少了条件判断语句。 3、可以动态改变算法策略。 缺点 1、必须将算法都暴露给使用者 2、会造成很多的策略类。  解决方案:加上工厂方法模式。

qq_16882073的博客 425

大话设计模式》—— 读后感 (7)为别人做嫁衣——代理模式

代理模式 为其他对象提供一种代理以控制对这个

shuciqi的专栏 1041

大话设计模式第五章读后感

话说面向对象开发有三大原则,单一职责原则,开放-封闭原则,依赖倒转原则。什么是单一职责原则,对一个类来说,或者对一个函数来说,应该仅有一个能引起它变化的原因。也就是说,每个函数只做一件事情。 在我的理解里,用面向函数式开发的思路来说,就是一个函数不能改变全局变量,而只是运算,返回结果。什么是开发-封闭原则, 就是函数的扩展是开发的,对函数的修改是封闭的。需求一定会变化,但我们不能预测其变化...

weixin_34290352的博客 155
凳子君
博客等级 码龄13年 0粉丝 1原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值