程序设计七大原则

Author image vincentgemini on Web
在程序开发过程中,为了让代码更加健壮,更具有复习用性和可维护性,在设计的过程中一般会遵循以下六个原则:开闭原则单一原则代替原则依赖原则接口隔离原则最少原则合成/聚合复用原则开闭原则:程序的设计应该是不约束扩展,即扩展开放,但又不能修改已有功能,即修改关闭。因为在软件生命周期内,经常会出在原有功能基础上扩展新功能。这时,不能因为软件已经上线,不扩展新功能,但也不能直接修改旧的功能。正确的做法是,在原有功能上,扩展一个新的功能,新的需求依赖新的功能去实现。这样就既保证了老功能不受影响,有扩展了新功能。开闭原则一条非常重要的原则,可以说其它原则的基石。单一原则

React 新特性——React Hooks

[转自:https://www.jianshu.com/p/97b6259f9773]React是现在最流行的前端框架之一,它的轻量化,组件化,单向数据流等特性把前端引入了一个新的高度,现在它又引入的Hooks,一个神奇的东东,来看一看。你还在为该使用无状态组件(Function)还是有状态组件(Class)而烦恼吗?——拥有了hooks,你再也不需要写Class了,你的所有组件都将是Function。你还在为搞不清使用哪个生命周期钩子函数而日夜难眠吗?——拥有了Hooks,生命周期钩子函数可以先丢一边了。你在还在为组件中的this指向而晕头转向吗?——

Gulpan-简单灵活的模块化前端解决方案!

Author image Cloud on 前端
可以像FIS一样,具有模块化的前端目录结构。基于gulp,简单、灵活,容易扩展和修改,懂点gulp的童鞋都可以自己修改、使用、组合。不需要任何服务端的整合工作,这个与FIS有很大不同,不需要修改服务端代码来适配,就像正常的html一样,去引用你的js、css、img、fonts等资源,无侵入。整合SCSS ES6 Browserify|cssnano|uglify|imagmein|rev等前端常用套件,同时有监视文件变动功能(watch),可配置的发布目录、资源目录、CDN等,方便开发,简单易用,一站式搞定。更新说明:gulpman 1.4.6版本更新

gulp.dest的文件路径说明

Author image Cloud on 前端
gulp的dest,路径问题,新手可能经常不太明白这个路径最后是怎么决定的:通过指定gulp.src()方法配置参数中的base属性,我们可以更灵活的来改变gulp.dest()生成的文件路径。当我们没有在gulp.src()方法中配置base属性时,base的默认值为通配符开始出现之前那部分路径,例如:gulp.src('app/src/**/*.css') //此时base的值为 app/src上面我们说的gulp.dest()所生成的文件路径的规则,其实也可以理解成,用我们给gulp.dest()传入的路径替换掉gulp.src()中的base路径

调试Nodejs神器--node-inspector

Author image Cloud on Nodejs
Nodejs调试传统的是加断点debugger,但是不太灵活,常用的是node-inspector, 比较直观好用,可以直接用Chrome来debug你的node程序,支持单步等,就像调试浏览器js一样,经常需要debug的童鞋可以用一下~全局安装 node-inspector npm install -g node-inspector使用:终端定位到你要调试的项目根目录下/node_app/debug方式启动node --debug app.jsdebugger listening on port 5858listen 3000上面的 app.js 是

关于Node 4和5的版本号趣事

Author image Cloud on Nodejs
原来Node版本号的4和5是这么来的哈哈开始了追赶N卡驱动之旅。。。摘抄下知乎上的答案:PerterPon,向关注知乎上所有妹子的目标前进iojs就是小三逼宫转正史发布于 2015-11-06 添加评论 感谢 分享现在版本号特别是 npm 上的包都是采用语义化版本编号: 语义化版本 2.0.0当初 io.js 为什么要从 nodejs 分裂出去? 就是社区开发者嫌弃Joyent 太求稳, 一个 0.10 版本维护了一年多时间, 又迟迟不对 0.11 进行定版(似乎叫 node-forward?). io.js 既然分裂出去了, 版本更新那可就频繁了, 各

关于Angular、Vue、React的一些见解

Author image Cloud on 前端 , Web
Angular 1.x 看着可能更像是 java 系的框架爱。在带来了数据绑定这个先进生产力代表的同时,又带入了一大堆前端本来就不需要的包袱。指令、服务、scope等使用略微繁琐。Vue 只专注于View-Model,其他的控制权、策略制定都交给开发者,思路很清晰个人觉着,Angular最大的贡献就是推广了双向绑定,极大提高了富数据业务的生产力,这是核心,其他附带的特性和功能,各有评判吧~React,则是很好的提供了一个组件化、状态维护的技术思路~Virtual-Dom的概念,可以有很多探索和前端之外的应用Avalon的话,自己没有实际用过,他的数据绑定