自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

漫談:從全棧開發(fā)到技術(shù)架構(gòu)

開發(fā) 前端
從能夠完成基本功能的全棧開發(fā),到能處理復(fù)雜場景的技術(shù)架構(gòu),就是web開發(fā)程序員的成長路徑了。

[[416777]]

前端、客戶端主要是負責(zé)構(gòu)建和用戶打交道的界面,也就是 UI(user interface),而構(gòu)建 UI 需要在不同的位置顯示文字、圖片、視頻等等,要分成不同的區(qū)塊和頁面,為了簡化構(gòu)建 UI 的過程,前端、客戶端都提供了相應(yīng)的布局方案,甚至還提供了 DSL 來簡化布局的描述,比如前端的 html、css,安卓的 xml 都是用來簡化 UI 描述的 DSL。

基于這些布局方案,我們可以快速構(gòu)建出應(yīng)用的界面,但是有的時候這些布局方案不適用,就需要自己繪制,這時候就要通過 canvas、webgl 的方式來繪制更靈活的 2d、3d 視圖。安卓、ios等也提供了 canvas 的 api。

繪制界面整體上就分為這兩種,一種是基于各平臺的布局方案的,一種是自己繪制,前者常用來做應(yīng)用開發(fā),后者常用來做游戲開發(fā)和一些可視化。這兩種構(gòu)建UI 的方式區(qū)別還是挺大的,應(yīng)用開發(fā)、游戲(可視化)開發(fā)是兩條不同的路。

基于瀏覽器的 dom 和 css 的布局方案的,也就是基于 dom 的,可以使用一系列 dom api 來操作 dom,然后重新布局和繪制,通過這種方式來做各種交互。

而不基于 dom 的繪制方案,也會維護一套對象體系,比如 stage、sprite 等,然后在修改了對象的屬性之后,重新繪制到 canvas。

繪制時需要各種資源還有數(shù)據(jù),而提供這些資源和數(shù)據(jù)的就是后端,后端通過 http、websocket 等方式來傳輸繪制需要的資源和數(shù)據(jù),資源存在靜態(tài)服務(wù)器,托管在 CDN,數(shù)據(jù)都存在數(shù)據(jù)庫里,根據(jù)不同的請求參數(shù)來進行資源的 CDN 的查找和數(shù)據(jù)的 CRUD,然后提供給前端。

隨著應(yīng)用規(guī)模的上升,后端的提供數(shù)據(jù)的服務(wù)器和提供資源的 CDN 都會做分布式,通過部署在不同地區(qū)的多臺機器來保證效率和穩(wěn)定。

這就是 web 應(yīng)用運行的基本流程。

從開發(fā)到部署運行是有個過程的,這個過程就是軟件工程的生命周期,從一次開發(fā)完所有功能的瀑布,到快速迭代的敏捷,從手動執(zhí)行構(gòu)建和部署,到完全自動化的 devops,工程效率是越來越高的,這是一個必然的趨勢。

作為 web 應(yīng)用的開發(fā)者,要掌握前端的兩種繪制界面的方式,掌握后端的數(shù)據(jù)庫和 CRUD 以及提供接口給前端,掌握 CDN 的部署、后端服務(wù)的部署,如果應(yīng)用規(guī)模大了以后還要掌握各種中間件和分布式的技術(shù)。此外,還要掌握 devops 的自動化的工具鏈。這些技能掌握之后,就是一個全棧開發(fā)者了。

在完成功能的基礎(chǔ)上,對于比較復(fù)雜的場景,需要做代碼的設(shè)計,也就是架構(gòu),保證隨著迭代代碼復(fù)雜度不會失控。相對來說,后端的復(fù)雜場景多一些,前端相對較少,所以后端談架構(gòu)比較多,但前端也有一些復(fù)雜場景需要架構(gòu)設(shè)計,比如微前端,比如 vscode 的 ioc、service、多進程劃分等。

從能夠完成基本功能的全棧開發(fā),到能處理復(fù)雜場景的技術(shù)架構(gòu),就是web開發(fā)程序員的成長路徑了。

【編輯推薦】

 

責(zé)任編輯:姜華 來源: 神光的編程秘籍
相關(guān)推薦

2024-07-25 08:43:35

2012-11-28 01:55:07

軟件測試

2018-05-16 16:13:49

開發(fā)架構(gòu)師轉(zhuǎn)型

2017-04-12 14:45:20

數(shù)據(jù)架構(gòu)數(shù)據(jù)源

2022-02-21 07:55:03

Web3數(shù)字貨幣Web2

2024-11-26 00:40:05

2009-07-19 22:11:50

全光網(wǎng)絡(luò)光通信技術(shù)光交換

2021-04-11 07:33:03

開發(fā)Vue技術(shù)棧js

2020-07-10 11:12:00

公章技術(shù)騰訊

2019-10-08 09:29:41

架構(gòu)代碼業(yè)務(wù)邏輯

2013-08-21 14:41:48

移動應(yīng)用開發(fā)移動應(yīng)用市場推廣App推廣

2017-07-26 13:51:19

前端JavaScriptTypeScript

2017-08-07 18:45:51

前端JavaScript技術(shù)棧

2015-08-04 09:40:10

Python大數(shù)據(jù)全棧式

2022-04-13 08:00:00

Hilla開發(fā)Java

2023-08-21 09:51:57

全棧軟件開發(fā)

2010-09-01 09:09:37

DevOps敏捷運維敏捷開發(fā)

2021-11-16 13:46:29

移動應(yīng)用安全應(yīng)用程序

2024-01-05 00:29:36

全鏈路灰度發(fā)布云原生
點贊
收藏

51CTO技術(shù)棧公眾號