大话设计模式总结——为什么要学设计模式?

2024-06-10 03:58

本文主要是介绍大话设计模式总结——为什么要学设计模式?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

引言:

 从开始大话到现在,断断续续的总结,停停走走之间貌似我已经欠下了很多的账……,出来混早晚都要还的啊!

从一开始学习大话,自己想的是,因为要在机房收费系统重构的时候用到设计模式,所以会有这个内容的学习。认识比较的肤浅。也有过一篇宏观的大话总结《设计模式——宏观总结》,里面有谈及过设计模式的用处,但是说句实话,那只是从书上看到的,真正的体会自己还是很少的。当然自己在学习每一个模式的过程中基本是遵循着一个模板而来。后续的一些博客,没有及时地更新。这也是自己的一个拖拉的表现!总之,慢慢改吧!还好自己一直是坚持在学习,每天进步一点点

现在,算是一个学完了大话的大总结。我不由地再次反思下列的一些问题:

学习大话设计模式是为了什么?

  1 更加深刻的理解和认识面向对象的思维方法

  2 为接下来的机房重构做一个准备

  3 为以后走向专业化之路奠定基础

在这个过程中自己收获了什么?

1 基础知识积累:

《C#基础知识积累——反射》

《深复制VS浅复制》

《.net基础积累——Hashtable 类中默认函数Hashnable》

2 个别模式的总结

《大话设计模式——单例模式》

《大话设计模式——模板方法模式》

《大话设计模式——适配器模式》

3 思想方法进步:

  学习生活化:在大话学习的过程中,更加深刻意识到所有的知识都可以在生活中找到原型的这句话。于是我在学习过程中不断进行类比,比喻。发现一些知识和概念的理解,其实真的很简单,很快就掌握了本质。

  生活学习化:自己在吃饭,洗衣服,逛超市,买烤肉串,等等这些生活场景中,就会不自觉的想到设计模式!进行相互联系和瞎想!哈哈,尽管理解不是很到位,但是这个过程挺有意思。

4 还有什么疑惑和不解?

 以下这些具体的问题,将会在后续的博客更新中进行总结和继续学习

 匿名方法?匿名函数?委托?什么时候用静态的变量呢?建造者模式中遇到问题:picturebox 对象的重绘怎么实现???不解,为何无法在from load事件中写。

  关于学习的“度”的掌握:应该说在半个月之前就已经完成了设计模式的学习,但是自己一直给自己找各种借口来不完成项目,一直等着总结,想着总结完所有的模式,非把每个模式都贴到博客才肯罢休。突然发现,自己才第一次接触。真的没有这个必要。接着往下走就好!而且,其实每个模式都学习过了,也总结了,只是不太仔细而已。相信自己也还没有用过,根本也不可能真正理解设计模式的精妙之处。所以,放到后面的机房中去实践吧!

对于自己的学习方法和习惯有什么新的认识和改进?

不足之处:

  再看站在巨人的肩膀上:走得这么慢,是因为我对于一些前人的话总是半信半疑。有着自己的一套想法。想要站在巨人的肩膀上,同时还想自己独辟蹊径上大道!在很多的地方花费了比较对的时间,对于很多的拓展的知识,了解比较多。但是却没有照顾到自己的进度和其他的计划。一些难点的概念,总是会花上很多的精力和时间去琢磨,前提是自己绝对的不占用休息时间,这是我的原则。一旦问题研究通了,马上奖励自己一天半天的,额,呵呵,所以慢是有一定道理存在滴……希望师傅看到这里不要吐血A

  自己的思维方式:易创新,也易失败。这是米老师曾经对我说过的一句话。确实,我脑子很容易产生一些新奇的想法。比如:机房管理小组的成立、给11期做一个专用系统、英语小组的成立……也算是自己做的一些大胆的尝试吧。不知道能不能让米老师在好人好事儿上给我记上一个小红星星捏?哈哈,至于后面还会有什么,这个我也不太清楚!呵呵,敬请期待吧!

  回顾自己的笔记,乱,不堪回首。怎么办?改变吧!要想于亮师哥学习。偶然之间看到师哥的OneNote笔记,那叫一个让人震惊啊!哎!马上交流的走起!

收获:(学习方法)

 1、整体性学习法首先宏观掌握,然后联系生活找关系作比喻,对比相似知识的细节找不同和相同,最后编织知识网,来一个宏观大总结。

  应用:视频三遍学习法、大话总结的模板

 2、笔记学习法:

  解决当前的,记下不懂的。一些具体的名词,知识。遇到一个查一个,查一个消灭一个。不懂的,先记下。在后续学习过程中去回顾,适当时候更新到博客。

   

这篇关于大话设计模式总结——为什么要学设计模式?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1047148

相关文章

Java反转字符串的五种方法总结

《Java反转字符串的五种方法总结》:本文主要介绍五种在Java中反转字符串的方法,包括使用StringBuilder的reverse()方法、字符数组、自定义StringBuilder方法、直接... 目录前言方法一:使用StringBuilder的reverse()方法方法二:使用字符数组方法三:使用自

Python依赖库的几种离线安装方法总结

《Python依赖库的几种离线安装方法总结》:本文主要介绍如何在Python中使用pip工具进行依赖库的安装和管理,包括如何导出和导入依赖包列表、如何下载和安装单个或多个库包及其依赖,以及如何指定... 目录前言一、如何copy一个python环境二、如何下载一个包及其依赖并安装三、如何导出requirem

Rust格式化输出方式总结

《Rust格式化输出方式总结》Rust提供了强大的格式化输出功能,通过std::fmt模块和相关的宏来实现,主要的输出宏包括println!和format!,它们支持多种格式化占位符,如{}、{:?}... 目录Rust格式化输出方式基本的格式化输出格式化占位符Format 特性总结Rust格式化输出方式

Python中连接不同数据库的方法总结

《Python中连接不同数据库的方法总结》在数据驱动的现代应用开发中,Python凭借其丰富的库和强大的生态系统,成为连接各种数据库的理想编程语言,下面我们就来看看如何使用Python实现连接常用的几... 目录一、连接mysql数据库二、连接PostgreSQL数据库三、连接SQLite数据库四、连接Mo

Git提交代码详细流程及问题总结

《Git提交代码详细流程及问题总结》:本文主要介绍Git的三大分区,分别是工作区、暂存区和版本库,并详细描述了提交、推送、拉取代码和合并分支的流程,文中通过代码介绍的非常详解,需要的朋友可以参考下... 目录1.git 三大分区2.Git提交、推送、拉取代码、合并分支详细流程3.问题总结4.git push

Kubernetes常用命令大全近期总结

《Kubernetes常用命令大全近期总结》Kubernetes是用于大规模部署和管理这些容器的开源软件-在希腊语中,这个词还有“舵手”或“飞行员”的意思,使用Kubernetes(有时被称为“... 目录前言Kubernetes 的工作原理为什么要使用 Kubernetes?Kubernetes常用命令总

Python中实现进度条的多种方法总结

《Python中实现进度条的多种方法总结》在Python编程中,进度条是一个非常有用的功能,它能让用户直观地了解任务的进度,提升用户体验,本文将介绍几种在Python中实现进度条的常用方法,并通过代码... 目录一、简单的打印方式二、使用tqdm库三、使用alive-progress库四、使用progres

Android数据库Room的实际使用过程总结

《Android数据库Room的实际使用过程总结》这篇文章主要给大家介绍了关于Android数据库Room的实际使用过程,详细介绍了如何创建实体类、数据访问对象(DAO)和数据库抽象类,需要的朋友可以... 目录前言一、Room的基本使用1.项目配置2.创建实体类(Entity)3.创建数据访问对象(DAO

Java向kettle8.0传递参数的方式总结

《Java向kettle8.0传递参数的方式总结》介绍了如何在Kettle中传递参数到转换和作业中,包括设置全局properties、使用TransMeta和JobMeta的parameterValu... 目录1.传递参数到转换中2.传递参数到作业中总结1.传递参数到转换中1.1. 通过设置Trans的

C# Task Cancellation使用总结

《C#TaskCancellation使用总结》本文主要介绍了在使用CancellationTokenSource取消任务时的行为,以及如何使用Task的ContinueWith方法来处理任务的延... 目录C# Task Cancellation总结1、调用cancellationTokenSource.