more >>工欲善其事,必先利其器。首先去找适合写插件的项目包管理工具。对比了webpack,rollup,gulp,parcel
经过一通对比就选中了 rollup,具体请自行了解。简单说一下我们熟知的vue,react,taro-ui 等 就是使用的 rolluojs 打包的
自己写了一个很简单的插件上传发布到npm。具体步骤如下:
前端小趴菜
more >>工欲善其事,必先利其器。首先去找适合写插件的项目包管理工具。对比了webpack,rollup,gulp,parcel
经过一通对比就选中了 rollup,具体请自行了解。简单说一下我们熟知的vue,react,taro-ui 等 就是使用的 rolluojs 打包的
自己写了一个很简单的插件上传发布到npm。具体步骤如下:
打包工具,根据我们的资源依赖树,分不同类型打包成静态资源,支持热更新,代码模块切分,three-shaking、异步加载等、
特性:
不同资源的模块打包 热更新 代码分割 静态资源压缩 异步加载 three-shaking
适用场景
应用程序打包
Rollup 是一个模块打包工具,可以将我们按照 ESM (ES2015 Module) 规范编写的源码构建输出如下格式:
特性:
支持动态导入。
支持 tree shaking。仅加载模块里用得到的函数以减小文件大小。
Scope Hoisting。 rollup 可以将所有小文件生成到一个大文件中,所有代码都在同一个函数作用域里:, 不会像 Webpack 那样用很多函数来包装模块。
没有其他冗余代码,执行很快。除了必要的 cjs, umd 头外,bundle 代码基本和源码差不多,也没有奇怪的 webpack_require, Object.defineProperty 之类的东西,
缺点:
不支持热更新功能;对于 commonjs 模块,需要额外的插件将其转化为 es2015 供 rollup 处理;无法进行公共代码拆分。 运行时态的动态导入 dynamic imports at runtime.
rollup 通过插件来编译处理各类静态资源:
适用场景:
由纯 js 开发的第三方库; 需要生成单一的 umd 文件的场景
自动化构建工具,把项目工作抽象成自动化任务 用 gulp 构建自动化工作流,处理项目中的资源,基于流式操作。
特性
gulp 文档简单,学习成本低,使用简单;对大量源文件可以进行流式处理,借助插件,可以对文件类型进行多种操作处理。
适用场景
静态资源密集操作型场景,主要用于 css、图片等静态资源的处理操作。 文件处理:
gulp 通过各种中间件处理静态资源的编译:
more >>想试一试jenkins 自动部署得功能,此处记录一下。
ubuntu+ docker + jenkins + svn
1、去官网下载 redis ,上传解压。
然后会发现 文件夹中有 MakeFile 文件,这是编译所需文件
2、编译
1 | make |
3、安装
1 | make install |
安装后得命令在 /usr/local/bin 目录下
地址栏输入chrome:version 回车,用资源管理器打开”个人资料路径”栏的路径,该路径下的Extensions文件夹即默认的扩展安装路径
方法1、cmd进入到chrome安装目录,执行如下命令会打开一个不限制跨域的浏览器窗口,关掉会失效
1 | chrome.exe --disable-web-security --user-data-dir=C:\MyChromeUserFata |
方法2、复制chrome快捷方式图标,将复制品改名后,右键点击【属性】,在已有字段后边加上这句话,–user-data-dir=“c:\ChromeDebug” –test-type –disable-web-security
划重点!!! –user-data前边有个空格!!
xml配置容器
就是spring 的 xml文件中那样的写法
1 | <bean id = "createStudent" class="com.xxx.Student"></bean> |
javaConfig配置容器
采用java类的方式来配置
1 | @Configuration // 表示当前类是作为配置文件使用 |
把XML文件住的的Bean导入到容器
1 | @Configuration |
引入外部属性配置文件
1 | @Configuration |
扫描组件注解
1 | @Configuration |
它是spring中的一个成员,可以简化Spring MVC的使用,他的核心还是IOC容器。
特点:
1 | /** |
more >>
什么是OCP?
OCP是软件开发的七大开发原则:开闭原则
核心:其他6个原则的基础
OCP开闭原则核心是什么?
只要你在扩展功能的时候,没有修改以前写好的代码,那么就是符合OCP原则的,反之则违背了OCP原则
当系统功能拓展时,如果动了之前稳定的程序,修改了之前的程序。之前所有程序都需要测试,这是不想看到的
违背依赖倒置原则(DIP原则)
上依赖下就是违背:如:表示层依赖服务层,服务层依赖持久层
控制反转
一种编程思想。或设计模式
- 不在程序中采用硬编码方式来 new 对象
- 不在程序中采用硬编码方式来 维护对象关系
- 管理jar 文件
- 自动下载jar和他的文档源码
- 管理jar直接的依赖,a.jar 依赖b.jar 他会自动下载b.jar
- 帮你管理jar的版本
- 帮你编译程序: java-> class
- 帮你测试代码
- 帮你打包,形成jar/war 文件
- 帮你部署项目
POM
把一个项目当作模型使用。控制maven构建项目的过程
约定的目录结构
maven项目的目录和文件和位置都是规范的
依赖仓库
管理项目可以使用的jar
仓库管理
资源存放的位置
生命周期
插件和木比爱哦
继承
聚合
修改maven的配置文件,maven的安装目录/conf/settings.xml
为啥要改?因为默认放在C盘
1 | <localRepository>D://maven//localSpace</localRepository> |
tag:
缺失模块。
1、请确保node版本大于6.2
2、在博客根目录(注意不是yilia-plus根目录)执行以下命令:
npm i hexo-generator-json-content --save
3、在根目录_config.yml里添加配置:
jsonContent: meta: false pages: false posts: title: true date: true path: true text: false raw: false content: false slug: false updated: false comments: false link: false permalink: false excerpt: false categories: false tags: true