首页
学习
活动
专区
圈层
工具
发布

大话设计模式(带目录完整版)

本书通篇都是以情景对话的形式,用多个小故事或编程示例来组织讲解GOF(设计模式的经典名著——Design Patterns:Elements of Reusable Object-Oriented Software...Four,即四人组,简称GoF)总结的23个设计模式。...其中,第1、3、4、5章着重讲解了面向对象的意义、好处以及几个重要的设计原则;第2章,以及第6到第28章详细讲解了23个设计模式;第29章是对设计模式的全面总结,附录部分是通过一个例子的演变为初学者介绍了面向对象的基本概念...本书的特色是通过小菜与大鸟的趣味问答,在讲解程序的不断重构和演变过程中,把设计模式的学习门槛降低,让初学者可以更加容易地理解——为什么这样设计才是好的?是怎样想到这样设计的?...以达到不但授之以“鱼”,还授之以“渔”的目的。引导读者体会设计演变过程中蕴藏的了、智慧。 本书适合编程初学者或希望在面向对象编程上有所提高的开发人员阅读。

79820
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    tkinter带界面实现指定目录生成器

    很久没有更新文章了,今天更新一个自己写的小工具 因工作需要,需要将一些图片和表格导出后分开存放在相应的目录,之前一直是手工创建并进行压缩太累,后面就想办法用python中的tkinter实现一个带界面的小工具...,来解放自己生成目录的重复性工作。...可以实现的效果:根据当天日期自动到指定的目录中创建我们输入的数量的文件夹 使用的打包成exe文件的软件为:pyinstaller 先上一张效果图,有点丑,但是想要的功能基本都有了 ?...1 使用方法: 路径是自己设定好的,然后输入要生成的文件夹数量,然后再点相应的按钮就可以了 下面放上源码,有需要的可以自己进行修改: # -*- coding: utf-8 -*- # @Time...# 此处原本绑定的是数量文件框输入后按enter键自动生成目录的功能,但由于一次生成2个,所以就取消了,可以根据自己实际情况来调整 # def gen_button_click_enter(self

    1.1K10

    ionic3使用带图标带事件的toast

    ionic3自带的ToastController创建的toast比较简单,不支持图标,且点击toast时是没有事件回调的…… 这个时候,如果想扩展这些功能,一是修改源码,二是自己实现,然而这两种方法都比较麻烦...,比较好的解决方案是利用现有的开源代码,搜索ionic的相关组件寥寥无几,这个时候转换下思路,搜索angular的相关组件会发现有几个,经过比较后觉得ngx-toastr较为适合。...image.png ionic3集成使用ngx-toastr 根据Github上的文档说明,进行如下步骤: 安装组件 npm install ngx-toastr --save npm install...它其实对应着第一步安装的@angular/animations,动画的导入早期也是import * from ‘@angular/animations‘,只是后期把animations抽离后就变成了import...; } } 防止污染ionic自带的toast样式 ngx-toastr的样式刚好和ionic都用到了.toast-container的class,所以会影响,此时,把toastr.min.css中的

    4K20

    带字幕的Youtube

    在观看Youtube视频的时候,你会不会像我一样,觉得没有字幕很不爽? 现在有人就制作了一个网站YouTube Subtitle Editor,专门为Youtube加字幕。...你可以先看一段动画片《蜘蛛人》的主题歌,体验一下效果。 所有的字幕都是由用户自行添加的。整个过程同普通的添加字幕过程没有区别,都需要输入文字和同步时间轴等步骤,但是全部都在网上完成。...具体做法可以参考它的说明页。所有步骤都很符合直觉,只有两点需要注意: 1)每段字幕最长不超过2行,最多不超过40个字符。...2)同步时间轴的时候,只需要在每句话开始和结束之间,一直按住字母"T"即可。 今天早上,我为它添加了第一段中文字幕,强悍的《新华保险公司增员操》,欢迎观赏。

    4.4K20

    shell删除指定目录下的svn目录

    内网的话,为了方便,我一般就是上传内网时,把项目里的文件夹直接上传至内网服务器,然后使用shell命令再删除.svn目录和Thumbs.db文件。...直接在终端下使用VI进行编辑,然后输入shell程序,保存、退出,需要使用时直接调用sh xxx.sh ‘目录路径’即可。...上述代码 $1为调用shell时传入的参数 $0为shell文件名 -z $1  则是判断是否有参数的输入 -d $1  判断传入的参数是否为一个目录,检测是否为文件,使用-f find 指令 后跟着...需要查找的目录     -type 需要查找的类型,常用一般为 –d –f (还有其它参数,可以使用--help查看)     -name 使用文件名对查找的文件/文件夹进行过滤     xargs 是将前面获取前面查找的所有参数...,因为后述参数的传递有上限 rm 删除文件及目录      -f 强制删除      -r 递归处理     -v 显示执行的过程 (其它参数可以使用--help进行查看)

    3.2K50

    目录的操作

    Linux 目录操作的常见指令 pwd:查看当前工作目录 cd:切换工作目录 符号 说明 . 当前目录 .....上一级目录 ~ 当前用户的家目录 - 表示上次切换之前的目录 / 表示根目录 1.使用cd时,不指定目标地址,会切换到家目录 2.凡是以/开头的目录都是绝对目录 3.凡是以.或..开头的目录都是相当目录...l:查看指定目录的内容,不指定目录时查看当前工作目录 选项 说明 -a 显示所有文件,包括隐藏文件 -l 列表显示,详细信息,查看文件的可操作权限(rwe) -h 人性化的显示大小,如:K/M/G...包括纯文本文件(ASCII);二进制文件(binary);数据格式的文件(data);各种压缩文件等。 d 目录文件。 l 链接文件。类似于Windows里的快捷方式。 c 字符设备文件。...这类文件通常用在网络数据连接,最常在 /var/run目录中看到这种文件类型。 p 管道文件。它主要的目的是,解决多个程序同时存取一个文件所造成的错误。 alias:给命令起别名。

    49920

    带预测区间的图表

    今天跟大家分享带预测区间的图表图表制作技巧! 当图表中的数据带有预测区间,也就是包含未来预测的还未发生的业绩数据时,按照惯常的做法,无法很好地区分已发生和未发生的分别。...下面还是看一下我肯要强调的带预测区间图表到底呈现出什么样子: ?...上图中的最后四个月份是预测(假设是)月份,为了与之前的月份(已经发生的)在图表中相互区别,使用虚线点加以区分,现在看起来就会很清楚,一眼就可以看出最后四个月份的预测特征。...下面是要制作上述图表所用到的数据结构: ? 其中第二列(data)是真实的业务数据,第三列(dummy)、第四列(dorecast)是做为辅助数据用来模拟预测月份、以及预测区间的。...首先选中前三列数据插入带数据点的折线图。 ? ? 然后打开设置数据系列格式菜单,将dummy序列的数据点设置为内置、圆形、大小为6、填充白色、数据点线条色为橘黄(可自选),并将折线线条填充为橘黄色。

    1.5K50

    发送带附件的邮件

    下面的代码实现了带附件的邮件发送: ? 代码运行结果: ? 成功发送带附件的邮件,如图所示: ? 通过MIMEMultipart()模块构造的带附件的邮件。...二、查找最新的测试报告 已经知道了如何通过Python编写发邮件程序,但是想和自动化测试项目结合还需要解决一个问题,因为测试报告的名称是根据当前时间生成的,所以如何找到最新生成的测试报告是实现发邮件功能的关键...首先定义测试报告的目录result_dir,os.listdir()可以获取目录下的所有文件及文件夹。利用sort()方法对目录下的文件及文件夹按时间重新排序。...list[-1]取到的就是最新生成的文件或文件夹。程序运行结果如下: ? 三、总结 学习代码,一定要认真细致,一个细小的疏忽就会导致错误。...而且别人写的代码也不一定就对,要根据自己的实际情况,抱着肯吃苦肯钻研,热爱技术的心态,坚持去做,才会越来越进步。

    1.3K10

    rewrite带参数的URL

    介绍 nginx的重写主要功能是实现url的重定向,将原请求进行重定向到另一个url中,我们可以通过curl命令来看返回码和location字段来验证是否成功。...301 表示永久重定向,它会告诉客户端这个地址已经永久的重定向到location所指向的地址中去了,这时会返回一个301返回码 302 表示临时重定向。...下面看下如何将带有参数的url进行重定向。...vtype=subs`类似于这种的会出现这种情况,只要是要跳转的url中带有参数的会出现请求失败的情况,不加参数会正常,所以我们需要把参数去掉。...下面来分析下: link后面的url中如果有参数会请求失败 请求失败的url去掉参数后面的内容重新请求是可以的 需要使用正则把参数前的给匹配出来 例如这里我们使用Linux的pcretest来测试: 使用之前的匹配方式

    9.1K10
    领券