WinForm與物件導向

2021-09-22 03:45:23 字數 1097 閱讀 5621

windows form,可以說是微軟在開發c/s架構上的乙個很好的平台,不但視覺化做的很好(這應該是微軟的強項),而且所有的控制項都是建立在面向對向的基礎上的,主窗體是第乙個對像,它上面的所有控制項都是主窗體的乙個字段。其實從這個角度看來是完全物件導向的,但在很多時候,我們都會跳出面向象,而是直觀的當控制項用。

給常用這個問題,form1是主窗體,form2是次窗體,也是在form1中呼叫出form2窗體,呼叫的時候在form1中new出form2,然後show出form2的物件,這個很好理解,如果在form1中訪問form2中的資料,或在form2中訪問form1的資料,再加上,form1和form2是類,還有操作的時候是對物件的操作,這些就使整個邏輯,理解起來有點迷糊。如果放到物件導向中的話,是很好理解的,在form1物件中訪問form2中的資料,就意為著,form2中資料的訪問級別是公有的,才可以訪問。在form2物件中如何訪問form1物件中的,因為form2物件是在form1中建立出來的,所以如果操作form1中的資料,只有把form1物件傳到form2中進行處理(而不是在form2中new乙個form1物件來處理),如果看成類和物件,這個關係很好梳理。

還有乙個方面,正因為winform把內部的控制項都封裝成乙個乙個對角,再加上,winform上的控制項,用事件的機制來向應使用者操作,這就給開發人員(特別是物件導向了解不是太深的人)乙個誤區,比如,單擊乙個按鈕,去作乙個操作,很習慣的一股腦把全部的**寫在事件訂閱的方法內,因為這樣來去看**的時候,很直觀的感覺,比如這個按鈕是查詢資料庫,把**寫到當前方法內,一目了然,儲存按鈕,裡面寫的儲存資料的**,也很直觀。在某種承度上,可我們去理解操作流程時,這種寫法是更人性化,或更符合人的思維方式的。物件導向的特徵是繼承,封裝,多型,不管那種特徵,都能在增加**的復用性。還有,在有較強的業務邏啊時,對資料的處理,不得不把它們看成乙個物件來處理,這個時候,單純的用事件訂閱的方法來處理邏輯,就有點得不應手了,還有就是當處理流程比較大時,單個方法放大量**,也是不可取的(當然,這不構成我們去評判軟體優略的標準)。所以在做winform時,一定要設計開物件,物件**於業務,物件的處理,變換也得靠物件導向的原則來實現,所以物件是建立在**的認知的基礎上的,故物件有時候也會偏離現實原形的。使程式更靈活,再更進一步靈活,就涉及到去很下功的去分離,聚合實體物件與**協作之間的關係了。

物件導向過程與物件導向

物件導向過程與物件導向 1 程式的發展經歷了兩個階段 面向過程 物件導向。2 對於物件導向與面向過程可以用乙個例子解釋,如乙個木匠要做乙個盒子,那麼這個盒子的出發點會有兩種方式 物件導向 先想好要做的盒子,之後在去找相應的工具去做。面向過程 不去想要做什麼樣的盒子,隨需取工具。物件導向三大特徵 封裝...

物件導向方法與物件導向測試

物件導向 object oriented,oo 方法認為,客觀世界是由各種物件組成的,任何事物都是物件,每乙個物件都有自己的運動規律和內部狀態,都屬於某個物件類,是該物件類的乙個元素。複雜的物件可由相對簡單的各種物件以某種方式而構成,不同物件的組合及相互作用就構成了系統。oo方法是當前的主流開發方法...

物件導向與基於物件 面向IO

物件導向和基於物件都有封裝 繼承。區別在於多型。基於物件是一種adt abstract data type 它封裝了一些複雜的操作,使之易於使用。繼承僅僅顯示了is a的關係,只是建立了乙個層次體系。物件導向的核心是多型。即通過一致的呼叫形式,根據物件的實際型別不同,可以自動完成不同的行為。舉個例子...