前端框架(kraken、Express、Node、MVC)
You know my loneliness is only kept for you, my sweet songs are only sang for you.
前端框架相关知识记录。
kraken:
Kraken基于grunt和Express,相比而言,它提供了更加稳健的功能合集,支持本地化、环境配置、更加注重应用程序安全等。这里解释下,Express是Node.js的一个MVC开发框架,支持jade等多种模板(可以采用ejs),是目前Node.js上最流行的Web开发框架,通过提供一系列强大特性帮助开发者创建各种Web应用。
Express:
Node.js的MVC框架
MVC框架:
MVC只是一种思想,并非编程规范。按照三类不同的功能来划分代码模块的思想。
模型层(model)、视图层(view)、控制层(controller)
代表性的MVC框架:Vue.js、React.js、Angular.js、backbone.js
MVC框架分析:
优点:灵活度比较高、可以实现model和view比较好的分离
- 可以由不同的人并行推进对model和view的内部实现,而不关心对方怎么实现,只管负责自己内部的实现并抛出事件,并约定好通过事件所传递的数据的格式即可,就像前端和后端的分离那样。
- 从容应对灵活多变的业务需求,只要在controller中修改所绑定的事件名和实现相应操作的回调函数即可。controller要做的就是做决定:决定在哪个事件被抛出时,调用实现哪个操作的方法。这就是它为什么叫做controller的原因。而它只做决定,不做实现,提现了“We need thin controller”的原则。
- 可以很方便的卸载、装载以及修改各个特性。装载:在model/view中提供实现该特性的方法,在controller中把该方法的调用和调用时机(即事件)绑定起来即可。卸载:解除事件绑定即可。
缺点:需要controller层绑定事件(需要引入中间层)
前端框架:
分为 JS框架 和 UI框架
JS框架:
- jQuery库
- Zepto ( 类似jQuery库 )
- Node.js( 服务端 )
- Angular.js( 模型,scope作用域,controller,依赖注入,MVVM ):前端MVC
- require.js:AMD,commonJS
- Seajs:CMD,commonJS
- Vue.js:MVVM
- backbone.js
- React.js:创建自定义标签,根据ID注入标签
- Ionic.js
UI框架 :
- Bootstrap
- Pure
- easyUI
构建工具:
grunt & gulp
css预处理(扩展)语言:
sass & less
JavaScript模板库(JavaScript模板引擎):
EJS 、jade(Node模板引擎)
Node.js
Node.js是一个JavaScript运行环境(runtime)。实际上它是对Google V8引擎进行了封装。V8引擎执行JavaScript的速度非常快,性能非常好。Node.js对一些特殊用例进行了优化,提供了替代的API,使得V8在非浏览器环境下运行的更好。
Node.js是一个基于ChromeJavaScript运行时建立的平台,用于方便地搭建响应速度快、易于扩展的网络应用。Node.js使用事件驱动,非阻塞 I/O模型而得以轻量和高效,非常适合在分布式设备上运行数据密集型的实时应用。
简单的说Node.js就是运行在服务端的JavaScript。
注:JavaScript引擎是一个专门处理JavaScript脚本的虚拟机,一般会附带在网页浏览器之中。
Google V8:由Google丹麦开发,是Chrome浏览器的一部分。
前端框架(kraken、Express、Node、MVC)的更多相关文章
- spring mvc 及NUI前端框架学习笔记
spring mvc 及NUI前端框架学习笔记 页面传值 一.同一页面 直接通过$J.getbyName("id").setValue(id); Set值即可 二.跳转页面(bus ...
- vue 前端框架
什么是vue.js 1.vue是目前最火的一个前端框架,react 是最流行的前端框架(react除了开发网站,还可以开发手机APP,vue语法也是可以进行手机app开发的,需要借助于weex) 2. ...
- b2c项目基础架构分析(二)前端框架 以及补漏的第一篇名词解释
继续上篇,上篇里忘记了也很重要的前端部分,今天的网站基本上是以一个启示页,然后少量的整页切换,大量的浏览器后台调用web服务局部.动态更新页面显示状态这种方式在运作的,从若干年前简单的ajax流行起来 ...
- 框架开发之——AngularJS+MVC+Routing开发步骤总结——5.14
1.延续MVC的观念:包括路由映射的编写,Controller的内容,具体View页面js的分离. 2.结合AngularJS做前端,后端使用Node.Js的写法,引入MVC框架,进行快速的开发. 步 ...
- 2019年Web前端最新导航(常见前端框架、前端大牛)
本文最初发表于博客园,并在GitHub上持续更新前端的系列文章.欢迎在GitHub上关注我,一起入门和进阶前端. 前言 本文列出了很多与前端有关的常见网站.博客.工具等,整体来看比较权威.有些东西已经 ...
- 目前比较火的前端框架及UI组件
看到的一篇总结性的文章,收藏一下,感兴趣的可以自己看看,哪些是已经会的,哪些是没听说过的,哪些是一知半解的,都可以稍微看看. 一.前端框架库: 1.Zepto.js 地址:点击打开链接 描述:Zept ...
- 【转】前端框架天下三分:Angular React 和 Vue的比较
前端框架天下三分:Angular React 和 Vue的比较 原文链接:http://blog.csdn.net/haoshidai/article/details/52346865 前端这几年的技 ...
- (转)2018几大主流的UI/JS框架——前端框架 [Vue.js(目前市场上的主流)]
https://blog.csdn.net/hu_belif/article/details/81258961 2016年开始应该是互联网飞速发展的几年,同时也是Web前端开发非常火爆的一年,Web ...
- 0前端 框架 库_千万别去碰js呀 混合APP_webAPP_美工 选有类型的语言,比如TypeScript
常用知识点,技巧 添加库到本地: (举例 element-ui) 用npm命令行把包下载到本地 在电脑里找到资源文件,比如 C:\Users\XiaoCong\AppData\Roaming\npm\ ...
随机推荐
- 机器学习-文本数据-文本的相关性矩阵 1.cosing_similarity(用于计算两两特征之间的相关性)
函数说明: 1. cosing_similarity(array) 输入的样本为array格式,为经过词袋模型编码以后的向量化特征,用于计算两两样本之间的相关性 当我们使用词频或者TFidf构造出 ...
- iOS开发 2x 3x图
众所周知,iOS开发中的图片资源一般需要2倍图和3倍图,也就是2x,3x,但是最近思考了一个问题,为什么不能只提供3x的图片,2x的图片让系统从3x压缩就好了,于是上网搜索了下,得到了答案. 当我们在 ...
- h5 图片生成
createImg(store, data) { let timer = setTimeout(function (params) { let _canvas = document.querySele ...
- gevent mysql
使用gevent实现mysql并发时,每个greenlet应该独享一个mysql连接,否则,不同的greenlet之间会相互影响. ultramysql doesn't allow you to ma ...
- 尚硅谷springboot学习7-yaml配置文件
SpringBoot使用一个全局的配置文件,配置文件名是固定的: application.properties application.yml 配置文件的作用:修改SpringBoot自动配置的默认值 ...
- SecureCRT使用本地公钥 SSH 免密码登录Linux
其原理与Linux系统之间的SSH通道原理是一样的 下文中如果创建公钥的格式是:标准公钥和VanDyke私钥格式,需要用ssh-keygen -i -f 转换.如果是OpenSSH密钥格式可直接修改文 ...
- HTML实现页面自动跳转的五种方法
下面列了五个例子来详细说明,这几个例子的主要功能是:在5秒后,自动跳转到同目录下的hello.html(根据自己需要自行修改)文件. 1)html的实现 复制代码 代码如下: <head> ...
- mysql 授权命令
MySQL 数据库赋予用户权限操作表 MySQL清空数据库的操作:truncate table tablename; MySQL 赋予用户权限命令的简单格式可概括为:grant 权限 on 数据库 ...
- Android中查看SQLite中字段数据的两种方式
方式一:ADB Pull 通过adb pull导出*.db文件到PC的文件夹中,通过可视化工具 SQLiteExpertPers 进行查看.编辑: adb pull /data/data/com.jo ...
- 初始C语言中的数组(男神翁凯老师MOOC)
定义数组 ●<类型>变量名称[元素数量]; ● int grades[100]; ●double weight[20]; ●元素数量必须是整数 ●C99之前:元素数量必须是编译时刻确定的字 ...