- 博客(23)
- 收藏
- 关注
原创 设计模式笔记——策略模式
背景在软件构建过程中,某些对象使用的算法可能多种多样,常常会改变如果将这些算法都编码到对象中,将会使对象变得异常复杂,而且有使用支持不适用的算法也是一个性能负担问题如何在运行时更具需要透明地改变对象地算法,将算法和对象本身解耦,从而避免上述问题模式定义定义一系列算法,把他们封装起来,并且使他们可以相互替换,该模式使得算法可以独立于它的客户程序而变化。代码enum TaxBase{ CN_tax, US_tax, DE_tax};class Sa
2021-05-22 09:54:15
138
原创 设计模式笔记——模板模式
应用背景在软件构建中,对于某一项任务,常常有着稳定的整体操作结构,但是各个子步骤之间却有很多改变的需求,或者由于固有的原因(比如框架与应用之间的关系)而不发和任务的整体结构同时实现那么如何在确定稳定操作结构的前提下,来灵活应对各个子步骤或者晚期实现需求。模式定义定义一个操作中的算法的骨架(稳定),而讲一些步骤延迟变化到子类中,模板模式可以使子类不改变(复用)一个算法的结构即可重定义该算法的某些特定步骤代码没有使用模板模式的代码如下class Template{public:
2021-05-21 13:09:00
134
原创 设计模式笔记——桥模式
* 单一职责模式:* 在软件组件的设计中,如果责任的划分不清楚* 使用继承得到的结果往往是随着需求的变化,子类急剧膨胀* 同时充斥着重复代码,这时候的关键是划清责任* 典型模式:装饰器模式和桥模式* 桥模式的使用动机:* 由于某些固有的实现逻辑,使得他们具有两个变化的维度或者多个变化的维度* 桥模式可以轻松地沿着多个方向变化,而不引入额外地复杂度namespace 桥模式{ public class Image { } publi...
2021-05-21 10:41:14
155
原创 设计模式学习笔记——设计模式原则
注意:目前设计模式的笔记都是看李建忠老师的设计模式写的,老师讲的非常好,大家可以去看他的视频。面向对象的作用:抵御变化从宏观层而言,面向对象的方法可以将变化带来的影响减少最小从微观层而言,面向对象的方法可以使各个类各司其职面向对象的设计原则1.依赖倒置原则DIP: 高层(稳定)的模块不能依赖于底层(变化)的模块,两者应当都依赖于抽象(稳定) 抽象(稳定)的模块不应该依赖于实现细节(变化),实现细节应当依赖于抽象(稳定)2.开放封闭原则 对扩展开放,对更改封闭 ...
2021-05-21 10:34:45
114
原创 设计模式学习笔记——观察者模式
观察者模式使用场景:在软件构造中,需要为某些对象建立一种“通知依赖关系”,一个对象的状态如果发生变化,所有的依赖对象都将得到通知。如果这种依赖关系过于紧密,将导致软件不能很好的抵抗变化。而使用面向对象的方法可以将这种依赖关系弱化,并且形成一种稳定的依赖关系,从而实现软件体系结果的松耦合。观察者模式定义:定义对象间的一种一对多的依赖关系,以便当一个对象的状态发生改变时,所有依赖与她的对象都得到通知并且自动更新现在假设我们需要完成一个功能:用进度条显示游戏加载了多少。我们有以下的函数.
2021-05-21 10:28:53
209
1
原创 机器学习种类
1.机器学习定义机器学习是一门可以让编程计算机从数据中学习的计算机科学。 机器学习研究如何让计算机不需要明确的程序也能具备学习能力。 一个计算机程序在完成任务T后,获得经验E,其表现效果为P,如果任务T的性能表现,也就是用以衡量的P,随着E的增加而增加,可以称其为学习。2.机器学习的作用能够自动的学习一些规则,而不需要人为的给程序设置,有利于系统的维护。 对于未知的算法问题,可以自动寻找解决方案。 可以揭示一些人类未曾了解的性质。3.机器学习的种类 按照是否在人类监督下学习可以...
2021-05-19 16:49:55
875
原创 设计模式学习笔记——接口隔离模式
接口隔离模式1.接口隔离模式介绍在组件构造过程中,某些接口之间直接依赖往往会带来很多问题,甚至无法实现。采用添加一层间接的稳定的结构来隔离本来互相紧密关联的接口是一种常见的解决方案。2.Façade门面模式2.1使用背景 组件中的客户和组件中各种复杂的子系统有了过多的耦合,随着外部客户程序和各子系统的演化,这种过多的耦合将面临很多变化的挑战。2.2问题如何简化外部客户程序和系统间的交互接口?呼和将外部客户程序的演化与内部子程序的变化之间的依赖相互解耦。2.3解决方...
2021-05-17 14:22:58
195
原创 设计模式学习笔记——享元模式
使用场景 在软件系统采用存粹对象方案的问题在于大量细粒度的对象会很快充斥在系统中,从来带来很高的运行时代价——主要指内存需求方面的代价。比如说有有个类叫MyChar,其作用是每个字都有它的字体类型,那如果以上述的情况,假设有一百万字,就会有100万个字体,且这100万个字体实例很多都是重复的,因为不可能说每个字的字体不一样,就以你妈妈叫你回家吃饭为例,可能”妈妈“是宋体,”叫你回家“是黑体,”吃饭“是等线,在这种情况下9个字生成了9个字体实例,但是实际上只有三种类型,即分别是宋体、黑体、等线...
2021-05-15 10:28:44
110
原创 设计模式学习笔记——单件模式
对象性能模式介绍 面向对象可以较好的解决抽象问题,但是面向抽象相比于面向过程会有额外的开销,虽然这种开销在大多数情况下都可以忽略不计。但是在某些情况下,面向对象造成的开销必须谨慎处理。23种设计模式种关于对象性能的设计模式有Singlton模式和Flyweight模式。单件模式(Singlton)使用场景 在程序中,有一些类只能有一个实例才能保证逻辑的正确性以及良好的效率,比如说数据库类,只能存在一个正在连接的实例,如果存在多个正在连接的实例则会导致数据库连接异常。或者在w...
2021-05-14 20:39:14
150
原创 李宏毅深度学习2020版作业一:PM2.5预测
这个作业是关于线性回归的作业,其要求如下: 给定训练集train.csv,要求根据前9个小时的空气监测情况预测第10个小时的PM2.5含量。 训练集介绍: (1)、CSV文件,包含台湾丰原地区240天的气象观测资料(取每个月前20天的数据做训练集,12月X20天=240天,每月后10天数据用于测试,对学生不可见); (2)、每天的监测时间点为0时,1时......到23时,共24个时间节点; (3)、每天的检测指标包括CO、NO、PM2.5、PM10等气体浓度,是否降雨...
2021-04-28 15:57:06
1650
原创 手把手教你在python中安装Winio
第一步:安装pywinio(在管理员下) 第二部:安装数字证书 进入这个网站 https://github.com/vaptu/winio/tree/master/Binaries 下载这两个文件 把这两个文件放到python下的Lib/site-packages\wini...
2019-12-27 18:59:45
4062
1
原创 unity背包系统完整版
背包系统分三个层次 背包整体——背包网格——背包物品,其中物品是用代码实例化出来的。目录背包类using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEngine.UI;public class Bag : MonoBehaviour{ ...
2019-07-24 08:29:50
5963
3
原创 Unity背包拖拽功能的实现(UGUI)
背包拖拽功能实现基本上需要用到 IBeginDragHandler, IDragHandler, IEndDragHandler这三个类IBeginDragHandler 是在开始拖拽时使用 IDragHandler 是在拖拽的过程中使用IEndDragHandler 在拖拽结束的时候使用那么背包拖拽功能实现的基本思路是假设每个背包有一个网格和一...
2019-07-22 17:15:25
3412
原创 kali网络的配置
俗话说的好 万事开头难 最近开始学习了kali结果给了我当头棒喝 网络连接不上 这谁顶得住 但是还是得上 所以开始了漫长的查询路闲话不多说 lets do it第一步 虚拟机的网络设置 1 打开虚拟机编辑选项里面的虚拟网络编辑器.2点击右下角的更改设置 将桥接模式 改为桥接到你的网卡类型将网络适配器设置为桥接模式第二步 更改kali中的网络设置...
2019-07-17 22:36:55
791
原创 学生管理系统代码
本人刚上大二,没有学过面相对象编程,代码简陋,可扩展性差,不喜勿喷特别是在排序的时候,因为C语言没有多态,所以写了许多相似的代码。如果有什么方法可以减少这些代码量,还请各位在下面留言。/*系统需求开发 1.对用户的有效信息进行输入和排序 2.实现统计用户成绩的总分和平均分 3.能够查看单个用户的各个成绩模块分析和数据结构 typedef struct student { ...
2018-09-07 08:43:41
567
原创 200行的简易计算器(黑窗口)
// Project1.cpp: 定义控制台应用程序的入口点。///*表达式: 项目 项目“+”表达式 项目“-”表达式项目: 优先度 项目“*”优先级 项目“/”优先级 项目“%”优先级优先级: “(”表达式“)” 数字数字: double型 */#include "stdafx.h"#inc...
2018-09-03 11:44:58
353
原创 多线程爬取美图网照片
import requests,re,threadingfrom bs4 import BeautifulSoupdef getPicUrl1(url):#获得照片网站的链接 html=requests.get(url) html.encoding='GBK' html=html.text try: jpg=re.search(r'http://...
2018-06-05 12:05:18
499
原创 58同城爬取
#!/usr/bin/env python# -*- coding:utf-8 -*-# Time:2018/6/4"""第一步:获得网站 http://mas.58.com/job/?PGTID=0d100000-007f-77d5-31ab-9a3915d1f878&ClickID=2#&key=第二步:获得该主页下的所有招聘url,和 薪资 补助 名...
2018-06-05 12:01:55
971
原创 re threading socket笔记
"""#多进程1.1import threading#class myTherading(threading.Thread)#继承类?我不懂.....def test(p): print(p) ts=[]#在列表中必须要先定义才能再次使用for i in range(1,15): th=threading.Thread(target=test,args=`[i])#创建一个进程 ...
2018-05-31 16:08:37
233
原创 python通过网站主页面获得照片
怎么通过主页面的超链接来获取这个网站的照片呢?这里以23730为例子接下来我们分析一下编写的过程:第一步:在目录页面得到所有主页面的url第二步:把这个url放在列表中第三步:得到照片的url链接放到一个列表中第四步:得到照片的名字放到一个列表中第五步:将照片url的列表遍历并且发送request请求,写入文件。 并且文件的名字为照片名字所以定义4个函数:defget_content...
2018-05-26 11:52:55
245
原创 进一步的爬取小说
看出什么了?没错第一章和第二章的html相差1,但是第二章和第三章的html相差很多,第三章和第四章的也是相差很多这是最后一张的html网址,和第一章对比,发现两者相差1577770。如果直接用for i in range(15114818,166692588)的话,你就慢慢等着吧,中间也会出现异常。那么怎么办呢?我们可以从目录页面获得每一章的html易知,html在a标签中,那就读取这个a标签里...
2018-04-27 16:46:51
205
原创 python爬取小说详解
爬取的小说url为http://www.biquw.com/book/29142/第一步:geturl 解析url(用BeautifulSoup)start_url="http://www.biquw.com/book/29142/"url=start_url+str(11987333)+'.html'html=requests.get(url,timeout=15)soup=BeautifulS...
2018-04-21 11:21:51
555
转载 对豆瓣TOP250的爬虫
这是看书练习出来的,花了好久才弄出换行和排名。新手爬虫的第一条路import requestsimport osfrom bs4 import BeautifulSoupmain_url='https://movie.douban.com'url="https://movie.douban.com/top250?start="after="&filter="headers={'user-a...
2018-04-01 17:33:11
461
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人