-
恋爱必修课(二) 是终点也是起点:你的恋爱目标是什么?
发布时间:2023-04-02 13:21本文章转载自:https://time.geekbang.org/column/article/337430 这是我们恋爱必修课的第一讲,我想先和你聊聊“恋爱目标
-
恋爱必修课(一) 爱与被爱,是人一生最值得学习的能力
发布时间:2023-04-02 00:08本文章转载自:https://time.geekbang.org/column/article/337415 导语 从蹒跚学步到
-
面向对象和设计模式(十四)原型模式——PHP语言实现
发布时间:2023-02-01 17:04一、什么是原型模式如果对象的创建成本比较大,而同一个类的不同对象之间差别不大(大部分成员属性都相同),可以利用对已有对象(原型)进行拷贝的方式来创建新对象,以达到节省创建时间的目的,这就是原型模式。原
-
面向对象和设计模式(十三)建造者模式——PHP语言实现
发布时间:2023-01-31 14:51一、什么是建造者模式 建造者模式,又称构建者模式 或者 生成器模式。所谓的"建造者"顾名思义也是一个用来创建对象的类,它可以将对象的构建逻辑和对象的行为逻辑独立开来。而且对建
-
面向对象和设计模式(十二)工厂模式
发布时间:2023-01-25 15:17工厂模式不是一种模式,而是简单工厂模式、工厂方法模式和抽象工厂模式共3种模式。工厂模式的用途是创建对象。如果创建一个对象需要大量复杂的初始化操作,那么上层调用者可以将创建对象的工作委托给工厂类来实现,
-
面向对象和设计模式(十一)单例模式以及单例模式的并发安全问题
发布时间:2023-01-24 17:24一、设计模式概述常见的设计模式一共有23种,这些设计模式从行为上划分可以分为3类:创建型、结构型和行为型。其中创建型设计模式主要解决“对象的创建”问题;结构型设计模式主要解决“类或对象如何组合或组装”
-
面向对象和设计模式(十)代码如何解耦 与 迪米特法则 LOD(Law of Demeter,The Least Knowledge Principle)
发布时间:2023-01-15 18:15在正式介绍迪米特法则之前,先介绍“高内聚、松耦合”的设计思想。 一、什么是“高内聚、松耦合” 高内聚指相近的功能应该放到
-
面向对象和设计模式(九)SOLID原则之依赖倒置原则 DIP(Dependency Inversion Principle)
发布时间:2023-01-14 13:28在介绍依赖倒置原则之前,不得不说一下控制反转(IOC)和 依赖注入(DI)这两个概念。控制反转IOC (Inversion Of Control)控制反转是一种指导流程化逻辑处理的思想,“控制”是指对
-
面向对象和设计模式(八)设计原则之接口隔离原则 ISP(Interface Segregation Principle)
发布时间:2023-01-14 13:07接口隔离原则的官方解释是接口的调用方不应该被强迫依赖它不需要的接口。这里所说的接口不是指接口类,而是指方法。 这个原则涵盖了以下含义: 1、一个实现类不应该实现它不需要
-
面向对象和设计模式(七)设计原则之开闭原则 OCP(Open Closed Principle)
发布时间:2023-01-07 17:35开闭原则是指“对扩展开放,对修改关闭”,意思是添加一个新的功能应该是在已有代码基础上扩展代码(新增模块、类、方法等),而非修改代码。 更具体点说就是尽
-
面向对象和设计模式(六) 设计原则之单一职责原则 SRP 与 里氏替换原则 LSP
发布时间:2023-01-07 17:19一、SOLID原则之单一职责原则 SRP(Single Responsibility Principle)单一职责原则指一个类、模块或者函数只完成一个主要功能。当然,这只是表面的概念和理解,大家应该都
-
面向对象和设计模式(五) 贫血模型和充血模型
发布时间:2023-01-06 00:27在日常开发中,我们经常的做法是将代码分为 控制器层 Controller、服务层 Service 和 数据存储层 Repository。其中控制器层负责暴露接口,服务层负责业务逻辑的实现,存储层负责数
-
面向对象和设计模式(四) 使用组合代替继承——防止继承带来的类数量爆炸增长
发布时间:2023-01-01 13:55为什么要“多用组合少用继承”,要回答这个问题我们需要先回顾分析继承的优缺点。 继承的优点是:代码复用,描述is-a关系,支持多态特性。 继承的缺点是:继承层次过深会
-
面向对象和设计模式(三) 接口类和抽象类的区别与共性和面向对象编程避坑点
发布时间:2023-01-01 13:25一、接口类和抽象类的共性和区别(什么时候用接口,什么时候用抽象类) 先说一些我们可能比较熟知的,抽象类和接口类的特性。 1、抽象类和接口类的特性和共性 抽象类的特
-
计算机网络基础(十五)网络安全之密钥密码体制、报文鉴别和TLS运输层安全协议
发布时间:2022-12-31 12:50一、网络攻击的类型网络攻击分为两大类:被动攻击和主动攻击。截获:从网络上窃听他人的通信内容,但不干扰原报文在源端和目的端的传送。篡改:捕获报文并篡改报文后再发送给目的站。恶意程序:计算机病毒。拒绝服务
-
面向对象和设计模式(二) 面向对象四大特性之封装性/抽象性/继承性/多态性 和 类与类之间6种交互关系
发布时间:2022-12-31 11:55一、面向对象的四大特性:封装,抽象,继承,多态 几年前在我还年轻的时候,我听我的一个亦师亦友的暖男同事说过一句话:“你以为你在面向对象编程,其实你只是在用类写面向过程的代码&rdqu
-
面向对象和设计模式(一) 面向对象、设计原则、设计模式和重构概述
发布时间:2022-12-31 11:38前言:学习设计模式的目的本质是为了写出高质量代码。一、如何评判代码质量的好坏怎样的代码才算是高质量的代码呢,作者给出了以下维度的标准。1、可维护性代码易维护是指在不破坏原有代码设计、不引入新的 bug
-
操作系统入门(二十五)磁盘结构、磁盘调度算法、随机IO和顺序IO
发布时间:2022-12-29 00:28一、磁盘结构一个磁盘的盘面被分为一圈圈的磁道,一个磁道又被分为一个个扇区,每一个扇区就是一个磁盘块。每个扇区存放的数据量相同。一个盘面的磁道大概有几千到几万条。最中间的白色同心圆放着一个马达用来转动盘
-
操作系统入门(二十四)文件存储空间管理、基于索引节点的文件共享、基于符号链的文件共享和文件保护
发布时间:2022-12-26 23:53一、文件存储空间管理文件存储空间管理就是研究文件系统如何为一个文件分配空闲磁盘块的。管理方法包括:空闲表法,空闲链表法,位图法和成组链接法。需要关注3个问题:用什么方式记录、组织空闲块?如何分配磁盘块
-
操作系统入门(二十三)文件系统 之 文件的物理结构、连续分配、链式分配和索引分配
发布时间:2022-12-17 15:08文件的物理结构研究的是 已分配给文件的磁盘块在磁盘中如何组织起来的,分为连续分配、链式分配和索引分配3种。其中链接分配采取离散分配的方式。分为隐式链接和显式链接两种。逻辑上无结构的文件(如二