『壹』 面向組件編程是什麼
所有的軟體技術和思想的出現都是為了解決所在的那個年代軟體開發的復雜性,對象技術和組件技術也不例外。當然還有很多其它技術,像DBC(契約式編程)、AOP、MDA等,這些思想都在影響我們設計/實現程序的方式,但無可否認的是,當今最主流的編程技術是對象技術和組件技術。 面向對象技術已經成熟的發展將近20年了,關於這方面的經典書籍和論文也隨處可見。為了解決更大的系統的復雜度,組件技術應運而生,在windows平台上,組件從最初的動態鏈接庫到COM,在到現在的中間件、.NET,就是組件思想走過的軌跡。
面向對象技術的基礎是封裝--介面與實現分離,面向對象的核心是多態--這是介面和實現分離的更高級升華,使得在運行時可以動態根據條件來選擇隱藏在介面後面的實現,面向對象的表現形式是類和繼承。面向對象的主要目標是使系統對象化,良好的對象化的結果,就是系統的各部分更加清晰化,耦合度大大降低。
面向組件技術建立在對象技術之上,它是對象技術的進一步發展,類這個概念仍然是組件技術中一個基礎的概念,但是組件技術更核心的概念是介面。組件技術的主要目標是復用--粗粒度的復用,這不是類的復用,而是組件的復用,如一個dll、一個中間件,甚至一個框架。一個組件可以有一個類或多個類及其它元素(枚舉、)組成,但是組件有個很明顯的特徵,就是它是一個獨立的物理單元,經常以非源碼的形式(如二進制,IL)存在。一個完整的組件中一般有一個主類,而其它的類和元素都是為了支持該主類的功能實現而存在的。為了支持這種物理獨立性和粗粒度的復用,組件需要更高級的概念支撐,其中最基本的就是屬性和事件,在對象的技術中曾一度困擾我們的類之間的相互依賴問題/消息傳遞問題,迄今為止我所知道最好的解決方案就是事件。要理解組件思想,首先要理解事件的思想和機制。
我一直堅持以為,一個組件的外形/外貌應該是簡單的、應該是清晰的、沒有冗餘的東西、也沒有無關緊要的東西,這個外貌通過介面來描述,介面中可以發布事件、屬性和方法。這三種元素就足以描述一個組件外貌的所有特徵。比如,我曾經用封裝的一個完成埠組件,其外貌介面中只有四個方法,三個事件,三個屬性而已,而該組件的內部實現卻有幾千行代碼。所以在設計一個組件的時候,需要做很多的權衡,哪些需要通過介面暴露出來,哪些應當作為私有實現。有時,你會處於兩難的境地,因為讓組件更容易使用,所以需要給出很多默認的參數,但為了使該組件更通用,你又需要暴露更多的屬性可以讓人設定、暴露更多的方法和事件滿足更復雜的功能。你需要抉擇,你需要權衡。難怪有人會說,軟體的設計更像是藝術,因為藝術的美在於恰當的抉擇和平衡。我的經驗是,在保持低耦合度的前提下,組件的介面足以對付當前的應用就好。如果日後需要加強功能,那就重構然後增強它,這是很容易的,因為早就說了嘛,保持組件的低耦合度。
需要說明一下的是,我們通常所說的控制項(如按鈕)也是一種組件,可以這么認為,控制項是一種具有UI形式的組件。插件(Addin/Plugin)也是一種特殊的組件,插件的單獨存在是沒有意義的,它是由兼容該插件協議的框架所使用。
最後強調一點,組件的目標是粗粒度的復用,組件的核心是介面。
『貳』 C#組件編程的好處是什麼
可以簡化代碼,增加代碼的可讀性,並利於快速開發
你想想,以後要是一個大項目,要大量用到某些代碼塊,你設計了組件後碰到這樣的地方就直接拖進去就行了;再者,別人開發的某些代碼塊與你的相同,有了你的組件的話別人就不用再重新開發一次了。
『叄』 面向對象,面向服務,面向組件三種編程模式有什麼區別
正確說法應該是基於組件開發(Component-Based Development)。
面向對象編程(Object-Oreinted Programming)
是一種編程範式。指在設計程序時大量運用類實例對象的方式。OOP一旦在項目中被運用,就成了時刻要考慮的東西。
面向服務架構(Service-Oreinted Architecture)
是將軟體設計成一組可互操作的服務的一套原則或方法論。通常在考慮系統架構時才會觸及SOA。
基於組件開發(Component-Based Development)
是一種軟體工程實踐,設計時通常要求組件之間高內聚,松耦合。其介面可能是OO的,調用方式可能是以Service的方式。基於組件開發關注系統層次、子
系統邊界和子系統間通訊的的設計,處於代碼層面但不像OOP的一樣是時刻需要運用的東西。
『肆』 什麼叫組件,控制項和插件
一般把Control翻譯成控制項,把Component翻譯成組件。
控制項就是具有用戶界面的組件。要說的具體一點,就得回顧早期
Windows
的歷史根源,當時控制項指任何子窗口——按鈕、列表框、編輯框或者某個對話框中的靜態文本。從概念上講,這些窗口——控制項——類似用來操作收音機或小電器的旋鈕和按鈕。隨著控制項數量的增加(組合框、日期時間控制項等等),控制項逐漸成為子窗口的代名詞,無論是用在對話框中還是用在其它種類的主窗口中。沒過多久
BASIC
程序員開始編寫他們自己專用的控制項,自然而然地人們便想到共享這些控制項。共享代碼的方法之一是通過磁碟拷貝,但那樣顯然效率低下。必須要有一種機制使開發者建立的控制項能夠在其它程序員的應用中輕而易舉地插入,這便是VBA控制項,OLE控制項,OCX和最後ActiveX
控制項的動機。
這就是控制項和組件之間產生混淆之所在。因為為了解決控制項的可復用問題,所有這些技術必須首先解決更為一般的組件重用問題。(COM,如果你還記得它的話,意思是組件對象模型)。在軟體行話中,組件這個術語指任何可復用的對象或任何可與其它對象交互的代碼體。子程序的發明,曾經一度成為程序員趨之若鶩的軟體工程聖杯:一種統一的編程理論,它使程序員從基本構建塊——也就是用所選語言編寫的各種組件建立大型系統。從子程序演變到OOP,到DLLs,再到COM,再到.NET框架的每一種新的編程範例都代表了一種不同的提供可重用性的方案。VBX使用DLLs的固化名稱。COM使用介面和IUnknown。.NET框架使用微軟的中間語言(MSIL)層和公共語言運行時(CLR)來提供統一的粘合。
因此,控制項是組件的一個主要樣本(並且歷史上曾驅動著組件的開發),控制項又不僅僅是唯一的一種組件。組件不需要顯示任何信息或用戶界面。組件可能實現科學計算,收集性能數據,計算1971年1月1日到現在的毫秒數,仰或是讀取布希總統競選活動保險箱里的美金數。
http://www.vckbase.com/document/viewdoc/?id=1294#控制項和組件
『伍』 什麼是應用程序,什麼是組件,什麼是插件
什麼是應用程序(Application)?
應用程序是指為了完成某項或某幾項特定任務而被開發運行於操作系統之上的計算機程序。 應用程序與應用軟體的概念不同,但常常因為概念相似而被混淆。軟體指程序與其相關文檔或其他從屬物的集合。一般的我們視程序為軟體的一個組成部分。
應用程序(Application)運行在用戶模式,它可以和用戶進行交互,具有可視的用戶界面。
對於應用程序,需要了解的是:每一個應用程序運行於獨立的進程、他們擁有自己獨立的地址空間。不同應用程序的分界線稱為進程邊界。
應用程序通常又被分為兩部分:圖形用戶介面(GUI)和引擎(Engien)。
其實就是.exe或com的文件了。。。
組件
zǔjiàn
1.[assembly]∶供裝配整台機器、構件或元件的零件組合
2.[mole;package]∶在電子或機械設備中組裝在一起形成一個功能單元的一組元件
3.[unit]∶組裝產品(如書櫥或碗櫥)時所組合的通常或多或少重復的部分
4.[section]∶可被組裝或被重新組裝的幾個部件之一
插件是一種遵循一定規范的應用程序介面編寫出來的程序。很多軟體都有插件,插件有無數種。例如在IE中,安裝相關的插件後,WEB瀏覽器能夠直接調用插件程序,用於處理特定類型的文件。
��IE瀏覽器常見的插件例如:Flash插件、RealPlayer插件、MMS插件、MIDI五線譜插件、ActiveX插件等等;再比如Winamp的DFX,也是插件。還有很多插件都是程序員新開發的。
��組件和插件的區別是,插件是屬於程序介面的程序,組件在ASP中就是控制項、對象,ASP/IIS的標准安裝提供了11個可安裝組件。ASP的FSO組件,編程的朋友都如雷貫耳吧,它就是最常用的Scripting.FileSystemObject對象
1.什麼是插件? 插件是指會隨著IE瀏覽器的啟動自動執行的程序.
2.惡意插件有什麼特徵? 有些插件程序能夠幫助用戶更方便瀏覽網際網路或調用上網輔助功能,也有部分程序被人稱為廣告軟體(Adware)或間諜軟體(Spyware).此類惡意插件程序監視用戶的上網行為,並把所記錄的數據報告給插件程序的創建者,以達到投放廣告,盜取游戲或銀行帳號密碼等非法目的.
因為插件程序由不同的發行商發行,其技術水平也良莠不齊,插件程序很可能與其它運行中的程序發生沖突,從而導致諸如各種頁面錯誤,運行時間錯誤等等現象,阻塞了正常瀏覽.
3.插件會從什麼位置載入到IE瀏覽器中? 根據插件在瀏覽器中的載入位置,可以分為工具條(Toolbar)、瀏覽器輔助(BHO)、搜索掛接(URL SEARCHHOOK)、下載ActiveX(ACTIVEX).
4.不同類型插件名詞解釋
①下載ActiveX(ACTIVEX):
ActiveX插件也叫做OLE控制項或OCX控制項,它是一些軟體組件或對象,可以將其插入到WEB網頁或其它應用程序中.在網際網路上,ActiveX插件軟體的特點是:一般軟體需要用戶單獨下載然後執行安裝,而ActiveX插件是當用戶瀏覽到特定的網頁時,IE瀏覽器即可自動下載並提示用戶安裝.
ActiveX插件安裝的前提是必須先下載,然後經過認證,最終用戶確認同意方能安裝,因此嵌有ActiveX腳本程序的頁面可能會變得非常慢,甚至導致瀏覽器瞬間失去響應.
插件管理專家2005能夠屏蔽用戶不需要安裝的插件程序,加快頁面載入速度,確保用戶正常瀏覽.
②瀏覽器輔助(BHO)
BHO全稱Browser Helper Object, 是一種隨網際網路瀏覽器(如IE)每次啟動而自動執行的小程序.通常情況下,一個BHO文件是由其它軟體安裝到用戶的系統中的.例如一些帶有下載功能的廣告軟體,它可能會安裝一個BHO文件從而追蹤用戶在上網沖浪遇到的眾多網頁廣告.
通常的BHO會幫助用戶更方便地瀏覽網際網路或調用上網輔助功能,也有一部分BHO被人稱為廣告軟體(Adware)或間諜軟體(Spyware),它們監視用戶的上網行為並把記錄的相關數據報告給BHO的創建者.BHO也可能會與其它運行中的程序發生沖突,從而導致諸如各種頁面錯誤,運行時間錯誤等等現象,通常阻止了正常瀏覽的進行.
插件管理專家2005提供的BHO清理能夠幫助用戶查看並屏蔽被IE瀏覽器載入的BHO文件.
③搜索掛接(URL SEARCHHOOK)
用戶在地址欄中輸入非標準的網址,如英文字元或者中文的時候,當地址欄無法對輸入字元串解釋成功時,瀏覽器會自動打開一個以用戶輸入的字元串為搜索詞的結果頁面,幫助用戶找到需要的內容.URLSearchhook對象就是完成搜索功能的插件.它通常是由第三方公司或者個人開發,通過插件的方式安裝到瀏覽器上, 目的是為了幫助用戶更好的使用互聯網.例如用戶在地址欄中輸入"手機",就可以直接看到手機搜索結果.也有一些企業或者個人為了達到提高網站訪問或其它商業目的,在用戶不知情的情況下修改IE瀏覽器的URLSearchhook.
使用插件管理專家2005可以對URLSearchhook插件程序進行管理,屏蔽或者刪除不需要的惡意插件.
④工具條(Toolbar)
工具條,通常指載入在瀏覽器的輔助工具.它位於瀏覽器標准工具條的下方,在IE工具欄空白處點擊右鍵,可以查看所有已經安裝的工具條,通過勾選顯示或者隱藏已安裝的工具條
『陸』 程序中組件指的是什麼呢
組件就是自包含的、可編程的、可重用的、與語言無關的軟體單元,軟體組件可以很容易被用於組裝應用程序中。
Python 解釋器可以從多種源獲得輸入:作為標准輸入或程序參數傳入的腳本,以交互方式鍵入的語句,導入的模塊源文件等等。 這一章將給出在這些情況下所用的語法。
9.1. 完整的 Python 程序
雖然語言規范描述不必規定如何發起調用語言解釋器,但對完整的 Python 程序加以說明還是很有用的。 一個完整的 Python 程序會在最小初始化環境中被執行:所有內置和標准模塊均為可用,但均處於未初始化狀態,只有 sys (各種系統服務), builtins (內置函數、異常以及 None) 和 __main__ 除外。 最後一個模塊用於為完整程序的執行提供局部和全局命名空間。
適用於一個完整 Python 程序的語法即下節所描述的文件輸入。
解釋器也可以通過交互模式被發起調用;在此情況下,它並不讀取和執行一個完整程序,而是每次讀取和執行一條語句(可能為復合語句)。 此時的初始環境與一個完整程序的相同;每條語句會在 __main__ 的命名空間中被執行。
一個完整程序可通過三種形式被傳遞給解釋器:使用 -c 字元串 命令行選項,使用一個文件作為第一個命令行參數,或者使用標准輸入。 如果文件或標准輸入是一個 tty 設置,解釋器會進入交互模式;否則的話,它會將文件當作一個完整程序來執行。
Python 解釋器可以從多種源獲得輸入:作為標准輸入或程序參數傳入的腳本,以交互方式鍵入的語句,導入的模塊源文件等等。 這一章將給出在這些情況下所用的語法。
9.1. 完整的 Python 程序
雖然語言規范描述不必規定如何發起調用語言解釋器,但對完整的 Python 程序加以說明還是很有用的。 一個完整的 Python 程序會在最小初始化環境中被執行:所有內置和標准模塊均為可用,但均處於未初始化狀態,只有 sys (各種系統服務), builtins (內置函數、異常以及 None) 和 __main__ 除外。 最後一個模塊用於為完整程序的執行提供局部和全局命名空間。
適用於一個完整 Python 程序的語法即下節所描述的文件輸入。
解釋器也可以通過交互模式被發起調用;在此情況下,它並不讀取和執行一個完整程序,而是每次讀取和執行一條語句(可能為復合語句)。 此時的初始環境與一個完整程序的相同;每條語句會在 __main__ 的命名空間中被執行。
一個完整程序可通過三種形式被傳遞給解釋器:使用 -c 字元串 命令行選項,使用一個文件作為第一個命令行參數,或者使用標准輸入。 如果文件或標准輸入是一個 tty 設置,解釋器會進入交互模式;否則的話,它會將文件當作一個完整程序來執行。
希望能幫到你,謝謝!
『柒』 vb編程是什麼意思,主要幹嘛的
VB程序開發的基本流程是:界面設計(放置窗體和控制項)――屬性設置(設置窗體、控制項的屬性)――編寫代碼――運行調試。其優點是在窗體上添加控制項並設置屬性後就可完成界面的設計使程序員輕易的就可完成界面的設計,而無需過多的進行設計和編程。只需調用預先准備好的、經過測試的、完全就緒的模塊就可完成所需實現的功能。這種備用性的軟體模塊被稱作――組件。窗體和各種控制項就是組件。
VB編程的核心思想就是組件編程。VB是最早引入組件編程的概念,其後被其它語言所採用並成為一種標准,如VC++、Delphi、PowerBuilder都採用組件編程模型,並採用面向對象編程技術,成為當今程序設計的發展方向之一。
VB編程時,因為使用組件技術,所以不必從底層的窗體、控制項開始設計,可以向工廠通過各種部件組裝生產機器一樣,通過微軟或第三方提供的組件,組裝成所需的程序。用什麼組裝?就是用VB的代碼,其作用就像膠水一樣,用有限的代碼和組件聯結成一體。最後形成一個完整的應用程序。
如果沒有現成的組件或需要創建一個新類時,就需要編寫代碼。
組件的種類很多,有多少組件可用,各組件有什麼作用,這需要在實踐中不斷摸索。
『捌』 java中什麼是組件,它和類有什麼區別
組件(Component)是對數據和方法的簡單封裝。C++ Builder中,一個組件就是一個從TComponent派生出來的特定對象。組件可以有自己的屬性和方法。屬性是組件數據的簡單訪問者。方法則是組件的一些簡單而可見的功能。
組件是C++ Builder環境中最令人激動的部分。使用組件可以實現拖放式編程、快速的屬性處理以及真正的面向對象的設計。VCL和CLX組件是C++ Builder系統的核心。
http://www.itise.com/phrase/200603302222545.html
『玖』 java的Swing編程中,組件的概念是什麼
你好,Swing是AWT的擴展,它提供了許多新的圖形界面組件。Swing組件以「J」開頭,除了擁有與AWT類似的按鈕(JButton)、標簽(JLabel)、復選框(JCheckBox)、菜單(JMenu)等基本組件外,還增加了一個豐富的高層組件集合,如表格(JTable)、樹(JTree)。在javax.swing包中,定義了兩種類型的組件:頂層容器(Jframe、Japplet、JDialog和JWindow)和輕量級組件。
說白話一點,組件就是構成你圖形界面的零部件。如面板,按鈕,下拉選等等。