全棧開發技術棧---項目實踐一

經過學習、應用nodejs推進了公司的先後端分離,寫了幾篇分享,有網友反饋說這個技術棧拉的長了,如何去學習。前端

http://segmentfault.com/a/1190000002978095node

http://segmentfault.com/a/1190000003694736react

技術學習無非就是學一點,用一點,如此反覆而已,不是看一點教程照着作些demo就能夠的,況且不少新技術的教程demo都是彼此複製的。android

技術要學以至用,就是須要應用到實際項目才能融會貫通,但公司項目每每不能知足學習實踐的要求,這也是面試者經常使用會抱怨平臺不足的問題,大部分人都會遇到這種狀況,其實平臺永遠都不足的,須要本身去想辦法解決。能夠模擬一個較實際的項目,將技術加以應用,提供有說服力的數據,分析其優劣,再向公司推廣,這樣纔是可持續的、互利的,我就是這樣在項目中推動了先後端分離實踐,部分系統所有用nodejs+mongodb來完成。webpack

前端作了四年半了,在思考進一步完善技術棧,近來又總結了些技術,準備把個人站點<www.upopen.cn> 重構下,儘可能運用所學技術,如若效果不錯,再運用到公司項目裏。nginx


站點規劃以下:git

功能:
用戶註冊、登陸、管理
文章分類、發佈、編輯、靜態化、評論
後臺管理
...web

客戶端:
PC端
微信端 - 新增會員綁定
APP端 - react native,涵蓋 IOS / android面試

總體採用先後端分離形式:
接收、分析客戶端請求的前端服務
操做數據庫的後端服務
後端也是用nodejs實現,這樣分離是爲了項目中的實際應用。redis

預計會用到的技術點:

開發系統:ubuntu
靜態服務器:nginx
數據庫:mongodb
緩存服務器:redis
版本控制器:git
開發語言:nodejs

頁面端:
組件開發:react.js
模塊加載:webpack
響應式:bootstrap
編輯器:markdown

服務端:
http框架:express
模塊引擎:ejs
調用工具:inspector
日誌:log4js
郵件:node-mailer
實時通信:socket.io
單元測試:

should.js - 斷言模塊
supertest - HTTP測試
mocha - 測試插件
istanbul - 覆蓋率
karma - 自動化

語法檢測:jshint
代碼壓縮:uglify
項目構建:gulp
項目監聽:node-dev
進程守護:pm2
...

安全機制:防止 XSS / CSRF攻擊,作數據加密,用戶信息用https協議傳輸

實踐網頁最佳性能加載

相關文章
相關標籤/搜索