新聞中心
主要包含下面這些情況:

成都創(chuàng)新互聯(lián)公司 - 遂寧托管服務(wù)器,四川服務(wù)器租用,成都服務(wù)器租用,四川網(wǎng)通托管,綿陽服務(wù)器托管,德陽服務(wù)器托管,遂寧服務(wù)器托管,綿陽服務(wù)器托管,四川云主機(jī),成都云主機(jī),西南云主機(jī),遂寧托管服務(wù)器,西南服務(wù)器托管,四川/成都大帶寬,服務(wù)器機(jī)柜,四川老牌IDC服務(wù)商
1、Lable控件的對(duì)齊方式,是否在Label控件的Text***加上冒號(hào),也就是“:”;
2、ListLiew控件列頭文字對(duì)齊方式、是否顯示網(wǎng)格線;
3、……
一個(gè)項(xiàng)目多個(gè)人開發(fā),自然會(huì)出現(xiàn)多種不同的風(fēng)格,但是蘿卜白菜,各有所愛,***做出來的軟件是樣式萬千啊,這樣做出來的東西讓人用了如何爽的起來啊,用戶還不得開口罵人???
但是一個(gè)軟件下來,控件都有幾百個(gè),如何一個(gè)一個(gè)的去改風(fēng)格啊,到時(shí)候軟件是改好了,用戶不罵人了,估計(jì)程序員開罵了,nnd,這是個(gè)什么事兒?。?/p>
有時(shí)候感覺懶人在這個(gè)世界上還真有他的一片天空,如果能夠一個(gè)方法來解決所有的這些問題該有多好啊,想著想著,眼前一亮,還真有,如果在每個(gè)UserControl,或者Form的PreRender方法中進(jìn)行一次多所有控件的遞歸遍歷,然后對(duì)相關(guān)的控件做相應(yīng)的處理,大概代碼如下:
- foreach(UserControl ctrl in this.Controls)
- {
- if(ctrl is Label).....
- if(ctrl is ListView).....
- }
這樣似乎從一定程度上簡化了程序員修改代碼的難度,從一個(gè)個(gè)的去修改控件的屬性,變?yōu)橥ㄟ^代碼循環(huán)處理來修改控件的屬性,但是隨之而來又會(huì)面臨一個(gè)問題:本身遞歸就是一個(gè)很影響性能的操作,但是如果有控件嵌套使用的話,會(huì)出現(xiàn)對(duì)同一個(gè)控件進(jìn)行多次控件遍歷的情況,這樣的話對(duì)性能的影響就更大了。
有沒有辦法可以躲開重復(fù)遍歷的問題嗎?答案是:有的!
如果我們寫一個(gè)UserControl和一個(gè)Form的基類,然后只在這兩個(gè)基類中編寫控件遍歷處理的操作,然后讓所有的UserControl和Form都繼承這兩個(gè)基類,這樣完全可以解決前面的難題,同事代碼量也會(huì)減少很多。
總結(jié):到這里,我想文章的意思應(yīng)該與題目“項(xiàng)目開發(fā)之底層對(duì)象抽離”相呼應(yīng)了,那就是:為了便于對(duì)自己寫的所有代碼做一個(gè)統(tǒng)一處理,***的方法就是盡量將同一類對(duì)象抽象出來寫一個(gè)基類,然后在基類中來做統(tǒng)一處理即可。想想我們平時(shí)都會(huì)有哪些對(duì)象是可以抽離出來的呢,我這里舉幾個(gè)例子,或許還有很多,留待慢慢發(fā)現(xiàn):
1、所有UserControl基類
2、所有Form基類
3、實(shí)體類基類;
4、實(shí)體類字段基類;
5、所有功能組件;
原文鏈接:http://www.cnblogs.com/Juvy/archive/2012/02/21/2361878.html
網(wǎng)頁標(biāo)題:項(xiàng)目開發(fā)中的底層對(duì)象抽離
鏈接URL:http://www.dlmjj.cn/article/dhcdgog.html


咨詢
建站咨詢
