Web開(kāi)發(fā)在過(guò)去20多年時(shí)間里的改變歷史?這個(gè)問(wèn)題可能是我們?nèi)粘W(xué)習(xí)或工作經(jīng)常見(jiàn)到的。希望通過(guò)這個(gè)問(wèn)題能讓你收獲頗深。下面是小編給大家?guī)?lái)的參考內(nèi)容,讓我們一起來(lái)看看吧!
web在過(guò)去20年時(shí)間里改變得相當(dāng)快。越來(lái)越多的邏輯從服務(wù)器端移動(dòng)到了客戶端。不但需要在客戶端編寫更復(fù)雜的JavaScript代碼,而且最近幾年還發(fā)生了一些奇特的事情:JavaScript正在轉(zhuǎn)移到服務(wù)器,而web技術(shù)則往桌面轉(zhuǎn)移。這已經(jīng)不是什么新鮮事了,但20年前誰(shuí)會(huì)想到這種情況?
web改變了,因而我的技術(shù)堆棧也變了。貌似我的堆棧變回到了roots。 20年前,我從HTML和JavaScript開(kāi)始,再到使用VBScript的經(jīng)典ASP。 2001年,我開(kāi)始陶醉于ASP.NET和VB.NET,并用到了產(chǎn)品中,直到2006年底才不再這么干。2007年年底,我開(kāi)始使用C#編寫ASP.NET。HTML和JavaScript仍然參與其中,但多多少少被封裝在第三方控件中,并且jQuery當(dāng)時(shí)是JavaScript的別名。JavaScript的一切都是jQuery。ASP.NET WebForms感覺(jué)巨大又不是很靈活,但它能有效工作。后來(lái)——2010年——我用Silverlight、WinForms和WPF做了很多東西。
ASP.NET MVC出現(xiàn)了,web這個(gè)東西開(kāi)始再次比ASP.NET WebForms感受更自然點(diǎn)。從一個(gè)ASP.NET開(kāi)發(fā)人員的角度來(lái)看,web開(kāi)始變得更好:更加干凈、靈活、輕便和自然。
但也出現(xiàn)了一些新的東西。一些來(lái)自于ASP.NET世界之外的東西。強(qiáng)大的JavaScript庫(kù),如KnockOut、Backbone,以及后來(lái)的Angular和React。第一個(gè)單頁(yè)應(yīng)用程序框架(對(duì)不起,我不想提蹩腳的ASP.NET AJAX…)出現(xiàn)了,UI邏輯從服務(wù)器轉(zhuǎn)移到了客戶端。(好吧,我們確實(shí)在2005年搞回了一個(gè)很酷的SPA,但我們沒(méi)有想過(guò)如何用它創(chuàng)建一個(gè)框架。)
NodeJS通過(guò)在服務(wù)器上使用JavaScript再次改變了世界。你只需要兩個(gè)不同的語(yǔ)言(HTML和JavaScript),就可以來(lái)創(chuàng)建很酷的web應(yīng)用。我不怎么對(duì)NodeJS感興趣,除了在后端使用它,因?yàn)橐恍┕ぞ呋贜odeJS。也許這是一個(gè)錯(cuò)誤,誰(shuí)知道呢; )
現(xiàn)在我們有了ASP.NET Core,這感覺(jué)比傳統(tǒng)的ASP.NET MVC更自然得多。所謂的自然在這種情況下,意味著和編寫傳統(tǒng)ASP的感覺(jué)幾乎相同。這也就是說(shuō)使用無(wú)狀態(tài)的web工作,而不是試圖修復(fù)它。使用Request和Response比傳統(tǒng)的ASP.NET MVC工作起來(lái)更直接,比ASP.NET WebForms甚至就更直接得多。自然并不意味著你必須編寫和傳統(tǒng)Asp同樣非結(jié)構(gòu)化的廢話。 ; )
由于我們已經(jīng)有了非常酷的客戶端JavaScript框架。和簡(jiǎn)化了的、簡(jiǎn)約的服務(wù)器端框架,服務(wù)器部分就被減少到僅僅用于在REST服務(wù)上提供靜態(tài)文件和數(shù)據(jù)。
正是這個(gè)時(shí)候,深入了解TypeScript變得有了意義。但是到這個(gè)時(shí)間點(diǎn)為止,它對(duì)我還沒(méi)有意義。我用JavaScript編寫代碼大概有20年時(shí)間,但我從來(lái)沒(méi)有在單個(gè)項(xiàng)目中寫過(guò)這么多的JavaScript代碼。之后,在過(guò)去幾年時(shí)間里我開(kāi)始使用AngularJS。Angular2是應(yīng)該好好研究TypeScript的一個(gè)原因,因?yàn)楝F(xiàn)在的Angular2完全是用TypeScript寫的。
幾個(gè)星期前,我啟動(dòng)了我第一個(gè)真正的NodeJS項(xiàng)目:一個(gè)使用NodeJS來(lái)為用戶提供高度靈活腳本運(yùn)行時(shí)的桌面應(yīng)用程序。NodeJS提供功能和UI給用戶,所有都是用TypeScript寫的,而不是普通的JavaScript。為什么?因?yàn)門ypeScript有很多意想不到的好處:
仍然可以編寫JavaScript
幫助編寫小的模塊和結(jié)構(gòu)化的代碼
幫助編寫NodeJS兼容模塊
一般說(shuō)來(lái),不需要為每個(gè)模塊寫所有的JavaScript代碼
只要專注于所需要編寫的功能
這就是為什么TypeScript對(duì)我來(lái)說(shuō)是個(gè)大幫手。當(dāng)然類型化的語(yǔ)言在很多情況下也是有用的,但是——使用JS工作了20年——我喜歡隱式的類型JavaScript語(yǔ)言的靈活性,并且我對(duì)它很熟。這意味著,從我的角度來(lái)看,有關(guān)TypeScript的優(yōu)點(diǎn)是,我仍然能用TypeScript編寫隱式的類型代碼,并利用到JavaScript的靈活性。這就是為什么我說(shuō)“仍然可以編寫JavaScript”的原因。
Web技術(shù)改變了,我的技術(shù)堆棧也改變了,工具也是。所有這些東西都變得更為輕巧,連同工具一起??刂婆_(tái)回來(lái)了,IDE變回為它們的root:只不過(guò)是一些有著類似語(yǔ)法高亮和智能感知這些作用的文本編輯器。目前,我更喜歡根據(jù)我工作的項(xiàng)目類型使用有著“瑞士軍刀”之稱的Visual Studio Code或Adobe Brackets。兩者都開(kāi)始變得非常快速,包括一些不錯(cuò)的功能。
使用輕便的IDE令人愉悅。一切都很快,因?yàn)橥ㄟ^(guò)我需要開(kāi)發(fā)的app可以使用機(jī)器的資源,而不必通過(guò)我需要使用來(lái)開(kāi)發(fā)app的IDE。這使得發(fā)展速度快了很多。
現(xiàn)今啟動(dòng)一個(gè)IDE意味著啟動(dòng)cmder(Windows上我最喜愛(ài)的控制臺(tái)),改變項(xiàng)目文件夾,啟動(dòng)控制臺(tái)命令,從而查看typescript文件,保存后編譯。我可以啟動(dòng)另一個(gè)控制臺(tái)來(lái)使用如NPM、gulp、typings、dotnet CLI、NodeJS等工具;以及啟動(dòng)我最喜歡的輕量級(jí)編輯器來(lái)編寫代碼! : )
感謝各位的閱讀!看完上述內(nèi)容,你們對(duì)Web開(kāi)發(fā)在過(guò)去20多年時(shí)間里的改變歷史大概了解了嗎?希望文章內(nèi)容對(duì)大家有所幫助。如果想了解更多相關(guān)文章內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
新聞名稱:Web開(kāi)發(fā)在過(guò)去20多年時(shí)間里的改變歷史-創(chuàng)新互聯(lián)
當(dāng)前鏈接:http://jinyejixie.com/article26/dcgcjg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供關(guān)鍵詞優(yōu)化、網(wǎng)站營(yíng)銷、Google、全網(wǎng)營(yíng)銷推廣、虛擬主機(jī)、ChatGPT
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容