華為開發(fā)者大會2020(Cloud)將于2020年3月27日-28日通過華為云以網(wǎng)上直播的方式呈現(xiàn),這是華為面向ICT(信息與通信)領域全球開發(fā)者的年度頂級旗艦活動。歡迎搜索“HDC”觀看直播!
從軟件工程師產生一個想法,再通過輸入法變成計算機理解和執(zhí)行的程序(應用、服務),這個過程中始終離不開最重要的生產工具 ---- 編碼工具??梢哉f,編碼工具就是軟件工程師手中的生產工具,是IT產業(yè)可以持續(xù)前行的重要生產力之一。從計算機被發(fā)明出來那一天,怎么把一個想法變成可以付諸實現(xiàn)的應用,就是這個產業(yè)一直在面對的問題,就是“怎么干”的問題。從70年代,到今天的20年代,新的計算架構、新的操作系統(tǒng)、新的編程語言、新的開發(fā)方式一直在發(fā)展,作為生產者的人在對接機器算力過程中始終要面對這個繞不開的問題,到底使用什么開發(fā)工具。
70年代,編輯器缺乏年代,編寫代碼是個體力活兒·
關鍵詞:打孔卡,C語言
打孔卡的時代過于久遠,聽說用途很廣泛,包括用來墊蛋糕。當匯編語言成為主流,甚至Unix內核被剛剛誕生的C語言改寫,在單色屏幕上利用文本編輯器來編寫代碼,其實和在老式打字機上打印信件沒有什么不同,唯一的區(qū)別就是在屏幕上打字可以允許你自由的去修改手抖造成的錯誤而不至于重新來過。
80年代,圖形化匱乏年代,讀懂代碼不容易
關鍵詞,DOS,vi,Emacs
個人電腦(PC)開始出現(xiàn),在沒有過多算力可以選擇的年代,“286”、“386”、“486”是這個年代的高頻詞匯。
DOS的普及成就了微軟,基于不同操作系統(tǒng)平臺的各類文本編輯器涌現(xiàn)不斷,軟件工程師們抱著厚厚的《xxx語言程序指南》,在文本編輯器中去編寫一行一行的計算機代碼,而不知道這些輸入的代碼到底能不能運行。最后需要通過命令行的編譯(build)和連接(link)后才能生成一個可以執(zhí)行的文件,然后才會看到結果。當然看到錯誤代碼,然后再去重新寫過,也是在所難免的。我經(jīng)常會看到一種工作方式,就是把代碼編寫出來,然后打印在一摞摞的紙張上面,然后一頁一頁一行一行的去讀,去標記代碼間的調用關系和查找可能存在的缺陷錯誤。這個時期,彩色顯示器還不是那么普及,在文本編輯器或者一摞紙上去讀懂代碼可是個體力活兒。
90年代,圖形化催熟IDE,用熟SDK有點難
關鍵詞:TurboC 2.0(1989),Delphi(1995),Visual Studio(1997)
當我們耳熟能詳?shù)乃懔?ldquo;*86”逐步被“奔騰”替代,桌面操作系統(tǒng)逐漸邁入圖形化的天地。
TurboC 2.0提供了快捷、高效的編譯程序,也成為一個易學、易用的集成開發(fā)環(huán)境(IDE)。開發(fā)者不載需要獨立的編輯、編譯和連接程序,在IDE內即可運行C語言程序。隨著1995年微軟Windows95的大獲成功,圖形化應用以直觀、便捷的特性深入人心,為了更好的開發(fā)基于圖形組件的應用,Borland公司推出了Delphi,微軟的Visual Studio也適時面世。那種圖形化(拖拽組件)的開發(fā)方式,各種風格和用途的單機版桌面應用達到了頂峰。同期的Unix和Linux平臺上用于開發(fā)的Vim和Emacs已經(jīng)集成了大量插件,從編輯器向編輯器+進化了。
不過想要開發(fā)出功能齊備、效果新穎的應用,就必須要非常熟悉語言SDK,這里面最有代表性的msdn不知道有多少程序員要抱著啃的昏天黑地。畢竟互聯(lián)網(wǎng)還不普及,想得到點開發(fā)的心得和樣例,非得從官方提供的文檔下手不可。
00年代,互聯(lián)興起時代,同時掌握多種IDE有點累
關鍵詞:IntelliJ IDEA(2001),Eclipse(2001)
隨著能夠自由接入互聯(lián)網(wǎng)的桌面電腦和便攜電腦越來越多,可以訪問網(wǎng)絡的速度也從最初ADSL的56kb躍升到10Mb和100Mb每秒,互聯(lián)網(wǎng)于我們不再是發(fā)發(fā)郵件那么簡單,大量的信息和媒體資訊也通過網(wǎng)絡源源不斷進入我們的視線,越來越多的在線網(wǎng)站上線,基于網(wǎng)絡的企業(yè)級應用需求量大增。Java和PHP這些平臺兼容良好的高級語言在開發(fā)企業(yè)級應用和Web網(wǎng)站方面開始發(fā)揮優(yōu)勢,尤其是Java幾乎成為開發(fā)企業(yè)級應用的唯一選項,那么針對Java開發(fā)的利器Eclipse和IntelliJ IDEA也走上了歷史舞臺。
毫無疑問,這些大型本地化IDE對特定語言開發(fā)做出了無以倫比的體驗支持,從代碼編寫、調試運行、發(fā)布部署甚至到持續(xù)交付工具鏈,以及通過海量插件對接眾多的第三方系統(tǒng)。這時候開發(fā)不再需要什么“開發(fā)指南”,我們有太多的技術博客、開源項目可以去參考和學習。
一切看起來都很開放,唯獨這些為特定語言量身定制的IDE,不肯接受其他語言的編程習慣,程序員需要具備兩種以上的IDE的使用經(jīng)驗,才能很好的完成項目。
10年代,風氣云涌時代,開發(fā)者卻無法擺脫桌面
關鍵字:云計算,VisualStudio Code
一切都在互聯(lián)網(wǎng)上飛快的流動,應用交付的方式從軟件到服務。軟件部署從本地主機遷移到了云端,業(yè)務上云是這個時代的主旋律。從應用框架,到研發(fā)模式都有了長足進步,我們已經(jīng)可以把從服務規(guī)劃、代碼開發(fā)、測試、發(fā)布、部署、運維、運營的各類活動都放在云端,提升交付效率的持續(xù)交付和DevOps云端工具鏈開始幫助我們在云端建立競爭優(yōu)勢。開發(fā)者開始關注全棧能力,一個程序員需要能夠交付多種語言和框架的代碼才被認為是合格的“全棧工程師”,以往專一特定開發(fā)語言的IDE有點不那么趁手。
Visual Studio Code這種免費開源、生態(tài)齊備、體驗良好的IDE平臺,通過插件可以匹配各類開發(fā)語言,支持各類開發(fā)框架,聯(lián)通各類三方系統(tǒng),開始成為新寵。借助微軟Visual Studio族群的龐大生態(tài),Visual Studio Code開始在全棧交付中獨領風騷。軟件工程師的幾乎全部研發(fā)工作都隨著云基礎設施、云平臺服務和云工具鏈的齊備,整體進入云時代。
唯獨代碼開發(fā),軟件工程師們需要自己的開發(fā)環(huán)境,需要自己熟悉那種編程體驗,不論是辦公室的一臺工作站,還是家里寫字臺上的移動筆記本,總之“開發(fā)環(huán)境在我的機器上,我離不開我的機器”。面對大型本地IDE所需要的強大算力配置,他們被禁錮在了自己的桌面,寸步難離。
20年代,算力革命年代,云端開發(fā)才能展翅高飛
進入2020年,由鯤鵬定義新的第二計算平面登上歷史舞臺,智能終端設備普及率前所未有。大型綜合類網(wǎng)站已經(jīng)逐步被終端應用取代,用戶脫離桌面電腦更多依賴移動設備。云原生應用更需要擺脫本地開發(fā)帶來的各種桎梏,軟件產業(yè)需要生產力有新的飛躍,擺脫本地桌面禁錮,跨越操作系統(tǒng)差異,支持移動化隨時隨地訪問,按需配置極速獲取,支持鯤鵬原生,打通云原生應用的開發(fā)態(tài)和運行態(tài)。
華為云CloudIDE,面向云原生的輕量級WebIDE,使用瀏覽器即可訪問的IDE,3月27日,在華為開發(fā)者大會KeyNote上,華為云DevCloud研發(fā)技術總監(jiān)王亞偉將使用CloudIDE,10分鐘快速開發(fā)部署鯤鵬云原生應用,敬請關注。
(免責聲明:本網(wǎng)站內容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準確性及可靠性,但不保證有關資料的準確性及可靠性,讀者在使用前請進一步核實,并對任何自主決定的行為負責。本網(wǎng)站對有關資料所引致的錯誤、不確或遺漏,概不負任何法律責任。
任何單位或個人認為本網(wǎng)站中的網(wǎng)頁或鏈接內容可能涉嫌侵犯其知識產權或存在不實內容時,應及時向本網(wǎng)站提出書面權利通知或不實情況說明,并提供身份證明、權屬證明及詳細侵權或不實情況證明。本網(wǎng)站在收到上述法律文件后,將會依法盡快聯(lián)系相關文章源頭核實,溝通刪除相關內容或斷開相關鏈接。 )