- 博客(20)
- 收藏
- 关注
原创 Servlet程序开发
Servlet 程序开发一、Servlet概念及工作原理什么是Servlet?Servlet功能:Servlet运行需要Servlet容器:Servlet 工作流程:Servlet生命周期:Servlet使用单例模式,服务器重启之后Servlet才被销毁二、Servlet开发过程调用Servlet的两种方法:第一种方法:第二种方法:开发时如何应用:............
2022-06-02 23:12:12 1289
原创 8.原型模式
原型模式模式动机使用原型模式 克隆 出多个与原型对象一模一样的对象。模式定义一种对象创建型模式。用原型实例指定创建对象的种类,并通过原型创建新的对象。模式结构
2021-11-13 21:00:23 428
原创 7.建造者模式
建造者模式对象创建型模式模式动机建造者模式可以将部件和其组装过程分开,创建一个复杂对象。建造产品的过程就相当于组合部件的过程。这些部件的组合过程被“外部化”到一个称作建造者的对象里。模式结构角色:Builder:ConcreteBuilder:Director:Product:指挥者类:public class Director{ private Builder builder; public Director(Builder builder){ this.builder
2021-11-12 22:32:47 258
原创 6.抽象工厂模式
抽象工厂模式动机:我们有时需要一个工厂提供多个产品对象(工厂方法模式种每个具体工厂只对应一种具体产品)产品等级结构、产品族的概念:产品等级结构:产品的继承结构(抽象电视机和具体电视机)产品族: 同一工厂生成的位于不同产品等级结构中的一组产品抽象工厂模式与工厂方法模式最大的区别在于:工厂方法模式针对的是一个产品结构,抽象工厂模式面对多个产品等级结构。因此,抽象工厂模式中,一个工厂等级结构可以负责多个产品等级结构中产品对象的创建。模式结构:模式角色:AbstractFac
2021-11-12 20:25:02 229
原创 4.简单工厂
简单工厂又称静态工厂方法模式。动机:可以根据参数的不同返回不同类的实例。实现:定义一个工厂类(对照工厂方法和抽象工厂,这两者都具有多个工厂类)来负责创建其他类的实例,被创建的实例通常都具有共同的父类。模式结构:角色:Factory:实现创建所有实例的内部逻辑Product:ConcreteProduct:简单工厂模式的问题:工厂类的职责过重,增加新的产品需要修改工厂类的判断逻辑,违背**“开闭原则”**...
2021-11-10 16:25:40 207
原创 卷积神经网络——VGG
使用块的网络(VGG)VGG使用了模块化的神经网络结构,很容易重复各层的模式。1.VGG块VGG块与基本卷积神经网络的基础组成部分类似:3×3 卷积核、填充为 1(保持高度和宽度)的卷积层非线性激活函数,如ReLU2×2 池化窗口、步幅为 2(每个块后的分辨率减半)的最大汇聚层代码:来自 动手学习深度学习'''pytorch实现'''import torchfrom torch import nnfrom d2l import torch as d2ldef vgg_
2021-11-09 13:29:40 7615
原创 3.软件设计模式概述
软件设计模式概述模式:模式是在特定环境中解决问题的一种方案。一、设计模式的定义与分类设计模式的定义设计模式(Design Pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结,使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。设计模式的关键元素模式名称 (Pattern name)问题 (Problem)解决方案 (Solution)效果 (Consequences)设计模式的分类按目的分类:创建型模式主要用于创建对象
2021-11-08 18:09:57 167
原创 2.面向对象设计原则
面向对象设计原则设计目标:开闭原则、里氏代换原则、迪米特原则设计方法:单一职责原则、接口分隔原则、依赖倒置原则、组合/聚合复用原则开闭原则对扩展开放、对修改关闭要求:软件系统中不变的部分抽象成接口接口满足最小功能设计原则模块调用通过抽象接口里氏替换原则所有引用基类的地方必须能透明的使用其派生类的对象。条件:不应该在条件判断语句中判断派生类的类型派生类可以出现在任何基类可以出现的地方,并代替它。迪米特原则(最少知道原则)实体类只与“朋友”直接通信“朋友”条件
2021-11-08 18:09:02 115
原创 1.类间关系及UML表示
一、依赖关系(Dependency):相对独立的两个对象,满足下列要求之一:一个对象构造了另一个对象的实例一个对象使用了另一个对象(作为方法中的参数、局部变量等)则为依赖关系,这种关系是偶然的,临时的。举例:机器生产零件,人借用船过河UML表示:虚线箭头2.关联关系(Association):相对独立的对象,一个对象的实例与另一个对象的一些特定实例存在固定的对应关系(一个对象拥有另一个对象的引用)举例:师傅和徒弟(1:N),学生和课程(N:N)UML表示:
2021-11-07 10:25:04 554
原创 JavaScript笔记——语法基础(不包括面向对象)
1.快速入门1.1引入JavaScript1.内嵌<script> alert("hello world");</script>2.外部引入:<script src=".js文件路径"></script>1.2 数据类型变量var 数组Java的数据必须时相同类型的对象,js中不需要。//保证代码的可读性,尽量使用 [] var arr = [1,2,3,'hello',null,true];new Array(1,2,3
2021-07-18 18:53:57 526 1
原创 VIM使用
一、两种模式commandedit进入VIM时默认 command 模式,点击 “i” 键进入 edit 模式在 edit 模式下点击 “esc” 键进入 command 模式二、保存并退出只有在 command 模式下才能进行保存、退出操作" : w "保存“ :q ”退出“ :q! ”未保存的情况下强行退出...
2021-07-17 19:34:33 281
原创 重温C++——开始
一、控制流1.读取数量不定的输入数据(C++ Primer 中文P15)//读取不定长数据并求和#include<iostream>using namespace std;int main(){ int sum=0,value=0; while(cin>>value){//数据读取放在while循环中 sum+=value; } cout<<"Sum is "<<sum<<endl; return 0;}istrea
2021-07-17 19:32:06 109
原创 算法分析与设计——第五章复习:贪心算法
贪心算法:一、贪心算法的思想:是一种在每一步选择中都采取在当前状态下最好或最优(即最有利)的选择,从而希望导致结果是最好或最优的算法。二、贪心算法的应用:一般背包问题问题描述:已知:有 n 种物品、有一个承重量为 MMM 的背包n 种物品的重量分别为(w1,w2,…,wn)(w_1, w_2, …, w_n)(w1,w2,…,wn)n 种物品放入背包所获得的效益分别是(p1,p2,…,pn)(pi>0)(p_1, p_2, …, p_n)\quad (p_i>0)
2021-06-20 06:45:39 1684
原创 算法分析——第四章复习:分治法
分治法一、一般方法分治法的三个步骤:分解(Divide,分):将问题划分为一些子问题,子问题的形式与原问题一样,只是规模更小;解决(conquer,治):递归求解出子问题。如果子问题的规模足够小,则停止递归,直接求解;合并(combine,合):将子问题的解组合成原问题的解。二、二分检索(折半查找)二分检索——是采用分治法来解决有序表的排列问题。问题描述:已知一个按非降序排列的元素表a1≤a2≤…≤ana_1≤a_2 ≤ … ≤ a_na1≤a2≤…≤an给定元素x
2021-06-18 07:10:19 750
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人