WEB前端的三生三世
项目起源
图片的形式具有诸多的不便。缺失源图的我们,无法为此图贡献些什么,随着时间的迁移,或许有些技术点会发生改变,所以有了这个 GitHub 项目。我们可以通过协作的方式来共同维护这个项目。Git 的历史记录也可以见证前端行业的一些变迁。
前端开发知识结构
前端工程师
- 浏览器
IE6 / 7 / 8 / 9 / 11 / Edge (Trident)
Firefox (Gecko)
Safari (WebKit)
Opera (Blink)
- 编程语言
- 切页面
PhotoShop / Paint.net / Fireworks / GIMP / Sketch / illustrator
- 开发工具
// 编辑器和IDE
Atom (辣鸡)
Visual Studio / Visual Studio Code
// 调试工具
// 版本管理
Github / GitLab / Bitbucket / Gitorious / GNU Savannah / Launchpad / SourceForge / TeamForge
- 代码质量
// Coding style
CSSLint
Markup Validation Service
HTML Validators
// 单元测试
QUnit/Jasmine
Mocha / Should / Chai / Expect
// 自动化测试
WebDriver / Protractor / Karma Runner / Sahi
- 前端库/框架
jQuery / Underscore / Mootools / Prototype.js
Backbone / KnockoutJS / Emberjs
- 前端标准/规范
HTTP/1.1: RFCs 7230-7235 ( 废了)
W3C: DOM/BOM/XHTML/XML/JSON/JSONP/…
- 性能
SEO ( 自行学习 太多内容跟运营相关)
- 编程知识储备
- 部署流程
// 压缩合并
// 文档输出
Dox / Doxmate / Grunt-Doxmate
// 项目构建工具
- 代码组织
// 类库模块化
YUI3模块
请输入链接描述
// 业务逻辑模块化
// 文件加载
// 模块化预处理器
- 安全
- 移动Web
- 前沿技术社区/会议
D2 / WebRebuild
NodeParty / W3CTech / HTML5梦工厂
- 计算机知识储备
算法原理 ( 涵盖太多了 如 SIFT算法 / 压缩算法 / RSA算法 / GBDT算法等)
- 软技能
知识管理 / 总结分享 ( 印象笔记神器 )
沟通技巧 / 团队协作 ( 本博客很多关于协作与产品文章 )
需求管理与控制 ( 产品经理技能 )
- 可视化
- 后端工程师
// 编程语言
C/C++/Java/PHP/Ruby/Python/… ( 看你兴趣爱好 )
- 网页服务器
- 数据库
MySQL / PostgreSQL / Oracle / DB2
- 数据缓存
- 文件缓存/代理
- 操作系统
Unix / Linux / OS X / Windows ( 部署环境与开发环境都需要, 建议使用linux )
- 数据结构
前端书籍推荐
★ 越少越简单,越适合入门, ★多的要么是难度比较高, 要么是比较适合在后面看, 比如讲性能之类的书。
- CSS
CSS权威指南 (第3版)★★
精通CSS ★★★
- JavaScript
锋利的jQuery ★★
高性能JavaScript ★★★
JavaScript语言精粹 ★★★
JavaScript权威指南 ★★★
编写可维护的JavaScript ★★★
Secrets of the JavaScript Ninja ★★★
JavaScript模式 ★★★
JavaScript设计模式 ★★★★
- 性能实践
Web性能实践日志 ★★★
Web性能权威指南 ★★★
- 版本控制工具
版本控制之道 (git) ★★
Pro Git ★★★
Git权威指南 ★★★★
- 后端书籍推荐
// Linux管理
Linux Network Administrator’s Guide
// Linux编程
The Linux Programming Interface
// C/C++
The C++ Standard Library – A Tutorial and Reference
The C++ Standard (INCITS/ISO/IEC 14882-2011)
- 前端工作面试