Bootstrap前端工程师的学识序列

Bootstrap 1

前端开发的中央是HTML + CSS +
JavaScript。本质上它们组成一个MVC框架,即HTML作为音讯模型(Model),CSS控制样式(View),JavaScript负责调度数据和贯彻某种呈现逻辑(Controller)。

HTML


1.标签的分类

  • 标签表示一个要素

  • 按性质划分: Block-Level和Inline-Level

  • 按语义划分:

Headings: h1, h2, h3, h4, h5, h6Paragraphs: pText Formatting: em,
strong, sub, del, ins, smallLists: ul, li, ol, dl, dt, ddTables:
table, thead, tbody, tr, th, tdForms and Input: form, input, select,
textareaOthers: div, span, a, img, HTML5: header, footer, article,
section

2.XHTML

XHTML 于2000年的六月26日变为 W3C 标准。W3C 将 XHTML
定义为新型的HTML版本。XHTML 将逐级代替 HTML。XHTML是因而把 HTML 和 XML
各自的优点加以结合形成的。XHTML 语法规则如下:

  • 属性名和标签名称必须小写

  • 属性值必须加引号

  • 品质依旧不能简写

  • 用 Id 属性代替 name 属性

  • XHTML 元素必须被科学地嵌套

  • XHTML 元素必须被关门

3.标签的语义化为发挥语义而标记文档,而不是为着样式,结构可以的文档能够向浏览器传达尽可能多的语义,不论是浏览器位于掌上电脑照旧最新的桌面图形浏览器。结构可以的文档都能向用户传达可视化的语义,尽管是在老的浏览器,或是在被用户关闭了
CSS
的现代浏览器中。同时结构可以的HTML代码也促进搜索引擎索引你的网站。(web前端学习沟通群:328058344
禁止闲谈,非喜勿进!)

  • 不用采纳table布局,table是用来表格突显的。

  • 毫不随处滥用div标签,div是用来分块用的

  • 永不选拔样式标签,如font, center, big, small, b,
    i,样式可以用CSS来支配,b和i可以用strong和em来替代。

  • 毫不选取换行标签和空格来决定样式,请用CSS。

  • 尽量不要采纳内联CSS

CSS

1.基础

  • 层叠和后续

  • 优先级

  • 盒模型

  • 定位

  • 浮动

2.进阶

  • CSS 7-Up:CSS
    Pepsi-Cola紧要用在此此前端质量优化的一种技术,原理是透过将多张背景图片合成在一张图片上就此减弱HTTP请求,加速载入速度。

  • 浏览器包容性:绝大多数境况下大家须求考虑浏览器的兼容性,方今正值选取的浏览器版本卓殊多,IE6,
    IE7, IE8, IE9, IE10, Chrome, Firefox, Safari。

  • IE HasLayout和Block Format Content:IE HasLayout是一个 Internet
    Explorer for
    Windows的个体概念,它控制了一个元素怎样展现以及约束其包蕴的内容、如何与其余因素交互和建立联系、怎么着响应和传递应用程序事件、用户事件等。那种渲染特性可以经过某些
    CSS 属性被不可翻盘地接触。而有些 HTML
    元素则默认就具备”layout”。如今只有IE6和IE7有这么些几率。BFC是 W3C CSS
    2.1
    规范中的一个概念,它控制了元素如何对其内容展开稳定,以及与其他因素的涉嫌和相互成效。这几个实际上和浏览器的兼容性有关,因为绝一大半的包容性难点都是它们引起的。(web前端学习沟通群:328058344
    禁止闲谈,非喜勿进!)

  • CSS
    Frameworks:CSS框架是一连串CSS文件的集合体,包括了要旨的元素重置,页面排版、网格布局、表单样式、通用规则等代码块,用于简化web前端开发的劳作,升高工作功用。近来广大框架有:

960 Grid System
Blueprint CSS
Bluetrip
Minimum Page

或者一个相比较盛名和极度规的框架是推特(Twitter)的Bootstrap。Bootstrap是便捷支付Web应用程序的前端工具包。它是一个CSS和HTML的集纳,它采取了新星的浏览器技术,给您的Web开发提供了前卫的版式,表单,buttons,表格,网格系统等等。它是按照Less开发的。不帮忙IE6,在IE7和IE8里效果也不咋地。

CSS3:

虽说CSS3还不曾正经成为专业,但是包含IE9+, chrome,
Firefox等现代浏览器都支持CSS3。CSS提供了众多原先需求用JavaScript和切图才能搞定的意义,如今重大功效有:

圆角
多背景

@font-face
动画与渐变
渐变色
Box阴影
RGBa-参与透明色
文字阴影

  • CSS质量优化:CSS
    代码是决定页面展现样式与功能的最直白“工具”,可是在性质调优时他俩一般被
    Web 开发工程师所忽略,而实在半间不界的 CSS
    会对页面渲染的频率有严重影响,越发是对此结构复杂的 Web 2.0
    页面,这种影响尤其不可磨灭。所以,写出专业的、高品质的 CSS
    代码会极大的升高应用程序的频率。

  • LESS and SASS:CSS 预处理器,用来为 CSS
    伸张部分编程的的特性,无需考虑浏览器的包容性难点,例如你可以在 CSS
    中使用变量、简单的程序逻辑、函数等等在编程语言中的一些主导技能,可以让你的
    CSS
    更见简洁,适应性更强,代码更直观等许多利益。SASS基于Ruby开发。LESS既可以在客户端运行,也足以看重Node.js或者Rhino在服务端运行。

javascript


1.基础

  • 数据类型

  • 变量

  • 表明式与运算符

  • 决定语句

  • 函数

  • 异常

  • OO

  • 事件

  • BOM

  • 闭包

2.进阶

  • DOM:DOM即文档对象模型,HTML DOM
    定义了拜访和操作HTML文档的正式措施。大致拥有的现世浏览器都能很好的支撑DOM了。

  • JSON:(JavaScript Object Notation)
    是一种轻量级的数据沟通格式,易于人阅读和编排,同时也易于机器解析和扭转。是眼前事实上数据互换的业内格式,大约所有语言都支持JSON,比XML强太多了。

  • AJAX:即“Asynchronous JavaScript and XML”(异步JavaScript和-
    XML),AJAX并非缩写词,而是由Jesse JamesGaiiett创设的名词,由谷歌发扬光大。用于创建更好更快以及交互性更强的
    Web 应用程序的技艺。

  • JavaScript
    Frameworks:极大简化大家JavaScript编程的工作量,它根本提供了以下多少个紧要职能:
    DOM操作,跨浏览器兼容性,以及程序架构。当然像jQuery它自己其实并不是一个框架,它是一个库(lib)。近日主流的框架或库有如下多少个:

jQuery
YUI
DOJO

  • HTML5:同CSS3看似,即固然尚无成为正式,然而主流的浏览器都支持了。HTML5不是HMTL,纵然也提供了有些新标签,不过它的首要用途仍然JavaScript。HTML5生死攸关提供以下职能:

本土音频摄像播放
Canvas/SVG
地理新闻
硬件加快
地面运行
本地存储
从桌面拖放文件到浏览器上传
语义化标签,Form表单

  • 前者模板:首如若为了缓解复杂的数额拼接难题,可以将模板语言转换化为HTML结构,可以大大简化工作量,同时代码的可维护性得到很大的增进。近年来可比主流前端模板有:

MustCache
JsRender

  • 前端MVC:Web应用的作用越来越强,Javascript代码也更为多,大批量的JS代码要以何种架构来协会就成了一个急于的标题,于是就有人把传统的MVC架构移植到前端来解决那几个题材。近期主流前端MVC框架主要有以下那些:
    (web前端学习调换群:328058344 禁止闲谈,非喜勿进!)

Backbone.js
Spine
YUI
Agility.js
Ember.js
Batman.js
Dojo
AngularJS(MVVM)
KnockoutJS(MVVM)

  • 模块化开发:特点是“模块化开发,按需加载“。那些中CommonJS社团定义了AMD的正规用来规范浏览器端的模块定义。RequireJS和SeaJS是贯彻了英特尔的五个完美的框架。详见:http://www.weakweb.com/articles/341.html

  • JavaScript单元测试:QUnit

  • JavaScript设计形式

  • NodeJS:把JavaScript移植到服务器端了,那样前端和后端就可以使用同样的技术,方便统一费用。而且NodeJS是非阻塞调用的,在特定领域品质是极度强大的。而且那是前端开发人士出动后台开发的好机会,进而前后端统一费用,但又不用去学习其他后台开发语言。

  • ES5:ECMAScript
    5,也就是风靡的JavaScript规范,对以前的JavaScript作了累累创新,伸张了重重新的特点,比如JSONECMAScript
    5,也就是风尚的JavaScript规范,对以前的JavaScript作了很多更上一层楼,伸张了很多新的特色,比如JSON。

Others


  • 响应式设计:伴随着各样智能装备的风靡,响应式设计现在是充裕炎热。在此在此之前做网页只要面向PC机的浏览器,页面一贯定位宽度就行,比如960px,近年来日透过手机的访问量已经超先生过PC机,并且配备的尺寸七种多种,未来会越来越多。在那种背景下,网页帮衬所有设备开展走访是骨干必要了,而响应式设计能很好的化解那几个难点。

  • Http1.1:GET,POST形式,Request/Response 底部,状态码等。

  • Web移动支付:开发情势一般是native的章程仍旧Web情势,作为前端开发人士的话当然是去学习Web移动支付了。PhoneGap是必学的,前端层面的框架如jQueryMobile,
    Sencha Touch, jQTouch等都是科学的选取。

  • 前者安全:随着前端技术的发展,安全题材一度从服务器悄然来临了每一个用户的的前方,盗取用户数量,
    创设恶意的可以自己复制的蠕虫代码,让病毒在用户间传播,使服务器当掉.
    更有甚者可能会在用户不知觉得情状下,让用户成为攻击者,那相对不是骇人听闻。富客户端的应用越来越广,前端的拉萨题材也随即大增。常见的攻击格局有:

  • XSS,跨站脚本攻击(Cross Site
    Script)。它指的是恶意攻击者往Web页面里部署恶意html代码,当用户浏览该页之时,嵌入的恶意html代码会被实践,从而达到恶意用户的与众不相同目标。
  • CSRF(Cross Site Request Forgery),跨站点伪造请求。顾名思义就是
    通过伪造连接请求在用户不知情的状态下,让用户以相好的身份来成功攻击者要求高达的片段目标。
  • cookie威胁,通过取得页面的权位,在页面中写一个概括的到黑心站点的哀告,并带走用户的cookie
    获取cookie后通过cookie 就可以直以被盗用户的身份登录站点。
  • 跨域处理:同源策略规定跨域之间的脚本是割裂的,一个域的台本不可能访问和操作别的一个域的多方属性和章程。所谓的跨域处理就是处在不用域之间的步子相互调用,目前有成百上千艺术来拍卖它。

  • 调剂工具:前端的调剂工具很多,比如Firebug,Webkit主题的web
    inspector, IE的iedeveloper。HTTP相关的fiddler,
    httpwatch等,还有格式化代码的jsbeatutifier,它助长阅读压缩处理过的JavaScript代码。IETester可以东施效颦所有的IE版本,是调节IE包容性的好工具。

  • SEO:搜索引擎优化

  • A/B
    test:确定三个要素或版本(A和B)哪个版本更好,你须要同时实验五个版本。最终,接纳最好的版本选择。

  • 可用性/可访问性:

  • 可用性指的是:产品是还是不是简单上手,用户能不能成功职责,功能怎么着,以及那进度中用户的无理感受可好,是从用户的角度来看产品的身分。可用性好代表产品质量高,是公司的骨干竞争力。
  • 可访问性:上网用户中这些视力受损的人,通过显示屏阅读器使用键盘命令将网页的始末读给他们听。以语义化的HTML(结构和显示相分离的HTML)编写的网页文件,就可以让此类用户更便于导航,且网页文件中的紧要音信也更有可能被这个用户找到。
  • 前者流程/安顿:GruntBowerYeoman现今大致是前者最流行的自动化的门类营造工具

  • 正则表明式

  • 浏览器插件开发

  • 浏览器原理

关系能力

卓越的前端工程师须要所有良好的关联能力,因为你的行事与众多少人的办事不毫不相关系。在其他情形下,前端工程师至少都要满意下列四类客户的必要。
(web前端学习互换群:328058344 禁止闲谈,非喜勿进!)

  • 出品高管——那一个是承受策划应用程序的一群人。他们可以想像出什么样通过应用程序来知足用户需要,以及怎样通过他们安插的格局赚到钱(往往不尽人意)。一般的话,这几个人追求的是加上的功能。

  • UI设计师——这个人负担应用程序的视觉设计和相互模拟。他们关切的是用户对怎么敏感、交互的一向性以及完整的好用性。他们喜爱于流畅靓丽但并不易于完成的用户界面,但考虑难点反复不周密。

  • 项目老董——这么些人负担实际地运行和保证应用程序。项目管理的要害关心点,无外乎正常运作时刻(uptime)——应用程序始终健康可用的时刻、品质和终止日期。项目高管追求的目的往往是竭尽保持工作的不难化,以及不在升级更新时引入新题材。

  • 最后用户——当然是应用程序的重中之重消费者。即使我们不会时时与最后用户打交道,但他俩的反映意见紧要;没人想用的应用程序毫无价值。最终用户必要最多的就是对个人有效的听从,以及竞争性产品所享有的效果。

从某种意义上说,优良的前端工程师就像一位大使,须要每一日抱着外交官的心气来应对每一日的工作。

怎么着提升前端技术

  • Github是一个精美的代码托管网站,大家可以在上创办大家个人的类型,同时也是读书的好地点,大家可以关切其余出色的品种。JSFiddle是一个web开发人士的磨练场,一个方可在诸多下边选用的工具。大家可以用她来在线编辑一些HTML,CSS,javascript片段。你编辑的代码可以与其余人分享,或嵌入你的博客等
  • 读书出色的开源代码
  • 关爱技术发展趋势,精通最新的行业技术,可以经过订阅有名博客,阅读技术情报获取
  • 写博客/记笔记,能够举办文化积累。

前者修炼之路

入门:打基础同时能参加到项目中去。

  • HMTL & XHTML
  • CSS基础知识
  • JavaScript基础知识
  • DOM
  • JSON
  • AJAX
  • JavaScript Frameworks

深切:了解前端大旨技术,可以独自工作。

  • HTML5标签,TML标签语义化
  • CSS Sprite
  • 浏览器兼容性
  • IE HasLayout和Block Format Content
  • CSS3
  • 精通JavaScript Frameworks
  • HTML5
  • 前者模板
  • 前端MVC
  • 模块化开发
  • Http1.1
  • 调节工具
  • 正则表达式
  • 响应式设计

潜出:把握总体前端项目,做任何前端项目标架构师。

  • CSS品质优化
  • LESS and SASS
  • JavaScript单元测试
  • JavaScript设计格局
  • NodeJS
  • ES5
  • Web移动支付
  • 浏览器插件开发
  • 前者安全
  • 跨域处理
  • SEO
  • A/B test
  • 可用性/可访问性
  • 前端流程/安插
  • 浏览器原理

出征:一代宗师。

  • 不停的读书新的技能
  • 互动设计力量,管理力量

前端的前途

  • 走技术流路线,即长远钻研前端相关的各个技能,比如浏览器原理,JavaScript本身的琢磨,W3C各类正规等。前端技术提高火速,各个新技巧屡见不鲜,那条路走下来是很累的。

  • 往交互设计方向走,前端工程师完毕一定水准后互动设计能力也会收获很大的提升,对一切新闻架构的把握能力也会更强。能够很好的弥补视觉设计师在调换设计上的紧缺。那条路实在和第一条是不冲突的,甚至可以驾驭为同一条路。

  • 未来走,即去读书后台开发的技巧,比如JAVA/PHP等,其实绝半数以上观念的后台开发人士就是以此状态,即前后台都做。个人认为这样的话其实早已走回老路了,毕竟前端就是从原来的后台开发那里独立出来的。

  • 往管理方向,比如项目COO,或者索性转行,比如公务员等。

相关文章