highso-fe / highso-fe-blog

:books: 嗨学网前端团队技术博客
15 stars 3 forks source link

Web 前端基础知识分享 第一期 #10

Open ghost opened 7 years ago

ghost commented 7 years ago

2017-06-16 发布,最后更新于 2017-06-26

(一)前端领域包括什么?涉及哪些知识点?

(二)前端发展里程碑

  1. 浏览器厂商大战,兼容性问题;设计糟糕的原生 DOM API;HTML Table 布局
  2. JQuery 的横空出世:爽快的 DOM 操作、简洁的语法、华丽的链式 API、解决各种兼容性问题
  3. 前端需要应用架构,光有 DOM 操作还不够,Backbone 出现,把 MVX 概念引入前端领域
  4. Backbone 的视图层依然要手动侦听 model 的变化来做各种 DOM 操作,数据到视图的映射依然频繁。于是开始推崇 MVVM 数据绑定,Angular 火了(同时间段 ES6)
  5. 自动化构建工具 Grunt、Gulp,打包工具:Webpack、模块化 Sea.js、Require.js
  6. React 技术栈、Vue.js;函数式编程思想、数据流管理等等

对比到嗨学网前端所处的历史历程

(三)前端编码意识

在思考如何规范且高效地具体编码前,我们往往先去思考“为什么这样编码,编码时应秉承什么原则”。

1. 合理的目录结构及文件命名

我们往往需要为以下几点选择适用项目的目录结构:

2. HTML 标签语义化

标签的语义

通过标签判断内容语义,例如根据 <h1> 判断出内容是标题,根据 <p> 判断内容是段落、<input> 是输入框等。H5语义化标签(业界没有形成统一使用规范、需要为了兼容引入 shim、区分 <article><section> 是个脑力活儿,所以暂不推荐)

判断是否语义化

去掉样式,只看 HTML,网站依然有很强的可读性和良好的结构。

为什么标签要语义化
  1. 搜索引擎友好,SEO
  2. 更容易让屏幕阅读器读出网页内容(可访问性)
  3. 样式丢失时能让页面呈现清晰的结构(可访问性)
  4. 便于开发团队的维护(可维护性)

ps: 推荐阅读 《编写高质量代码》

本书的核心内容是围绕 Web 前端开发的三大技术要素 — HTML、CSS 和 JavaScript 来深入地探讨编写高质量代码的方法、技巧、规范和最佳实践,从而为编写易于维护的 Web 前端代码打下坚实的基础。

3. 高效渲染且高可维护的 CSS

高可维护
高效渲染

ps: 其他细节见 嗨学网前端开发规范

4. 树立浏览器兼容、适配意识

有哪些需要兼容、适配?
如何兼容、适配?

5. 谨慎地使用第三方库

引入原则
如何评审一个第三方库的项目适用性

6.边界情况的考虑

Eg:

解决思路:找到边界限制点,逐一突破

(四)优秀的开发辅助工具

相比大而全的 IDE,个人更倾向于使用多个小巧灵活、专职负责某个方面的工具进行配合。前端涉及的开发工具很多,编辑器、命令行、设计工具、不同浏览器、版本控制客户端、各种工具网站等 都会使用用到

文本编辑器

Sublime Text 3

http://www.sublimetext.com/

界面简洁清新,拥有丰富的前端编码辅助集成插件,高度定制化,运行速度优秀

Sublime Text 3 配置推荐

ATOM

https://atom.io/

ATOM 与 Sublime Text 功能覆盖很相似,选择 ATOM,往往是因为有这个狂拽富帅吊炸天的插件:Activate Power Mode

WebStorm

https://www.jetbrains.com/webstorm/

Powerful IDE for the modern JavaScript development。WebStorm 为前端而生,专门为 JS 开发做了很多优化,有许多令前端工程师眼前一亮的地方

优势功能:

缺点:

其他工具

(五)优秀的线上资源

语言标准

API 查询

兼容性查询

寻找优秀的开源库

QA 社区

嗨学网前端 Blog

Highso-FE