docker基础

docker 是为了统一环境、配置、依赖问题而诞生的方案。

Leer más

2018年工作回顾

2018 年已经过去,到现在才有时间做一番梳理和总结。

过去一年主要的问题,暴露在这么一些方面:

  • 工作流
  • 管理

Leer más

如何理解高内聚低耦合?什么是依赖倒置、控制反转、依赖注入?

软件工程里面,有高内聚低耦合的概念。

那么,什么是内聚?什么是耦合呢?

Leer más

如何理解同步/异步、阻塞非/阻塞、并行/并发?

同步异步常常会拿来和阻塞非阻塞放在一起讨论。

因为它们似乎看起来很像,而且通常配套出现。

Leer más

如何理解单线程、多线程?如何选择多线程、多进程?

在进入主题之前,我们先要理解一些名词。

  • 进程
  • 线程
  • 主进程
  • 子进程
  • 主线程
  • 子线程

Leer más

如何理解面向过程、面向对象、面向切面?它们有什么区别?

我们总会听见如下词语:

面向过程编程(opp)
面向对象编程(oop)
面向切面编程(aop)

上面几个词语,都是编程范式。

编程范式是指:编程时所秉承的思想和风格,不同的编程语言对各大编程范式会有不同程度的支持。

不同的编程范式各自会有自己的优点,它们适用在各种不同的情况下:面向过程性能很高,面向对象比较易于管理和维护,面向切面使软件变得更灵活。

Leer más

如何理解http、http1.0、http1.1、http2.0、https?

web开发,对http有所了解是很重要的。

这里是我对几个概念的讲解。

Leer más

web的工作流程是什么?

之前的文章有说过,b/s架构下的软件开发,可以称作web开发。
Php就是web开发常见的后端语言,普及率还挺高的。
成为一名web开发工程师,势必要对web工作流程要有所了解。

Leer más

什么是b/s、c/s软件架构,它们有什么区别?

c/s和b/s是对软件结构的分类,或者说软件架构。
其中,c是client的缩写,s是server的缩写,b是browser的缩写。
Client指的是客户端
Server指的是服务器
Browser指的是浏览器
c/s就是客户端与服务器、b/s就是浏览器与服务器。

Leer más

如何理解动态类型/静态类型语言?

很多人会把静态类型同等为强类型,动态类型同等为弱类型。
其实不是。
它们可能在表现上有很多相似之处,但它们并不同等,因为他们在原理上不一样。

Leer más