藝術(shù)家用科技手段創(chuàng)造藝術(shù)

尤洋表示,藝術(shù)和技術(shù)有很多相同之處,藝術(shù)之美往往需要通過抽象來呈現(xiàn),而技術(shù)之美也由抽象也呈現(xiàn)。

在尤洋看來,計(jì)算機(jī)硬件軟件的發(fā)展歷程,就是通過抽象追求技術(shù)之美的歷程。

從控制通斷的01開始,到匯編語言,再到常用的編程語言,到各類精妙的算法,于是就有了如今的各類應(yīng)用。這是一個(gè)不斷抽象的旅程,也是一個(gè)從繁到簡(jiǎn)、從笨重到輕巧的過程,實(shí)現(xiàn)了技術(shù)之美。

以“抽象”為關(guān)鍵詞,看懂IT技術(shù)快速迭代的根本

類和對(duì)象是面向?qū)ο缶幊痰暮诵?,開發(fā)者用類來創(chuàng)建對(duì)象,依靠邏輯代碼對(duì)輸入的變量進(jìn)行處理后輸出一個(gè)結(jié)果,這就完成了一個(gè)基本功能模塊。多個(gè)基本模塊就可以構(gòu)成一個(gè)組件,對(duì)功能進(jìn)行封裝的過程就是一次抽象。

任何一個(gè)應(yīng)用都是多個(gè)組件的集合,組件拆分后又是一些更細(xì)粒度的組件或軟件包。去年熱議的Log4J就是一個(gè)軟件包,軟件包本身就是一堆功能的集合,軟件包本身就是一次抽象,而是用軟件包構(gòu)建成應(yīng)用的過程也是一次抽象。

優(yōu)秀的程序開發(fā)者都善于抽象總結(jié),以日志框架為例,常用的除了Log4J,還有JDKLog、LogBack和SLF4J。理論上,普通開發(fā)者也可以自己編寫日志框架,但如果想加快開發(fā)速度,就可以直接用這些框架,這就是抽象的意義。

前人的積累為后來者所用,同時(shí),不斷加入新的創(chuàng)新,周而復(fù)始,無窮無盡的后來者能一直站到前人的肩膀上。

比如,20多年前,如果我要搭建一個(gè)電商網(wǎng)站,需要準(zhǔn)備用于計(jì)算的服務(wù)器、用于數(shù)據(jù)傳輸?shù)木W(wǎng)絡(luò)和用于數(shù)據(jù)存儲(chǔ)的系統(tǒng),還需要開發(fā)者來開發(fā)復(fù)雜的電商系統(tǒng)平臺(tái)。

如果一切全靠自己,普通小團(tuán)體根本無法完成如此浩大的工程。

而在如今的云計(jì)算時(shí)代,一個(gè)人分分鐘就能搭建計(jì)算存儲(chǔ)和網(wǎng)絡(luò)等資源,分分鐘構(gòu)建應(yīng)用開發(fā)和部署環(huán)境,分分鐘構(gòu)建起一個(gè)擁有多種功能的電商平臺(tái)。

公有云服務(wù)將“抽象”推到了一個(gè)極致,而亞馬遜云科技是其中的佼佼者。

亞馬遜云科技的科技美學(xué)

在亞馬遜云科技看來,抽象成就技術(shù)之美,而技術(shù)之美成就自由構(gòu)建。

抽象成就技術(shù)之美,意味著開發(fā)者不需要懂底層硬件,可以理直氣壯地說“不會(huì)修電腦”。而技術(shù)之美成就開發(fā)者自由構(gòu)建愿望,釋放開發(fā)者的創(chuàng)造力。

先來看“抽象成就技術(shù)之美”。

從基礎(chǔ)資源層面來看。亞馬遜云科技發(fā)布對(duì)象存儲(chǔ)Amazon S3、Amazon EC2,將原本需要搬來搬去,需要持續(xù)運(yùn)營(yíng)維護(hù)的硬件變成了召之即來揮之即去的服務(wù),這就是一種抽象。

從應(yīng)用開發(fā)的維度看。消息隊(duì)列服務(wù)Amazon SQS舉足輕重,它可用于應(yīng)用解耦,解耦可以讓開發(fā)者獨(dú)立開發(fā)單個(gè)組件或者功能模塊,相互間沒有影響,從而可以加快應(yīng)用開發(fā)迭代速度。

從亞馬遜云科技大中華區(qū)解決方案架構(gòu)部總監(jiān)代聞的介紹中了解到,亞馬遜云科技推出了兩類代碼:一類叫應(yīng)用代碼(Application Code),一類是管理代碼(Infrastructure as Code)。

應(yīng)用代碼(Application Code)對(duì)云上計(jì)算環(huán)境的抽象,就是要不斷簡(jiǎn)化底層復(fù)雜性,從虛擬服務(wù)器,到容器,再到Serverless技術(shù),計(jì)算的靈活性大大提升,管理的復(fù)雜度大大降低。

管理代碼(Infrastructure as Code),解決的是云上數(shù)據(jù)庫、大數(shù)據(jù)、機(jī)器學(xué)習(xí)、安全等資源和服務(wù)的自動(dòng)化問題。比如,Cloud Development Kit(CDK)能讓開發(fā)者用最熟悉的代碼來對(duì)云資源進(jìn)行編排管理。

再來看“技術(shù)之美成就自由構(gòu)建”。

代聞提到了三點(diǎn):

第一,架構(gòu)典范之美。架構(gòu)的變化主要指的是從單體應(yīng)用開始,不斷解耦,演變成現(xiàn)如今非?;鸬奈⒎?wù)。另外,開發(fā)實(shí)踐中的架構(gòu)設(shè)計(jì)和架構(gòu)原則也包含其中,這部分,亞馬遜云科技也有心得和經(jīng)驗(yàn)可以分享。

第二,組件抽象之美。這里主要指的是,使用亞馬遜云科技的開發(fā)者,可以為任何架構(gòu)的應(yīng)用配備合適的資源,無論是EC2虛擬機(jī)資源,還是容器資源,或者是無服務(wù)器的資源。

第三,流程靈動(dòng)之美。這里指的是簡(jiǎn)潔而靈活的開發(fā)和運(yùn)維流程,它可以支撐應(yīng)用持續(xù)迭代。

以上就是亞馬遜云科技的“科技美學(xué)”。

分享到

zhupb

相關(guān)推薦