本文不會深刻到技術細節,更多的是對前端開發中數據形態的思考javascript
前端開發的職責,籠統的分爲兩類前端
採集人機交互java
數據可視化瀏覽器
咱們之前端爲邊界向用戶提供咱們的能力,前端是向用戶提供功能的入口,用戶將本身的想法經過人機交互描述給系統,系統響應知足客戶。在這個過程當中,前端扮演者重要的人機交互數據採集的角色、反饋用戶操做想法的角色。而對計算機而言,一切都已數據的形式來傳輸。網絡
在這其中,數據也分爲兩類:前端工程師
前端開發人員控制着這條雙向的數據流。操作系統
在系統中數據又以何種方式存在,又以何種方式在傳遞。ip
數據的任何形態都須要有載體,數據的傳遞須要有軌道。在計算機中的一切行爲都脫離不開網絡七層模型。物理層、數據鏈路層、網絡層、傳輸層、會話層、表示層、應用層,咱們能夠從每一層的各類協議上知道數據的物理形態、知道數據如何傳輸。對於前端工程師而言,下六層不是咱們關注的重點,前端的一切都運行在應用層,那麼在應用層中前端數據又是什麼形態?開發
當前端系統在運行的時候,數據都存在瀏覽器中,瀏覽器就是前端操做系統,前端的一切數據採集行爲、數據變換、數據操做行爲都在瀏覽器中進行,瀏覽器是一切的載體。編譯器
計算機識別機器語言,咱們經過解釋器或者編譯器將高級語言轉換爲機器語言。瀏覽器將腳本語言編譯成字節碼運行,前端開發使用javascript腳本語言編寫應用程序,在瀏覽器中將js即時編譯爲字節碼執行。在這個層面上,前端的載體即是高級語言,數據也依次存在。
(後續)