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

我所經(jīng)歷的二十年技術(shù)演變,一路狂奔到今天

企業(yè)動(dòng)態(tài)

[[271904]]

 做軟件開(kāi)發(fā)行業(yè)的,都擔(dān)心新技術(shù)浪潮不斷來(lái)襲,把自己拍死在沙灘上,真是是這樣嗎?

我主要做Java后端開(kāi)發(fā),也感受到了其他領(lǐng)域的潮起潮落,給大家分享下自己的看法。

首先我把這些新技術(shù)分為4大類:漸進(jìn)性,顛覆性,基礎(chǔ)知識(shí)和新興技術(shù)。

1. 漸進(jìn)性的技術(shù)

1.1 Java 后端開(kāi)發(fā)

我是Java后端開(kāi)發(fā)背景,所以先從這個(gè)點(diǎn)開(kāi)始。

二十年前,開(kāi)發(fā)Web系統(tǒng)的技術(shù)棧非常簡(jiǎn)單,就是 Servlet + JSP +JDBC , 沒(méi)有那么多層的抽象和封裝。

然后在MVC領(lǐng)域出現(xiàn)了Struts , 在ORM領(lǐng)域出現(xiàn)了Hibernates ,iBatis(MyBatis)。

企業(yè)界曾經(jīng)力推過(guò)EJB, 但是過(guò)于笨重,繁瑣,最終被輕量級(jí)的Spring所替代。

前端的興起,導(dǎo)致MVC中的View被拿走,后端專注于提供接口,輸出數(shù)據(jù)。

應(yīng)用架構(gòu)從單體應(yīng)用,過(guò)渡到微服務(wù),再到Service Mesh。

1.2 View 層

View層最早由后端生成,可用的技術(shù):JSP, Velocity,F(xiàn)reemaker 等。

界面的交互主要是程序員直接用JavaScript 操作DOM, 后來(lái)有了jQuery, Prototype等類庫(kù)的幫助

后來(lái)出現(xiàn)了React , Vue, Angular 等框架,實(shí)現(xiàn)前后端分離。

1.3 編程模型

從基于Servlet的阻塞式模型 , 慢慢過(guò)渡到非阻塞的、事件驅(qū)動(dòng)的、 反應(yīng)式的的模型,如Node.js ,SpringWebFlux , Vert.x等

線程模型:從共享內(nèi)存,逐漸發(fā)展到Actor , Go routine

編程語(yǔ)言從過(guò)程式,發(fā)展到面向?qū)ο螅侔l(fā)展到面向?qū)ο?函數(shù)式

1.4 工程實(shí)踐

從瀑布發(fā)展到敏捷

部署方式:手工安裝 ->持續(xù)集成 -> DevOps

代碼+配置文件 -> 代碼+配置文件+運(yùn)行環(huán)境, 即Docker,然后是 K8s

1.5 總結(jié)

之所以說(shuō)是漸進(jìn)性技術(shù),是因?yàn)檫@些技術(shù)是慢慢發(fā)展起來(lái)的,通常是為了解決原有技術(shù)的痛點(diǎn)問(wèn)題而發(fā)展起來(lái)的。

只要你熱愛(ài)技術(shù),會(huì)一直不斷奔跑,根本就不用懼怕。

例如你學(xué)會(huì)了面向?qū)ο筮@種編程泛型,自然而然地就想去看看函數(shù)式,這樣當(dāng)Java 8中的函數(shù)式編程來(lái)臨的時(shí)候,你肯定不是懼怕,而是欣喜:Java終于支持函數(shù)式了。

再比如你發(fā)現(xiàn)手工做Build費(fèi)時(shí)費(fèi)力,容易出錯(cuò),會(huì)想辦法自動(dòng)化,持續(xù)集成的概念和相關(guān)工具自然而然進(jìn)入你的法眼。

2. 基礎(chǔ)性的技術(shù)

特點(diǎn):基本上沒(méi)怎么變過(guò),只要學(xué)會(huì),就不怕被吃掉。

包括數(shù)據(jù)結(jié)構(gòu)和算法,操作系統(tǒng),計(jì)算機(jī)網(wǎng)絡(luò),組成原理,數(shù)據(jù)庫(kù),編譯原理等。

再加上分布式的基礎(chǔ)知識(shí)

3. 顛覆性的技術(shù):從桌面發(fā)展到互聯(lián)網(wǎng)

由于服務(wù)的用戶規(guī)模完全不同,直接導(dǎo)致所使用的技術(shù)棧有天壤之別。

桌面應(yīng)用主要用VB, Delphi,VC++開(kāi)發(fā)單機(jī)或者C/S應(yīng)用,運(yùn)行在客戶的電腦上。

而互聯(lián)網(wǎng)應(yīng)用使用的則是LAMP,Java,Python等技術(shù),主要運(yùn)行在服務(wù)器端,客戶端變得非常薄只剩一個(gè)瀏覽器了。

互聯(lián)網(wǎng)發(fā)展起來(lái)以后,桌面應(yīng)用的開(kāi)發(fā)極度萎縮,如果沒(méi)有及時(shí)跟進(jìn)轉(zhuǎn)型,肯定被技術(shù)吃掉。

但是這次轉(zhuǎn)型并不會(huì)那么難,因?yàn)閃eb系統(tǒng)剛開(kāi)始的時(shí)候用戶量小,是非常簡(jiǎn)單的,很多桌面開(kāi)發(fā)的程序員都可以輕松轉(zhuǎn)過(guò)來(lái)。

但是,由于和新人站在統(tǒng)一跑線,老家伙的優(yōu)勢(shì)在哪里?

我覺(jué)得在于對(duì)設(shè)計(jì)思想的理解:抽象,分層,異步,模式,OOD...... 這些東西,再加上基礎(chǔ)知識(shí)的實(shí)踐和運(yùn)用,老家伙依然有能力跑到前面。

4. 新興技術(shù)

老的技術(shù)依然存在,但是這些新的方向非常火熱,薪水高,供不應(yīng)求。

4.1 從互聯(lián)網(wǎng)發(fā)展到移動(dòng)互聯(lián)網(wǎng)

這一階段出現(xiàn)了全新的崗位:App開(kāi)發(fā)。所需要的技能得從頭兒開(kāi)始學(xué)習(xí),想轉(zhuǎn)行賺大錢(qián)的老家伙們和新人站到了同一個(gè)起跑線。

但是有些掌握了基礎(chǔ)知識(shí),通用知識(shí)和設(shè)計(jì)思想的老家伙會(huì)跑得更快:他們本來(lái)就對(duì)界面編程很精通,對(duì)于界面布局,事件響應(yīng)等信手拈來(lái),他們對(duì)網(wǎng)絡(luò)編程也很熟悉, 現(xiàn)在只需要在一個(gè)新的框架下,使用新的概念和組件來(lái)完成手機(jī)端的界面和邏輯。

隨著App建設(shè)熱潮的過(guò)去,App開(kāi)發(fā)已經(jīng)逐漸冷卻下來(lái)。

4.2 大數(shù)據(jù),人工智能

大數(shù)據(jù)是新出現(xiàn)的方向,包括大數(shù)據(jù)開(kāi)發(fā),大數(shù)據(jù)分析。

從后端開(kāi)發(fā)轉(zhuǎn)向大數(shù)據(jù)開(kāi)發(fā)不是很難,也有很多成功的案例。需要學(xué)習(xí)Hadoop,Spark,Storm等相關(guān)框架的使用原理,F(xiàn)lume, Kafka等數(shù)據(jù)流工具,爬蟲(chóng),分詞,數(shù)據(jù)可視化等。

相比之前談到的技術(shù),大數(shù)據(jù)分析和人工智能是兩個(gè)“異類”,尤其是人工智能,程序員要想轉(zhuǎn)型到這里領(lǐng)域,需要跨過(guò)它樹(shù)立的數(shù)學(xué)門(mén)檻:統(tǒng)計(jì)學(xué),線性代數(shù),微積分,概率。

現(xiàn)在人工智能非?;馃?,它會(huì)變成一種顛覆性的技術(shù),吃掉前端開(kāi)發(fā)/后端開(kāi)發(fā)/大數(shù)據(jù)開(kāi)發(fā)/App開(kāi)發(fā)嗎?現(xiàn)在看是不可能的,因?yàn)楝F(xiàn)在的AI還不是通用的人工智能,只能在某個(gè)領(lǐng)域內(nèi)產(chǎn)生作用,在大數(shù)據(jù)的基礎(chǔ)上做出分析,找到規(guī)律,做出判斷和預(yù)測(cè)。

而人工智能和大數(shù)據(jù)分析所使用的數(shù)據(jù)其實(shí)來(lái)自于App, 網(wǎng)站,再加上現(xiàn)在慢慢興起的物聯(lián)網(wǎng), 他們不是替代,而是依賴的關(guān)系。

總結(jié)一下,進(jìn)入這個(gè)行業(yè),就需要不斷地夯實(shí)計(jì)算機(jī)基礎(chǔ)知識(shí),在工作中尋找,學(xué)習(xí),實(shí)踐那些穩(wěn)定的知識(shí),然后不斷對(duì)自己做技術(shù)升級(jí),確保在自己的領(lǐng)域能跟上趨勢(shì)。這樣即使轉(zhuǎn)型的時(shí)候,依然可以占據(jù)優(yōu)勢(shì),不被技術(shù)吃掉。

【本文為51CTO專欄作者“劉欣”的原創(chuàng)稿件,轉(zhuǎn)載請(qǐng)通過(guò)作者微信公眾號(hào)coderising獲取授權(quán)】

 

戳這里,看該作者更多好文

責(zé)任編輯:武曉燕 來(lái)源: 51CTO專欄
相關(guān)推薦

2011-08-22 13:23:38

AndroidLinuxLinux內(nèi)核

2015-03-06 09:36:42

雅虎移動(dòng)

2020-09-11 18:13:30

IaaSSaaS騰訊

2020-09-11 22:19:27

IaaSSaaS騰訊

2011-08-22 10:04:31

LAMP架構(gòu)

2014-05-08 15:35:06

思科

2015-08-17 09:45:15

開(kāi)發(fā)游戲

2015-08-17 08:56:45

二十年前游戲開(kāi)發(fā)開(kāi)發(fā)

2018-12-20 10:15:28

機(jī)器人人工智能

2014-07-17 10:59:19

思科人才培養(yǎng)思科

2014-03-26 10:41:04

思科人才培養(yǎng)思科

2016-10-26 10:20:22

2014-08-29 10:21:15

APM應(yīng)用性能管理

2011-03-28 10:52:51

戴爾高效企業(yè)

2014-04-02 13:30:59

思科人才培養(yǎng)思科

2014-04-28 10:43:00

思科人才培養(yǎng)思科

2014-05-12 13:59:23

思科人才培養(yǎng)思科

2010-05-07 10:40:02

惠普ProLiant云計(jì)算

2022-05-27 10:19:59

Node.js前端開(kāi)發(fā)

2020-12-16 17:25:11

鴻蒙HarmonyOS操作系統(tǒng)
點(diǎn)贊
收藏

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