标签: carrier

软件复用

软件复用分为实体复用和概念复用两类。实体复用有三个层次:应用系统复用、组件复用、对象和函数复用。概念复用指的是复用一个思想、一个方法、一个操作或一个算法,它可以嵌入在设计模式、可配置系统产品以及程序生成器等方法中。复用的好处在于降低开发成本、增加可靠性、降低过程风险、有效使用专家、标准一致等;坏处在于可复用的开发和维护成本高、推广可能遭遇不利。 软件复用的方法包含:体系结构模式、设计模式、应用框架

架构入门

面向服务架构富客户端、客户端-服务器模式、基于 ESB 企业服务总线的 SOA 服务导向架构、microservices architecture 微服务架构,微服务架构是循着这条演进路线发展而来的。客户端-服务器模式可用于解释现行的很多架设,如 hsf 服务即包含客户端和服务端,此外还有微服务架构中的配置中心;redis 消息服务;sql 服务器和应用服务器的关系也是客户端-服务器模式。基于 E

电商后台建模

系统建模系统建模是对软件系统的抽象,滤除了对细节的关照,通常需要包含如下内容: 上下文模型:说明系统在上下文环境中有怎样的构成,边界如何。上下文模型并未说明各系统的交互关系。 业务过程模型:说明系统中某个业务人工或自动化的处理过程,并交代各系统在该业务过程中的交互行为。可使用 UML 活动图绘制。 交互模型:说明系统与外部参与者(用户或其他系统)之间的交互关系,其中传递的数据可通过文本或结构化表

图片校验码

纯前端实现纯前端实现图片校验码指的是通过 canvas 绘制随机串的方式。这种方式有极大的弊端:如果随机串在前端生成,那么通过拦截伪造请求仍然能正常调用后台接口;如果随机串由后台发送给前端,那么中间可以被拦截并伪造(当然,可尝试用加密技术进行保护)。因此,这种方式大体适用于学习研究的目的。以下代码段基于 react 验证码组件 整理,其实现也可以参考 在React中随机生成图形验证码。您可以在 c

进程与线程踩点

前言本篇基于《现代操作系统》整理。虽然笔者也不甚理解,但是这篇总结可以为后续深入探究 node 进程、java 并发、react 调度算法打个桩,从中也确实增进了对进程、中断等的理解。 进程进程概要单核 CPU 一瞬只能运行一个进程,因此需要通过多道程序设计实现多进程的伪并行,营造在 1 秒钟内有多个进程同时运行的错觉。一个进程就是一个正在执行程序的实例,包含程序计数器、寄存器和变量的当前值。程序

docker

虚拟机和容器虚拟机和容器都是为了将实体机拆分成多块,以便分块运行不同的应用。 虚拟机技术(xem、kvm、vmware、virtualbox)需要模拟整台机器,包括硬件、操作系统等。虚拟机一旦开启,预分配给它的资源将全部被占用。虚拟机上再运行应用,并安装必要的二进制包和库。 容器技术能和宿主机共享硬件资源及操作系统,能实现资源的动态分配。容器内部安装依赖和应用,在宿主机中以分离的进程运行。Doc

jest测试

jest 断言库 支持两种测试模式:功能测试、快照测试。通过添加 babel-jest 依赖以及 babel.config.js 配置,可以在工程中使用 babel 转译 es6 语法或者 ts 语法,可参看 Getting Started。jest 也可以用于使用 webpack 来管理资源、 样式和编译的项目,可参看 Using with webpack。jest 支持的断言方法可参见 Exp

踩坑

typescript 使用 export = 导出的模块,需要使用 typescript 提供的特定语法 import let = require(“module”) 导入。参考 Typescript学习笔记(五) 模块机制。 其类型缺少调用或构造签名的表达式无法使用 “new”:在 .d.ts 文件中声明包含 new 方法的接口。 webpack webpack_require(…) is

$PATH, nvm, npm, lerna

mac 环境变量命令一旦添加到环境变量中,系统就知道从哪个路径中取出文件并执行。mac 有多个环境变量文件,不同的环境变量文件的作用域和加载时间也不同。在 mac 中,不同的 shell 所对应的配置文件也不同:bash 命令对应的配置文件是 .bash_profile;zsh 命令对应的配置文件是 .zshrc。 rc 即为 run command,一般为脚本类文件的后缀,这些脚本通常在程序启动

nginx

步骤 nginx主站 下载 nginx cd 到 nginx 目录,start nginx 启动 修改 conf/nginx.conf 全局配置,nginx -s reload 重启 命令start nginx 启动nginx -s stop 强制退出nginx -s quit 平滑退出nginx -s reload 修改配置后,平滑重启 taskkill /F /IM nginx.exe &g