【引向】全棧開發工程師之路

全棧工程師,也叫全端工程師。是指掌握多種技能,並能利用多種技能
獨立完成產品的人前端


技術棧

  • 界面設計 Axure
  • 前端開發 HTML5+CSS3
  • 後端開發 Node.js Express Koa
  • 數據庫 Mysql Mongodb Redis
  • 移動端 Ionic
  • Restful API
  • OAuth QQ第三方認證
  • 單頁應用 AngularJs
  • WebSocket
  • 微信開發
  • 設計模式

基礎篇

  • NODE基礎
  • Javascript高級
  • 面向對象
  • 閉包
  • 做用域
  • this
  • 執行上下文
  • ......

提升篇

  • GIT 原理解析與最佳實踐
  • ES6+Gulp+Webpack+ ReactJS 高級
  • React Native 實戰
  • AngularJS 高級
  • 微信開發
  • OAuth QQ第三方認證
  • Restful API

Node是什麼

  • Node.js是一個讓JS能夠運行在瀏覽器以外的服務器端的平臺它實現了諸如文件系統、模塊、包、操做系統API,網絡通訊等核心JS沒有或不完善的功能
  • 它摒棄傳統平臺依賴多線程來實現高併發的設計思路,而採用單線程,異步式I/O,事件驅動式的程序設計模型
  • Node.js使用了來自於Google ChromeV8引擎。V8是目前世界上最快的Javascript引擎

同步和異步

同步是指發起調用以後主線程只能掛起
異步是指發起調用以後主線程能夠作別的事情node

什麼是I O

I/O輸入/輸出(Input/Output)sql

node.js的優勢

Nodejs基於Javascript語言
統一公共類庫,代碼標準化
Nodejs選擇了目前最快的瀏覽器內核V8作爲執行引擎
Nodejs的社區很是活躍數據庫

js模塊

不足

js沒有模塊系統,不支持封閉做用域或依賴管理
沒有標準庫,沒有文件系統API
沒有包管理系統,不能自動加載和安裝依賴npm

commonjs規範

一個 node.js由大量模塊組成, 每一個JS文件都是一個模塊
實現了require 方法,npm基於commonjs 實現了自動加載和安裝
依賴後端

模塊和包的優勢

增長內聚性,有助分工協做
方便重構
提升代碼質量設計模式

模塊使用

定義模塊
導出模塊 (導出類和對象或常量)
使用模塊瀏覽器

什麼是先後端分離

前端:負責View 和Controller 層。
後端:只負責Model 層,業務和數據處理等。服務器

爲何要先後端分離?

後端爲主的MVC,遇到同步異步結合的頁面溝通麻煩
Ajax爲主SPA 型開發模式, 若是一個頁面請求過多則性能較低
先後端職責不清
限制了前端的發揮空間微信

基於Node.js的先後端分離

後端提供API數據接口
前端負責渲染模板和頁面

案例

抓取百度百家生成新聞列表

相關文章
相關標籤/搜索