Web Application 技术栈

本文只是记录一下我目前接触到的一些web application开发中可能用到的技术,并不全面,也不够详细,仅供参考。

加粗体的是我做架构时比较倾向于去使用的技术。


Front-end development techniques:

-HTML5 https://www.w3cschool.cn/html5/html5-intro.html

-JAVASCRIPT
--ES6,ES7
--Prototype
--Promise
--Observable
--AJAX
--JSON

-STYLE
--CSS
--SCSS
--Bootstrape

-Data Visulization
--SVG https://www.jianshu.com/p/2ea0ec6800d7 If we are not drawing complex chart and in small area, then SVG is preferred. 
--canvas  https://www.jianshu.com/p/7a923524561c SVG vs. canvas: https://www.sitepoint.com/canvas-vs-svg-choosing-the-right-tool-for-the-job/, https://docs.microsoft.com/en-us/previous-versions/windows/internet-explorer/ie-developer/samples/gg193983(v=vs.85)  
--High-chart
--D3 https://github.com/d3/d3/wiki/Tutorials
--Echarts  https://www.jianshu.com/p/068624ce4ffb
--Vis
--Flot

-SPA Framework
--Angular
--React
--Vue

-Modulization
--Gulp
--Webpack
--Parcel


Back-end development techniques:

-Node.js (Async of Node: http://www.ruanyifeng.com/blog/2018/02/node-event-loop.html V8: )

--WEB Framework

---Express

----Middlewares
-----helmet    HTTP Security    https://github.com/helmetjs/helmethttps://www.jianshu.com/p/98955e31df71
-----cookie-parser    Add cookie into req    https://www.jianshu.com/p/25ffa01466f9
-----body-parserParse     req body forapplication/json and application/x-www-form-urlencoded    https://www.jianshu.com/p/828fdf02de06
-----express.static
-----client-sessions    Control client session with cookie    https://www.npmjs.com/package/client-sessions
-----Morgan    HTTP request logger middleware for node.js    http://tostring.it/2014/06/23/advanced-logging-with-nodejs/
-----passport    Authentication    https://www.jianshu.com/p/2a3c178e2e9c
-----cors    Cross-origin Resource Sharing    https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Access_control_CORS
-----csrf    Security - Defense CSRF attack    https://www.npmjs.com/package/csrfhttps://www.jianshu.com/p/b9015484585d
-----express.routers

---KOA2

---Template Language
----hbs    You need add server side logic/data before page is rendered? If yes, use view engine. Otherwise no need, Angular with lazy load works well.    https://www.npmjs.com/package/hbs

----EJS    http://ejs.co/

---MVC framework
----sails

--Logging
---winston    This can be combined with Morgan by streaming    https://github.com/winstonjs/winston


Server

-Linux
-Docker
-ENIGX    http server/Load balancing, L7    https://www.jianshu.com/p/630e2e1ca57f
-F5    Load balancing, commercial, hardware
-LVS    Load balancing, L4, big cluster, open source
-HAProxy    Load balancing, L7
-Lighttpd    Load balancing, L7


CI/CD

-Jeckins
-Udeploy
-GIT
-SONAR


Restful API  http://www.ruanyifeng.com/blog/2014/05/restful_api.html

-JAVA
-Node


Caching

-Redis


Automatic Test

-Headless Chrome    https://hackernoon.com/benchmark-headless-chrome-vs-phantomjs-e7f44c6956c?gi=74ef0491830a
-Protractor
-Karma
-Cucumber
-PhantomJS
-Puppeteer


Protocols

-http
-tcp
-socket


Standards

-ComonJS
-AMD

你可能感兴趣的:(Web Application 技术栈)