程式員需要了解的常見的英文縮寫的含義
1. API
應用程式接口(英語:Application Programming Interface,簡稱:API),又稱為應用程式設計接口,就是軟體系統不同組成部分銜接的約定。由于近年來軟體的規模日益龐大,常常需要把複雜的系統劃分成小的組成部分,程式設計接口的設計十分重要。程式設計的實踐中,程式設計接口的設計首先要使軟體系統的職責得到合理劃分。良好的接口設計可以降低系統各部分的互相依賴,提高組成單元的内聚性,降低組成單元間的耦合程度,進而提高系統的維護性和擴充性。
2. ACID
ACID,是指資料庫管理系統(DBMS)在寫入或更新資料的過程中,為保證事務(transaction)是正确可靠的,所必須具備的四個特性:原子性(atomicity,或稱不可分割性)、一緻性(consistency)、隔離性(isolation,又稱獨立性)、持久性(durability)。
3. AJAX
AJAX即“Asynchronous JavaScript and XML”(異步的 JavaScript 與 XML 技術),指的是一套綜合了多項技術的浏覽器端網頁開發技術。
4. CAS
比較并交換(compare and swap, CAS),是原子操作的一種,可用于在多線程程式設計中實作不被打斷的資料交換操作,進而避免多線程同時改寫某一資料時由于執行順序不确定性以及中斷的不可預知性産生的資料不一緻問題。 該操作通過将記憶體中的值與指定資料進行比較,當數值一樣時将記憶體中的資料替換為新的值。
集中式認證服務(英語:Central Authentication Service,縮寫CAS)是一種針對網際網路的單點登入協定。它的目的是允許一個使用者通路多個應用程式,而隻需提供一次憑證(如使用者名和密碼)。它還允許web應用程式在沒有獲得使用者的安全憑據(如密碼)的情況下對使用者進行身份驗證。“CAS”也指實作了該協定的軟體包。
5. JSON
JSON(JavaScript Object Notation)是一種輕量級的資料交換語言,以文字為基礎,且易于讓人閱讀。盡管 JSON 是 Javascript 的一個子集,但JSON是獨立于語言的文本格式,并且采用了類似于 C語言 家族的一些習慣。
6. POJO
POJO(Plain Ordinary Java Object)簡單的 Java 對象,實際就是普通 Java Beans。使用 POJO 名稱是為了避免和 EJB 混淆起來,而且簡稱比較直接。其中有一些屬性及其 getter setter 方法的類,沒有業務邏輯,有時可以作為VO(Value Object) 或 DTO(Data Transform Object) 來使用。當然,如果你有一個簡單的運算屬性也是可以的,但不允許有業務方法,也不能攜帶有 connection 之類的方法。
7. DSL
領域專用語言(Domain Specific Language/DSL),其基本思想是「求專不求全」,不像通用目的語言那樣目标範圍涵蓋一切軟體問題,而是專門針對某一特定問題的計算機語言。
8. GC
在計算機科學中,垃圾回收(英語:Garbage Collection,縮寫為GC)是一種自動的記憶體管理機制。當一個電腦上的動态記憶體不再需要時,就應該予以釋放,以讓出記憶體,這種記憶體資源管理,稱為垃圾回收。垃圾回收器可以讓程式員減輕許多負擔,也減少程式員犯錯的機會。垃圾回收最早起源于LISP語言。目前許多語言如 Smalltalk、Java、C# 和 D 語言都支援垃圾回收器。
9. DML
資料操縱語言(Data Manipulation Language, DML)是 SQL 語言中,負責對資料庫對象運作資料通路工作的指令集,以 INSERT、UPDATE、DELETE 三種指令為核心,分别代表插入、更新與删除,是開發以資料為中心的應用程式必定會使用到的指令,是以有很多開發人員都把加上SQL的SELECT語句的四大指令以“CRUD”來稱呼。
10. DDL
資料定義語言(Data Definition Language,DDL)是 SQL 語言集中負責資料結構定義與資料庫對象定義的語言,由 CREATE、ALTER 與 DROP 三個文法所組成,最早是由Codasyl(Conference on Data Systems Languages)資料模型開始,現在被納入 SQL 指令中作為其中一個子集。
11. DI
Dependency Injection,依賴注入。在軟體工程中,依賴注入是種實作控制反轉用于解決依賴性設計模式。一個依賴關系指的是可被利用的一種對象(即服務提供端) 。依賴注入是将所依賴的傳遞給将使用的從屬對象(即用戶端)。該服務是将會變成用戶端的狀态的一部分。 傳遞服務給用戶端,而非允許用戶端來建立或尋找服務,是本設計模式的基本要求。
12. DNS
域名系統(英文:Domain Name System)是網際網路的一項服務。它作為将域名和IP位址互相映射的一個分布式資料庫,能夠使人更友善地通路網際網路。DNS使用TCP和UDP端口53。目前,對于每一級域名長度的限制是63個字元,域名總長度則不能超過253個字元。
13. GUI
圖形使用者界面(Graphical User Interface)是指采用圖形方式顯示的計算機操作使用者界面。與早期計算機使用的指令行界面相比,圖形界面對于使用者來說在視覺上更易于接受。
14. HTTP
超文本傳輸協定(英文:HyperText Transfer ProtocolP)是一種用于分布式、協作式和超媒體資訊系統的應用層協定。HTTP是網際網路的資料通信的基礎。
15. IOC
控制反轉(Inversion of Control,縮寫為IoC),是面向對象程式設計中的一種設計原則,可以用來減低計算機代碼之間的耦合度。其中最常見的方式叫做依賴注入(Dependency Injection,簡稱DI),還有一種方式叫“依賴查找”(Dependency Lookup)。通過控制反轉,對象在被建立的時候,由一個調控系統内所有對象的外界實體,将其所依賴的對象的引用傳遞給它。也可以說,依賴被注入到對象中。
16. JWT
JSON Web Token(JWT)是一個非常輕巧的規範。這個規範允許我們使用JWT在使用者和伺服器之間傳遞安全可靠的資訊,特别适用于分布式站點的單點登入(SSO)場景。
17. LDAP
輕型目錄存取協定(英文:Lightweight Directory Access Protocol)是一個開放的,中立的,工業标準的應用協定,通過IP協定提供通路控制和維護分布式資訊的目錄資訊。
18. MVC
MVC模式(Model–view–controller)是軟體工程中的一種軟體架構模式,把軟體系統分為三個基本部分:模型(Model)、視圖(View)和控制器(Controller)。MVC 模式的目的是實作一種動态的程式設計,使後續對程式的修改和擴充簡化,并且使程式某一部分的重複利用成為可能。除此之外,此模式通過對複雜度的簡化,使程式結構更加直覺。
19. MVP
Model-view-presenter,簡稱MVP,是電腦軟體設計工程中一種對針對MVC模式,再審議後所延伸提出的一種軟體設計模式。被廣範用于便捷自動化單元測試和在呈現邏輯中改良分離關注點(separation of concerns)。
20. MVVM
MVVM(Model–view–viewmodel)是一種軟體架構模式,有助于将圖形使用者界面的開發與業務邏輯或後端邏輯(資料模型)的開發分離開來,這是通過置智語言或 GUI 代碼實作的。
21. OLAP
聯機分析處理(英語:On-Line Analytical Processing),是一套以多元度方式分析資料,而能彈性地提供積存(英語:Roll-up)、下鑽(英語:Drill-down)、和透視分析(英語:pivot)等操作,呈現內建性決策資訊的方法,多用于決策支援系統、商務智能或資料倉庫。其主要的功能,在于友善大規模資料分析及統計計算,對決策提供參考和支援。與之相差別的是聯機交易處理(OLTP)。
22. SQL
SQL(結構化查詢語言)是一種特定目的程式語言,用于管理關系資料庫管理系統(RDBMS),或在關系流資料管理系統(RDSMS)中進行流處理。
23. SPA
單頁 Web 應用(single page web application),就是隻有一張 Web 頁面的應用,是加載單個 HTML 頁面并在使用者與應用程式互動時動态更新該頁面的 Web 應用程式。
24. SOA
面向服務的體系結構(英語:service-oriented architecture)并不特指一種技術,而是一種分散式運算的軟體設計方法。軟體的部分元件(呼叫者),可以透過網絡上的通用協定呼叫另一個應用軟體元件執行、運作,讓呼叫者獲得服務。SOA原則上采用開放标準、與軟體資源進行互動并采用表示的标準方式。是以應能跨越廠商、産品與技術。一項服務應視為一個獨立的功能單元,可以遠端存取并獨立執行與更新,例如線上上線查詢信用卡賬單。
25. SOAP
SOAP(原為Simple Object Access Protocol的首字母縮寫,即簡單對象通路協定)是交換資料的一種協定規範,使用在計算機網絡Web服務(web service)中,交換帶結構資訊。SOAP為了簡化網頁伺服器(Web Server)從XML資料庫中提取資料時,節省去格式化頁面時間,以及不同應用程式之間按照HTTP通信協定,遵從XML格式執行資料互換,使其抽象于語言實作、平台和硬體。
26. NoSQL
NoSQL 是對不同于傳統的關系資料庫的資料庫管理系統的統稱。
27. XML
可擴充标記語言(英語:eXtensible Markup Language,簡稱:XML),是一種标記語言。标記指計算機所能了解的資訊符号,通過此種标記,計算機之間可以處理包含各種資訊的文章等。如何定義這些标記,既可以選擇國際通用的标記語言,比如HTML,也可以使用像XML這樣由相關人士自由決定的标記語言,這就是語言的可擴充性。XML是從标準通用标記語言(SGML)中簡化修改出來的。它主要用到的有可擴充标記語言、可擴充樣式語言(XSL)、XBRL和XPath等。
28.JPA
JPA 是 Java Persistence API 的簡稱,中文名 Java 持久層 API,是 JDK 5.0 注解或 XML 描述對象-關系表的映射關系,并将運作期的實體對象持久化到資料庫中。