自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 算法小抄读书笔记1--动态规划

算法小抄 动态规划

2022-09-13 18:17:21 115 1

原创 Linux内核启动-从BIOS到Bootloader

Linux内核

2022-03-18 18:57:01 2945

原创 Linux内核开篇-了解内核前的基础知识概述2

linux

2022-03-17 18:50:25 827

原创 Linux内核开篇-了解内核前的基础知识概述1

linux内核

2022-03-17 15:52:06 779

原创 23种设计模式和使用场景介绍

创建型单例模式名词解释全局只包含一个对象。使用场景编码实现工厂模式建造者模式原型模式结构型代理模式桥接模式装饰器模式适配器模式门面模式组合模式享元模式行为型观察者模式模板模式策略模式职责链模式迭代器模式状态模式访问者模式备忘录模式命令模式解释器模式中介模式...

2022-01-21 17:21:08 707

原创 面向对象、设计原则、编程规范、重构技巧总结

文章目录面向对象面向对象四大特性面向对象分析、设计与编程基于接口而非实现编程多用组合少用继承贫血模型 VS 充血模型设计原则SOLID原则KISS、YAGNI原则DRY原则LOD 迪米特法则编码规范重构技巧在程序中加入单元测试编写可测试的代码大型重构和小型重构小型重构:编码规范面向对象面向对象四大特性封装、抽象、继承、多态面向对象分析、设计与编程OOA 输入是模糊的需求,输出是流程化的明确的需求OOP 输入是流程化的需求,输出是具体的类和类关系基于接口而非实现编程多用组合少用继承贫

2021-11-30 11:09:23 135

原创 设计原则之KISS、DRY,LOD

KISS Keep It Short and Simple.DRY Don’t Repeat YourselfLOD Law of DemeterLOD 迪米特法则不该有直接依赖关系的类之间,不要有依赖;有依赖关系的类之间,尽量只依赖必要的接口(也就是定义中的“有限知识”)关于高内聚,低耦合“高内聚、松耦合”是一个非常重要的设计思想,能够有效提高代码的可读性和可维护性,缩小功能改动导致的代码改动范围。“高内聚”用来指导类本身的设计,“松耦合”用来指导类与类之间依赖关系的设计。所谓高内.

2021-11-18 15:31:19 97

原创 设计原则之SOLID

S Single Responsibility PrincipleO Open Closed PrincipleL Liskov Substitution PrincipleI Interface Segregation PrincipleD Dependency Inversion Principle单一职责原则一个类或者模块只负责完成一个职责(或者功能)类中的代码行数、函数或属性过多,会影响代码的可读性和可维护性,我们就需要考虑对类进行拆分;类依赖的其他类过多,或者依赖类的其.

2021-11-16 13:54:54 118 1

原创 面向对象需求分析、方案设计、编码实现

OOAOODOOP当我们接到一个模糊或者具体的需求,一个通用的流程范式是需求分析 -> 方案设计 -> 编码实现需求分析面向对象分析的输入是一个模糊或者具体的需求 ,产出是详细的需求描述。需求分析是一个反复迭代才能出现“结果宝石”的过程,就像解一道算法题一样:有一个最初的实行方案,然后发现问题,解决问题或推翻设想重来。- 举个例子:需求是服务端要添加一个鉴权功能 - 最开始考虑使用用户名口令鉴别身份 - 发现明文容易被中间人抓包获取所以传输时使用hash后的密.

2021-11-10 16:57:40 406

原创 关于贫血模型和充血模型

什么是贫血模型?什么是充血模型?为什么说基于贫血模型的传统开发模式违反 OOP?基于贫血模型的传统开发模式既然违反 OOP,那又为什么如此流行?什么情况下我们应该考虑使用基于充血模型的 DDD 开发模式?什么是贫血模型?贫血模型(Anemic Domain Model)是指开发过程中业务的具体方法不在对应的子业务中实现。以MVC举例。当前后端分离时,后端大致结构为RSC:Repository层,用于在和数据库,中间键等交互,属性定义在Entity中,方法实现在Repository。Mo.

2021-11-10 10:52:28 131

原创 C++继承时的一些语法规则

自生成方法众所周知,C++类有四种函数如果不显示定义会自动生成:构造函数、析构函数、拷贝构造函数、运算符重载(operator = )。在继承时,很多特殊情况也就出在这四类函数中。继承中派生类内包含了基类内所有方法和属性,只是由于private 权限修饰不能在派生类中直接调用而已。但是基类构造函数明明就算设置成public,在子类对象中也是不能直接使用的。这其实就很容易理解:基类和派生类的构造、析构、拷贝构造甚至都不重名,运算符重载参数也一般直接指定的本对象的类型(如果想直接使用父类的运算符重载函数,不

2021-10-29 18:29:55 169

原创 c++ 面向对象之封装、抽象、继承、多态

c++ 面向对象之封装、抽象、继承、多态最近正在学习设计模式,所以总结一下c++为面向对象提供的一些语言特性。作为涉及模式这个专栏的开篇。封装封装其实很容易理解,就是使用类(class)将很多属性封装起来。值得注意的是三种访问权限public:可以类创建的实体访问protected:只允许子类及本类的成员函数访问private:只允许本类的成员函数访问三种继承方式public 继承protected 继承private 继承基类中继承方式子类中p

2021-10-25 16:51:45 494

原创 从今天开始正式写博客

计划就是博主从今天开始正式写博客了。会在上边分享一些自己的一些感悟,当然更多的应该是一些技术分享。一方面能给大家分享一些总结的知识点,当然有错的话也欢迎大家指正。另一方面也是对自己文档整理能力的一种锻炼。我的想法是尽量完全消化一个东西后用通俗一点的话+思维导图的形式给大家最后去呈现它,当然也不一定拘泥于形式,毕竟一切也是刚刚开始。至于数量现在还没太想好是强制性的每周,每月多少或者是怎么样。因为质量才是我最最最关心的点。还是刚才说的,一切都刚开始,边写边完善吧。就是这样。...

2021-10-08 16:08:24 69

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除