我理解的前端與後端

                 NGINX或者APPCHE做爲前端,而DJANGO、TOMCAT、FLASK做爲後端。php

                 NGINX和APPCHE的做用是做爲後端的緩衝和提供靜態資源的做用,NGINX還有代理服務器(即分發客戶端請求到後端的做用)和負載均衡的做用,前端

         後端做用是處理一些業務邏輯和返回動態網頁。java

         前端開發主要開發內容是:python

         1. UI 主要是作展現性頁面。用 HTML 構建頁面框架(結構),而後用 CSS 調整內容的佈局、字體、顏色等外觀屬性(表現),也會藉助 JSlinux

           (主要是 jQuery)來控制頁面的交互(點擊、觸摸)和數據(行爲)。算法

 

         2. App 方面包含了 UI 的大部分工做,主要目標是讓網頁代替客戶端(Android/iOS app,Windows 客戶端等)。App 與 UI 最大的不一樣,應該
             是相對於表現,對數據更注重一些。可能會用到一些複雜的庫和框架(如 Angular.js),與後端(Server/API)的數據交互會不少。
 
         後端開發主要內容是:

         1 後端開發語言sql

            包括但不限於(php, python, java, scala, go, ruby) 之一。 可以使用一門或者數門語言構造大型應用。docker

         2 運維shell

            瞭解 (ansible, salt, puppet)等自動化運維技術, 瞭解docker, 熟練掌握shell腳本處理線上問題。數據庫

         3 安全

            知道各類安全攻擊方式(xss, csrf, sql注入) 代碼實現可以規避常見的安全漏洞, 處理各類網絡攻擊事件。

         4 數據庫

            知道常見的數據庫的優化以及運維,可以分析sql而且調優使之知足性能

         5 網絡編程

           瞭解linux的網絡模型epoll, 熟練掌握http, tcp/ip協議,而且可以經過抓包方式debug。 熟練掌握linux, 可以在高兵法場景下經過優化內核解決問題。

         6 大數據

           瞭解 (hadoop/storn/spark)技術棧, 可以使用大數據技術棧解決常見的大數據問題

         7 算法和數據結構

           知道常規的算法和數據結構,經過分析代碼能瞭解架構的計算複雜度和性能,並針對性作出優化

         8 機器學習算法

           知道常見的機器學習算法,可以使用機器學習和深度學習解決一些人工智能問題,好比聊天機器人, 反spam, 機器推薦等

         9 搜索引擎

           掌握elasticsearch solr等開源搜索引擎,可以搭建搜索引擎實現各類搜索以及排序任務

相關文章
相關標籤/搜索