鏈接:https://www.zhihu.com/question/33179506/answer/75015013
來源:知乎
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。
讀史使人明智。——弗蘭西斯.培根
學習歷史,
可以幫助我們看清現在的決定,
並為以后的發展做好准備。
前端技術,是界面技術的一種應用。
字符界面DOS
圖形界面GUI
瀏覽器界面Browser
前端項目,屬於B/S類型的平台體系結構。
文件/服務器F/S
客戶端/服務器C/S
瀏覽器/服務器B/S
JavaScript,是最流行的客戶端技術,
其他的還有,Java-Applet Flash ActiveX Silverlight
Web前端,是網頁技術一個發展階段,
在這個過程中,服務器端經歷了,CGI,Web框架,MVC,
客戶端經歷了,HTML,CSS,AJAX,前端MVC,前端組件化。
JavaScript也推廣到了服務器端,
服務器端腳本Node.js,
數據庫MongoDB,
WebAppReact-Native,
桌面應用nw.js
總結
前端技術是一個處理人機交互的關鍵環節,
各種技術都匯聚於此,
隨着雲計算需要,以及移動設備的出現,
前端已經變的越來越豐富多彩,
大有平分天下的趨勢。
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
前端技術棧
語言只是一種工具,對一個聰明的程序員來說,用沒用過什么工具主要是由他原來的工作需要決定,並不能代表他全部的技能。
——請不要說自己是XX程序員
前端技術浩如煙海,
單純JavaScript語言來說,也有數不清的細節,
為了有一個整體的印象,我們分類來看。
精一行,必先通十行。
瀏覽器環境IE6~8 IE9+ Chrome Firefox Safari Opera Edge
HTTP協議URI Cache Session Cookie Request Response
HTMLW3C HTML4.01 HTML5 DOM 語義化
CSSCSS1~3 選擇器 盒模型 Flex 媒體檢測 響應式 渲染引擎
JavaScriptEcmaScript3~5~6 Lexical-scope prototype-chain AJAX js引擎
編輯器Emacs Vim WebStorm Atom Sublime-Text
發布部署合並 壓縮 單元測試 Node.js Grunt Gulp Yeoman Phantom JSLint
框架類庫jQuery Zepto UnderScore Backbone Knockout React AngularJS
模塊管理CommonJS Webpack
UI框架BootStrap SemanticUI jQueryUI Foundation
推送技術WebSocket 輪詢 長連接
跨域技術iframe JSONP CORS
數據可視化D3 Echarts HighCharts Canvas
異步編程Promise $.Deferred Generator
CSS預處理器LESS SASS Stylus
客戶端模板Handlebars Haml Jade Mustache
相關語言CoffeeScript TypeScript Dart WebAssembly
WebApp/PCReact-native ionic
以上提到的這些,幾乎成了前端程序員的標配了,
所以,我們需要很努力,才不會被淘汰。
JavaScript是一個動態弱類型的,原型繼承的,函數式的編程語言,
掌握它並不簡單,也為了與服務器端程序員愉快的溝通,
我們還要再學習一些編程語言。
C/Rust/Go
C#/Java
Scheme/Haskell
PHP/Python/Ruby
Prolog/Erlang
包括命令式,面向對象,函數式,邏輯式,
各種典型的編程泛型。
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
少爭論多讀書
思而不學則殆。——孔子
我們之所以迷惑,不是因為缺少思考,
而是缺少學習。
前端的書籍越來越容易找到了,
除了EmcaScript語言規范之外,還有一些有趣的讀物。
JavaScript權威指南
JavaScript高級程序設計
JavaScript語言精粹
JavaScript模式
JavaScript DOM高級程序設計
高性能JavaScript編程
JavaScript異步編程
JavaScript忍者的秘密
基於MVC的JavaScript Web富應用開發
jQuery權威指南
犀利開發jQuery內核詳解與實踐
jQuery Mobile權威指南
用AngularJS開發下一代Web應用
Node.js開發指南
高性能網站建設指南
響應式Web設計
快速軟件開發
測試驅動開發
重構
人月神話
敏捷軟件開發:原則,模式與實踐
面向模式的軟件架構
計算機程序的構造與解釋
讀書是一個愉快的過程。
