改變開發者工作方式的15項技術

jopen 11年前發布 | 22K 次閱讀 開發者

  以前,開發人員寫的匯編代碼不僅輕巧而且運行速度很快,所以基本上一個人就可以完成一項開發,有時雇傭幾個人也能夠完成任務。然而,當前出現的 云計算、大數據、虛擬化、移動開發、框架、服務器端 JS 等新技術,正在影響著開發人員的工作方式。近日,InfoWorld 資深記者和著名作者 Peter Wayner 總結了影響開發者工作方式的 15 項技術,而這些技術不僅正在改變著人們基本的開發工作和我們與其他團隊成員之間的合作方式,也正在改變著我們與客戶的交流形式以及我們的編程方式。

  現就對這 15 項技術進行一個全面的梳理,具體內容如下:

  1、持續集成

  持續集成是一種軟件開發實踐,項目的每次集成都可以通過自動化的構建(包括編譯、發布、自動化測試)來驗證集成錯誤,從而盡快發現和修復錯誤。 它主要有減少風險、減少重復過程、任何時間與任何地點能夠生成可部署的軟件、增強項目的可見性、建立團隊對開發產品的信心等優點。

  2、框架

  框架可以處理系統的很多細節問題,比如事物處理、安全性、數據流控制等問題,開發者只需要集中精力完成系統的業務邏輯設計,就可以大大提高開發效率。一個框架是一個可復用的設計構件,它使開發者做到了可以在一個已經實現的通用功能的基礎上進行具體的系統開發。

  3、程序庫

  程序庫是一個可供開發者使用的包括各種標準程序、子程序、文件以及它們的目錄等信息的有序集合,同時它也是用于開發軟件的一個子程序集合,具有發布、替換和二次開發等優點。

  4、應用程序編程接口

  API 即應用程序編程接口,其目的是使得程序開發人員無需訪問程序源碼,無需理解程序內部工作機制的細節,只需通過簡單的接口調用,即可實現訪問程序并實現一定的業務功能。

  5、平臺作為服務(PaaS

  PaaS 是平臺即服務的 意思,是云計算三大服務模式之一,它是一個能夠為企業進行定制化研發的中間件平臺,同時還涵蓋了數據庫和應用服務器等部分。PaaS 平臺還允許用戶或者廠商基于 PaaS 平臺快速開發自己所需要的應用和產品。同時,PaaS 平臺開發的應用還能更好地搭建基于 SOA 架構的企業應用。

  6、瀏覽器

  網頁瀏覽器是一個顯示網頁服務器或檔案系統內的文件,也是可以使用戶與文件發生互動的一種軟件。隨著 Internet 技術的興起,B/S架構相對C/S架構的產品明顯體現出更為方便的特性,它統一了客戶端,將系統功能實現的核心部分集中到服務器上,簡化了系統的開發、維 護和使用。

  7、應用容器

  應用容器可用來實現虛擬化,開發者將他們的應用以及應用所依賴包部署到應用容器中,然后發布到服務器上。應用容器完全使用沙箱機制,相互之間不會有任何接口,幾乎沒有性能開銷,可以很容易地在機器和數據中心運行。

  8、基礎設施即服務(IaaS

  基礎設施即服務(IaaS)是云計算三大服務模式之一,它提供給客戶的是使用處理、存儲、網絡等服務和基本的計算資源。客戶購買服務器、軟件等網絡設備就能夠部署和運行任意軟件,包括操作系統和應用程序。客戶還能夠選擇網絡組件,例如防火墻和負載均衡器。

  9、JavaScript和 Node.js

  JavaScript 時代的核心是事件流,Web 的核心不再充當 HTML 標記,服務器不再單單作為文件傳送者和模板渲染器。服務器的主要作用已經變為傳送應用到客戶端,同時攜帶數據,并由客戶端組織成 DOM;第二個作用是監聽事件流,并高效的返回響應給客戶端。Node.js 提供了一種理想化的服務器端架構,它借助事件驅動,使得非阻塞I/O模型變得輕量和高效,非常適合運行在分布式設備上數據密集型的實時應用中。

  10、二級市場

  二級市場提供了越來越多的插件、擴展組件、程序庫以及其他一些附加軟件,有了這么多的庫和框架,開發人員就可以二級市場去購買所需要的部分,從而減少了代碼開發量,提高了開發效率。

  11、虛擬機

  高級語言虛擬機改變了傳統編譯模式,即編譯過的應用程序被緊緊地綁定到特定的操作系統和指令集架構(ISA)上,并在更高層次上分發程序的代 碼。它第一步生成的可移植中間代碼是相當普通的一種基于棧的虛擬 ISA,虛擬 ISA 就是虛擬機的機器代碼,它被分發到不同平臺上,每個平臺只需實現執行虛擬 ISA 的虛擬機即可。現代的 Java、Ruby、Python、.NET 等都是高級語言虛擬機應用的典型。

  12、社交媒體網站

  社交媒體也稱為社會化媒體、社會性媒體,指允許人們撰寫、分享、評價、討論、相互溝通的網站和技術。社交媒體的產生依賴的是 WEB2.0 的發展,在互聯網的初期,你可以建立自己的網站,等待用戶訪問。但是,越來越多的網站正在出現在 非死book、推ter 和 Salesforce 等社交媒體網站上,我們可以開發一個 非死book 或 Salesforce 的應用,它們能夠讓你的應用融入他們的平臺,帶來更多用戶的訪問。

  13、DevOps工具

  DevOps 是一組過程、方法與系統的統稱,主要用于促進開發、技術運營和質量保障部門之間的溝通、協作與整合。它的出現使軟件行業日益清晰地認識到:要想按時交付軟 件產品和服務,開發和運營工作必須緊密合作。不僅如此,它還能夠實現開發的高度自動化,讓代碼工程師與構建和交付軟件的開發運營環節的銜接更為緊密,實現 了敏捷性和可靠性兩大目標。

  14、GitHub、 SourceForge和代碼分享

  代碼分享網站對開源世界做出了很大的貢獻,在類似 SourceForge 等網站出現之前,開發者分享自己開發的軟件是非常困難的,而現在代碼分享早已成為一個社會化的網絡行為。GitHub、SourceForge 可以為人們提供最棒的資料,并與全球觀眾分享免費服務,這種進步為開源軟件提供了一個集存儲、協作和發布為一體的平臺,同時,集成的很多開放源代碼的應用 程序,為軟件開發提供了整個的生命周期服務。

  15、性能監控

  當前,編程模型已從單一主機模式演變成了網絡互聯的新編程模型,程序的性能瓶頸不再單單由單一主機環境引起,而是有可能是網絡互聯或者數據庫連 接訪問造成的。只通過打印出程序運行的開始和結束時間以及利用簡單的代碼分析器都不能發現程序真正的性能瓶頸,只有利用現代的性能監控工具才能夠跟蹤網絡 連接情況以及程序各個模塊的性能,為程序優化、監控提供了可靠的保障。

來自: InfoQ
                    <span id="shareA4" class="fl">   

                        </span>
 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!