Web前端开发技术主要包括三个要素:HTML、CSS和JavaScript!HTML甚至不是一门语言,仅仅是简单的标记语言!CSS只是无类型的样式修饰语言。当然可以勉强算作弱类型语言。Javascript的基础部分相对来说不难,入手还算快。
1. 掌握各种修图软件,如PSFireworksAI,不要求专业设计师水平,但要会用会改,今天是一专多能的时代,光会编程讨不好饭碗的;
2. 精通JavaScript、jQuery、vue、 react、angular等页面效果框架,这是前端工程师的最核心技能,是专做页面效果的技术。其实精通了JavaScript,后端编程语言,如.NET、PHP、Ruby都很容易掌握,因为其原理是一样的;
3. 精通一二种模板语言,并能修改,如织梦或wordpress的模板;
4. 掌握thinkphp与zend框架,能修改此类开源源码;
5. 掌握html5与sencha,这是做手机等移动设备的页面前端技术;
6. 掌握一二种后端编程语言,如PHP、.NET、JAVA,能读懂后端源码,实际上其原理跟JS差不多;
7. 掌握node.js,熟悉各种自动化部署工具;
8. 前端是重视用户体验的,不是靠美工给的页面 做出来就行了,那样不是一个合格的前端。
其中vue、 react、angular,等框架是走在现在流行的框架的。
Vue.js 很好,但相比 Angular 或 React 更好吗?
Vue.js 是一个用来构建网页界面的 JavaScript 库。同其它的一些工具结合在一起,它也可以成为一个新“框架”。你会了解到 Vue.js 是顶级的 JavaScript 框架之一,它在许多场景中可以被用来替换 Angular 和 React。这就引出了本文要讨论的话题 “Vue.js 是不错,但能比 Angular 或者 React 更好么?”
Vue.js 为什么比较特别?
· Vue 最大优势就是它比较新颖,没历史包袱,它吸取了 React 和 Angular 的教训
· Vue轻量级,易上手,易学习
· Vue更加灵活,(比起 Angular)更少专制
· 组件(Component)是 Vue最强大的功能之一。组件可以扩展 HTML 元素,封装可重用的代码
Angularjs vs Vue.js
Vue.js 更加灵活,(比起 Angular)更少专制,它能然你按照自己想要的方式构建应用,而非凡事非得 Angular 如此如此。它只不过是一层界面而已,因此你可以拿它作为页面中一个轻量的功能来使用
vue的双向邦定是基于ES5 中的 getter/setters来实现的,它的每个属性都有两个相对应的get和set方法,于是去网上查了查Angular.js双向绑定的实现原理,结果发现与vue完全不同,Angular是用的数据脏检测,当Model发生变化,会检测所有视图是否绑定了相关数据,再更改视图。而Vue使用的发布订阅模式,是点对点的绑定数据。
它的每个属性都有两个相对应的get和set方法,我觉的这是多此一举的,于是去网上查了查Vue双向绑定的实现原理,才发现它和Angular.js双向绑定的实现原理完全不同,Angular是用的数据脏检测,当Model发生变化,会检测所有视图是否绑定了相关数据,再更改视图。而Vue使用的发布订阅模式,是点对点的绑定数据。vue则不需要。因此,vue在性能上更高效,但是代价是对于ie8以下ie8的浏览器无法支持。
脏值检查: angular.js 是通过脏值检测的方式比对数据是否有变更,来决定是否更新视图,最简单的方式就是通过 setInterval() 定时轮询检测数据变动,当然Google不会这么low,angular只有在指定的事件触发时进入脏值检测,大致如下:
DOM事件,譬如用户输入文本,点击按钮等。( ng-click )
XHR响应事件 ( http )
浏览器Location变更事件 (location )
Timer事件(timeout , interval )
执行 digest() 或 apply()
数据劫持: vue.js 则是采用数据劫持结合发布者-订阅者模式的方式,通过Object.defineProperty()来劫持各个属性的setter,getter,在数据变动时发布消息给订阅者,触发相应的监听回调。
Angularjs 拥有许多工具,而如此多的复杂语法有时也会让你感到迷惑。另外一方面,Vue.js 比起 Angular 要简单的多,甚至于要更好。
Reactjs vs Vue.js
React 和 Vue.js 拥有一些类似的功能特性,如:
1) 使用了一个虚拟 DOM
2) 提供了响应式的,并且可组合式的视图组件。
3) 保持对核心库的专注, 而像路由和全局状态管理这样的关注点则交给附带的库来处理
写一个Hello World
React 这样做:
Vue这样做:
这个很简单。使用一堆 script 标签就可以让代码跑起来。从这里可以看出,利用 Vue 的功能特性的好处就是无需学习任何新的技术。