軟件是一個通用術語,為組織的計算機數據和指令的集合,通常分為兩大類:系統軟件,提供非特定任務的基本功能的計算機,它是由用戶的應用軟件來完成特定的任務。
系統軟件是負責控制,集成和管理的計算機系統各個硬件部件,而無需關注低級别的細節,如數據傳輸,讓其他的軟件和系統的用戶看到它作為一個功能單位從内存到磁盤,或渲染上顯示的文字。一般情況下,系統軟件包括操作系統和一些基本工具,如磁盤格式化,文件管理器,顯示管理器,文本編輯器,用戶認證(登錄)和管理工具,以及網絡和設備控制軟件。
應用軟件,在另一方面,是用來完成特定的任務以外隻是運行的計算機系統。應用軟件包括一個單獨的程序,比如一個圖像浏覽器,一個小程序集合(通常被稱為一個軟件包)緊密合作,共同完成某項任務,如電子表格或文字處理系統,一個更大的集合(通常所謂的軟件套件)的相關但獨立的程序包,有一個共同的用戶界面或共享數據格式,如MicrosoftOffice,其中包括緊密結合起來的文字處理器,電子表格,數據庫等;或一個軟件系統,如一個數據庫管理系統,這是一個收集的基本程序,可能會提供一些??其他獨立的應用程序的各種服務。
軟件與編程語言和相關的工具,這可能會在幾個形式:等程序的腳本解釋器,編譯器,連接器和其他工具包和大型套房(通常被稱為集成開發環境),包括編輯器,調試器和其他工具多國語言。
有關軟件的第一個理論是由阿蘭·圖靈提出的,在他1935年的文章可計算的應用程序可判定數(決策問題)。[3]通俗地說,這個詞經常被用來指應用軟件。在計算機科學和軟件工程,軟件是信息處理的計算機系統,程序和數據。學習軟件是計算機科學和軟件工程的學科領域。
随着越來越多的程序進入的境界固件和硬件本身變得更小,更便宜和更快的摩爾定律所預測的,首先考慮的是軟件計算的元素,加入這一行列的硬件。今天,大多數硬件公司有更多的軟件程序員的工資比硬件設計[需要的引證],由于軟件工具,自動化的印刷電路闆工程師的許多任務。就像汽車行業,軟件行業已經從一些有遠見的經營他們的車庫原型。史蒂夫·喬布斯和比爾·蓋茨是他們的時代的亨利·福特和路易斯·雪佛蘭[需要的引證],利用已經俗稱的想法然後才開始的業務。在軟件開發的情況下,這一刻被普遍認為是在20世紀80年代出版的規格為IBM個人電腦公布的IBM雇員菲利普·唐Estridge。今天,他的舉動将被視為一種類型的人群采購。
直到此時,軟件與硬件捆綁在一起的原始設備制造商(OEM),如數據,數字設備和IBM[需要的引證]。當一個顧客買了一台小型機,當時??市場上最小的電腦,電腦并沒有配備預裝軟件,但需要安裝的OEM工程師采用。計算機硬件公司不僅捆綁他們的軟件,他們還放置的WWW.HM888888.ComWWW.HAo1990.infoWWW.HAo126.infoWWW.HAomen998.infoWWW.HAomen77.infoWWW.moneY888.info
WWW.bAijiAle888.infoWWW.bAijiAle666.infoWWW.PAijiu888.infoWWW.123pAijiu.infoWWW.LunpAn888.infoWWW.LunpAn168.info
位置,在硬件上的要求在冷藏空間,稱為一個計算機房。0元,無法要求它作為一種資産(這是類似的流行音樂在那些日子裡融資)的書籍,大多數公司有自己的軟件。當數據介紹了通用數據新星,一家名為Digidyne想用自己的硬件克隆其RDOS操作系統。數據拒絕許可他人使用其軟件(這是很難做到的,因為它是書本上的一個免費的資産),并聲稱他們的“捆綁的權利”。最高法院的先例Digidyne訴通用數據于1985年。最高法院讓一個第9電路決定的立場,和數據一般被最終被迫進入許可的操作系統軟件,因為它被排除,限制的許可證隻DG硬件是一個非法搭售安排。[4]無法維持的損失從律師的費,數據一般由EMC公司被接管。最高法院的裁決使人們有可能價值的軟件,和也購買軟件專利。
今天有很多成功的公司隻銷售軟件産品,但還是有很多常見的軟件許可問題,是由于設計的複雜性和質量很差的文檔,從而導緻專利釣餌。
開放軟件規格和軟件許可的可能性,産生了新的機遇,然後成為了事實上的标準軟件工具,如DOS操作系統,而且各種專有的文字處理和電子表格程序。類似的增長模式,專有的開發方法成為标準的軟件開發方法。
[編輯]軟件類型
位于一個典型的台式電腦上運行時的層結構顯示在操作系統軟件和應用軟件WWW.ErbAgAng666.infoWWW.ErbAgAng.infoWWW.ErsHiYidiAn.infoWWW.men1234.infoWWW.mz999.infoWWW.HHH888.info
WWW.HAomen66.infoWWW.HAomen99.ComWWW.HAomen168.infoWWW.HM1234.infoWWW.queenie998.infoWWW.love168.info
軟件包括所有的各種形式和角色,數字化存儲的數據可以具有和播放的計算機(或類似的系統)中,無論數據是否被用作代碼的CPU,或其他解釋器,或它是否表示其他信息種。軟件涵蓋了廣泛的産品可能使用不同的技術,如普通的編程語言,腳本語言,微碼,或FPGA配置。
該類型的軟件,包括網頁開發語言和框架,如HTML,PHP,Perl中,JSP,ASP.NET,XML,和桌面應用程序,如OpenOffice.org,微軟Word?的語言一樣,C++,Objective-C語言,Java的開發,C#,Smalltalk的。通常運行在底層軟件的操作系統,如Linux或微軟Windows的應用軟件。也被用在視頻遊戲和邏輯系統,汽車,電視機,和其他消費電子産品的配置的部分的應用軟件(或固件)。
實用的計算機系統劃分為三大類[引文需要]:系統軟件,編程軟件和應用軟件的軟件系統,但區别是任意的,而且往往含糊不清。
[編輯]系統軟件
主要文章:系統軟件
系統軟件是計算機軟件,計算機硬件設計工作提供基本的功能,并提供了一個平台上運行的應用軟件。[5][6]系統軟件包括設備驅動程序,操作系統,服務器,公用事業和窗口系統。
系統軟件是負責管理各種獨立的硬件組件,使他們能和諧相處。它的目的是,以表白的應用軟件程序員的往往是複雜的細節正在使用特定的計算機,包括等配件通信設備,打印機,設備的讀者,顯示器和鍵盤,并還進行分區計算機的資源,如内存和處理器時間在一個安全和穩定的方式。
[編輯]編程軟件
主要文章:編程工具
編程軟件工具程序或應用程序軟件開發人員使用來創建,調試,維護,或以其他方式支持其他程序和應用程序的形式。該術語通常指的是相對簡單的程序,如編譯器,調試器,口譯,連接器,文本編輯器,可以結合在一起,完成一項任務,就像一個手可能會使用多個工具來解決物理對象。編程工具的目的是幫助一個程序員在編寫計算機程序,它們可以結合在一個集成開發環境(IDE)更輕松地管理所有這些功能。
WWW.HAomen66.infoWWW.HAomen99.ComWWW.HAomen168.infoWWW.HM1234.infoWWW.queenie998.infoWWW.love168.info
WWW.ToubAo168.infoWWW.ZHenqiAnlongHu.infoWWW.HAomen66.ComWWW.HM1231.infoWWW.HM6789.infoWWW.HM1232.info
主要文章:應用軟件
應用軟件開發執行任何任務,從計算的好處。它是一組程序,允許計算機執行為用戶特定的數據處理作業。這是一個廣泛的類别,涵蓋了多種軟件,包括正在使用的網絡浏覽器顯示該網頁。
[編輯]軟件主題
[編輯]建築
另請參閱:軟件體系結構
用戶經常會看到不同的事情不是程序員。使用現代通用計算機的(反對嵌入式系統,模拟計算機和超級計算機)的人通常會看到三個執行各種任務的軟件平台,應用程序和用戶層軟件。
§平台軟件平台包括固件,設備驅動程序,操作系統,和典型的圖形用戶界面,在總,允許用戶進行交互的計算機及其外圍設備(相關設備)。平台軟件往往捆綁的電腦。在PC通常有能力改變平台軟件。
§應用軟件:應用軟件或應用程序是大多數人的想法時,他們認為軟件。典型的例子包括辦公套件和視頻遊戲。從計算機硬件,應用軟件往往是單獨購買。有時,應用程序捆綁在一起的計算機,但不會改變的事實,他們作為獨立的應用程序運行。應用程序通常是獨立的程序從操作系統,但他們往往是專為特定平台。大多數用戶認為編譯器,數據庫和其他應用程序的“系統軟件”。
§用戶編寫的軟件最終用戶開發的裁縫系統,以滿足用戶的特定需求。用戶軟件,包括電子表格模闆和字處理器模闆。即使郵件過濾器是一種用戶軟件。用戶可以創建這個軟件本身,往往忽略了它是多麼的重要。根據勝任用戶編寫的軟件已經被集成到默認的應用程序包,很多用戶可能不知道之間的區别原始包,與已加入的同事。
[編輯]文檔
主要文章:軟件文檔
大多數軟件軟件文檔,從而使最終用戶可以理解的程序,它做什麼,以及如何使用它。如果沒有清晰的文檔,軟件可以使用,尤其是如果它是非常專業的,比較複雜,如Photoshop或AutoCAD中的。
開發者文檔也可能存在,無論是意見和/或作為單獨的文件中,詳細介紹了如何的程序,可以修改的代碼。
WWW.tiYubocAi123.infoQipAiYouxi.infoWWW.YulepingtAi.infoWWW.HM1616.ComWWW.HM1616.netWWW.HM5858.Com
主要文章:軟件庫
一個可執行程序幾乎總是不夠完整,可直接執行。軟件庫包括可嵌入在其他應用程序中的功能和功能的集合。操作系統包括了許多标準的軟件庫和應用程序往往分布有自己的圖書館。
[編輯]标準
主要文章:軟件标準
由于軟件的設計,可以使用許多不同的編程語言,在許多不同的操作系統和操作環境,需要軟件标準,使不同軟件可以了解和彼此之間的信息交換。例如,從雅虎從微軟Outlook發送的電子郵件應該是可讀的郵件,反之亦然。
[編輯]執行
主要文章:執行(計算)
計算機軟件“裝”到計算機的存儲器(如硬盤驅動器或内存)。一旦加載軟件,計算機能夠執行的軟件。這包括通過指令,通過系統軟件,應用軟件的硬件,最終獲得機器代碼指令。每個指令會導緻計算機進行操作-移動數據,進行計算,或改變控制流的指令。
數據移動通常是在存儲器從一個地方到另一個。有時,它涉及到實現高速的數據在CPU訪問的存儲器和寄存器之間移動數據。移動數據,特别是大量的,可以是昂貴的。所以,這是有時避免數據的“指針”,而不是使用。計算包括簡單的操作如遞增一個變量的值的數據元素。可能涉及許多更複雜的計算操作和數據元素。
[編輯]質量和可靠性
主要文章:軟件質量,軟件測試,軟件可靠性
軟件質量是非常重要的,特别是對商業和系統軟件,如微軟Office,微軟Windows和Linux的。如果軟件出現故障(越野車),它可以删除一個人的工作,使計算機崩潰和做其他意想不到的事情。故障和錯誤,被稱為“錯誤“。發現和消除許多錯誤(調試),通過軟件測試。然而,軟件測試很少-如果有的話-消除所有的bug;,一些程序員說,“每個程序都有至少一個或多個錯誤”(Lubarsky法)。所有主要的軟件公司,如微軟,Novell和Sun微系統公司,有自己的軟件測試部門的具體目标,隻是測試。軟件可以通過單元測試,回歸測試和其他方法進行測試,這是手動完成,或最常見的,自動,由于要測試的代碼量可以相當大。例如,美國航空航天局有非常嚴格的軟件測試程序,用于許多操作系統和通信功能。許多美國航空WWW.HAomen77.ComWWW.HAomenYule.infoWWW.HAomenbet.infoWWW.bbsbocAi.ComWWW.bocAi365.infoWWW.tiYutouzHu.info
WWW.HAomenbAijiAle.ComWWW.zHenqiAn888.netWWW.HM2012.orgWWW.Yule888.orgWWW.HM5858.netWWW.LunpAn168.info
航天局的業務互動和相互識别的命令程序,稱為軟件。這使得許多人在NASA工作的檢查和評估功能系統的整體。包含命令軟件程序,使硬件工程和系統操作更容易發揮作用。
[編輯]許可證
主要文章:軟件許可證
該軟件的許可證為用戶使用該軟件的權利,在許可的環境。一些軟件的許可證時,購買現成的,或與硬件捆綁在一起的OEM許可證。其他軟件自帶一個免費的軟件許可,授予收件人的權利,修改和重新發布軟件。軟件,也可以在免費軟件或共享軟件的形式。
[編輯]專利
主要文章:軟件專利和軟件專利的辯論
軟件可以申請專利的一些,但不是所有的國家,然而,軟件專利是有争議的,在軟件行業中有很多人持有不同的看法。軟件專利的争論是有關該軟件中包含的具體算法或技術,可能不被他人複制,并認為知識産權和版權侵權的嚴重程度。
[編輯]的設計與實現
主要文章:軟件開發,計算機程序設計,軟件工程
軟件的設計和實施取決于上的複雜的軟件。例如,設計和創造的微軟Word軟件将花費更多的時間比設計和開發Microsoft記事本,因為在每一個功能的差異。
軟件設計和創建(編碼/寫/編程)的Eclipse,Emacs的和微軟的VisualStudio,可以簡化程序和編譯的程序的集成開發環境(IDE)。在不同的部分,正如軟件通常是建立在上面現有的軟件和應用程序編程接口(API),底層軟件提供了GTK+,JavaBeans或搖擺等。庫(API)的分類,不同的用途。例如,JavaBean的庫用于企業應用程序設計,設計的圖形用戶界面(GUI)應用程序,如MicrosoftWord中使用Windows窗體庫,用于設計Web服務和WindowsCommunicationFoundation的。相關計算機編程快速排序,哈希表,數組和二叉樹的概念可以用于創建軟件。當一個程序被設計的,它依靠的API。例如,如果用戶設計的MicrosoftWindows桌面應用程序時,他/她可能會使用。NETWindows
WWW.HAomen998.ComWWW.HM6789.ComWWW.HAomen6789.ComWWW.HM888888.ComWWW.HAomen1688.ComWWW.HAomen1688.net
窗體庫設計的桌面應用程序,并調用它的API像Form1.Close()和Form1.Show()[7],以關閉或打開應用程序,寫的他/她,它需要有。如果沒有這些API,程序員需要寫這些API的他/她。SunMicrosystems公司,Novell公司,微軟等公司提供了自己的API,使許??多應用程序都使用他們的軟件庫,通常有許多在他們的API編寫的。
計算機軟件具有特殊的經濟特征,使得其設計,制作,和大多數其他經濟物品的分布不同。指定][8][9]
創建軟件的人,誰被稱為程序員,軟件工程師,軟件開發人員,或“代碼猴子”的條款也有類似的含義。
有話要說...