物件導向分析和設計Tips

積累了一點經驗,學習的和實踐的1. SRP :  Single -Responsibility Principle  單一職責準則    一個類只能做一件事情。職責多了可能引起耦合,在一個職責改變時,可能會影響到另一職責的履行。這幾乎是最重要的設計準則。2. OCP : Open - Closed Principle  開閉準則    當需求發生變化時,不需要修改已有的原始碼,而只是增加代碼(比如繼承,或介面)就能完成新的功能需求。這條準則大大提高了已有代碼的可維護性。3. LSP:

GCM Demo “Unfortunately, GCM demo has stopped”

本文連結:http://blog.csdn.net/kongxx/article/details/8155913今天在學習Google Cloud Messaging (GCM),在運行文檔上使用的例子(http://developer.android.com/guide/google/gcm/demo.html)的時候,按照步驟設定好server和client之後,運行server和client之後,在模擬器上運行GCM Demo的時候總是出現"Unfortunately, GCM demo

.NET中的設計模式五:觀察者模式

觀察者模式(Observer)完美的將觀察者和被觀察的對象分離開。舉個例子,使用者介面可以作為一個觀察者,業務資料是被觀察者,使用者介面觀察業務資料的變化,探索資料變化後,就顯示在介面上。物件導向設計的一個原則是:系統中的每個類將重點放在某一個功能上,而不是其他方面。一個對象只做一件事情,並且將他做好。觀察者模式在模組之間劃定了清晰的界限,提高了應用程式的可維護性和重用性。觀察者模式有很多實現方式,從根本上說,該模式必須包含兩個角色:觀察者和被觀察對象。在剛才的例子中,業務資料是被觀察對象,使用

設計模式原型模式(Prototype)- 麵館裡的菜單

設計模式-原型模式 參考資料《c#技術揭密》《設計模式-可複用物件導向軟體的基礎》《java與模式》http://blog.csdn.net/beautyispower/ ,很不錯的網友blog 很多餐館裡面都有菜單,列舉了他們提供哪些飯菜,哪種麵食等,一般的蘭州拉麵館裡菜單是這樣的牛肉拉麵(大碗

用遞迴和委託實現通用的樹遍曆

樹是一種常用的資料結構,而遍曆是最常用的訪問模式,下面是用.net中的委託實現。如果採用泛型,下面的方法將更通用,本文沒有使用泛型。        /// <summary>        /// 委託-處理子節點        /// </summary>1)     public delegate void DealWith(string str);        /// <summary>        /// 委託-獲得子節點        /// &

怎樣測試代碼中難測試的部分

現在越來越多的開發組織在程式開發中使用單元測試的方式,甚至有些外包工程要求開發人員交貨的時候提供完整的單元測試代碼。單元測試不僅僅是在編碼的時候需要考慮,在程式設計的時候就應該充分考慮測試的需要,要設計和編寫出“可測試”的代碼。為什麼一些代碼難以測試在進行單元測試的時候,會發現程式中某些部分很難進行自動化的測試,比如耦合程度比較高的類、使用者介面、資料庫、Servlets和EJB類、等等。本文主要說明程式中這些“難以測試”的部分應該採用什麼樣的方式去測試。是什麼因素使得這些代碼難以測試呢?首先是

身體是革命的本錢 – 頸椎病預防

  頸椎病是頸椎的一種勞損退變疾患,與長期的屈頸動作有關。嚴重的可以壓迫通向上肢的神經根或通向腦子的椎動脈而引起臂至指的酸麻痹痛或眩暈,甚至壓迫神經的低級中樞──脊髓,而產生半身無力。病變是難以逆轉的,但是可以作些預防措施以避免它繼續惡化,下面幾點是我的體會,特編成歌訣以便於記憶       

聚焦需求分析

    隨著對軟體開發理解的不斷深入,越發感覺到需求分析對軟體開發的重要性,可以說,好的設計一定有好的需求作後盾,而沒有完善的需求,不可能有好的設計。如果你只是從書上知道需求分析對軟體項目的影響,那你就體會不到一個不完善的需求分析對軟體的真正的殺傷力。以下是自己的一些感受,純屬一己之見。    1.  列出主要的業戶流程,用結構化的表格和圖表來表述,附文字說明。    2. 對介面需求,最好給出原型,做為和客戶交流,擷取需求的工具,使用者往往看到實物,才知道自己到底需要什麼。   

頸椎病預防

一、頸椎病的預防  (一)閱讀有關頸椎病的書,掌握用科學的手段防治疾病。  (二)保持樂觀精神,樹立與疾病艱苦抗衡的思想,配合醫生治療,減少複發。  (三)加強頸肩部肌肉的鍛煉,在工間或工餘時,做頭及雙上肢的前屈、後伸及旋轉運動,既可緩解疲勞,又能使肌肉發達,韌度增強,從而有利於頸段脊柱的穩定性,增強頸肩順應頸部突然變化的能力  (四)避免高枕睡眠的不良習慣,高枕使頭部前屈,增大下位頸椎的應力,有加速頸椎退變的可能。  (五)注意頸肩部保暖,避免頭頸負重物,避免過度疲勞,坐車時不要打瞌睡。  (

.NET中的設計模式二:單件模式

單件模式(Singleton)是一個非常簡單的模式,這是我第一個理解並且能運用的模式。有時候模式的複雜程度並不在於本身,而是由於他的應用目的。最初的時候面對一個模式經常充滿了困惑,一個簡單的調用為什麼要搞的如此複雜?為什麼要建立這麼多類,只是為了開啟一個檔案。通常說來學習一個模式是一個接受、認可、領會的過程。接受:瞭解模式的結構,瞭解執行個體的意義;認可:認可該模式在實際工程中的作用和可行性;領會:將模式應用到開發過程中。而模式的應用目的說到底無非是為了降低模組之間在時間和空間上的耦合程度,以此

樹形控制項TreeView的序列化

最近自己做了一個小軟體,一個檔案瀏覽器,與windows的資源管理員相比,可以查看檔案內容,而不用外部程式開啟,支援多種檔案格式,以後準備加入基於內容的搜尋(打算用開源的dotLucene組件)。其中需要將樹形控制項序列化,查了很多資料,在codeproject找到一個vb.net寫的,找了一個代碼轉換器轉成了C#,修改了一下,改成了二進位序列化。貼在下面供需要的參考。原文地址:http://www.codeproject.com/vb/net/TreeViewDataAccess.asp我修改

使用awk按表格格式化顯示

本文連結:http://blog.csdn.net/kongxx/article/details/8284952今天工作中碰到一個問題,需要過濾一些命令列的輸出,並且將結果按類似表格的格式輸出這裡假定有一個命令的輸出如下,假定我們過濾掉了其中某些列或者行,這裡我們將其存入test.txt檔案ID Name Designation Department Salary100 Thomas Manager Sales $5,000200 Jason

為什麼沒有老闆賺的多??? 轉

http://blog.csdn.net/mtybeen/archive/2005/01/13/251195.aspx一條獵狗將兔子趕出了窩,一直追趕他,追了很久仍沒有捉到。牧羊看到此種情景,譏笑獵狗說"你們兩個之間小的反而跑得快得多。"獵狗回答說:"你不知道我們兩個的跑是完全不同的!我僅僅為了一頓飯而跑,他卻是為了性命而跑呀!"....目標....二這話被獵人聽到了,獵人想:獵狗說的對啊,那我要想得到更多的獵物,得想個好法子.於是,獵人又買來幾條獵狗,凡是能夠在打獵中捉到兔子的,就可以得到幾根

Linxu NX 安裝配置與使用

1. 伺服器端1.1 安裝首先需要在linux上安裝nx軟體包,我這裡是在CentOS6x上做的測試,運行下面命令來安裝軟體包$ sudo yum install nx freenx1.2 初始化首先切換到root使用者,然後運行下面命令來初始化nxserver# /usr/bin/nxsetup --install1.3

使用非同步方式調用WebService

       在很多情況下我們可能都要使用非同步呼叫WEBService。使用非同步好處是非阻塞方式進行的。當然也增加一定的編程難度。使用非同步編程,我們可以實現對遠程服務的調用,查詢調用狀態,或取消調用等功能。我們以代碼執行個體為例來解說首先使用VS2k3建立一個WEBSERVICE ,假設是一個提供股票資訊的服務。這裡我處理的比較簡單,僅是類比一下服務調用需要很長的時間。namespace StockService{ /// <summary> /// Service1

測試驅動開發與代碼重構

這是我在公司進行的技術交流講座,

Google推出自動翻譯服務

使用Google尋找資料的時候,如果找到英文頁面,會出現一個[翻譯此頁 BETA]的串連,目前這個功能還處於BETA狀態。下面發一篇Google翻譯的文章,很難看懂,原文地址在這裡:http://java.sun.com/docs/books/tutorial/native1.1/stepbystep/Java TM 講解 足跡講解> 開始 開始 查尋反饋形式 足跡: Java 當地人介面 教訓: 寫一個 Java 節目與當地方法這個教訓行走你經由步必要整合當地 代碼與節目寫在Java

辦公室人員頸椎病預防

長期從事財會、寫作、編校、打字、文秘等職業的工作人員,由於長期低頭伏案工作,使頸椎長時間處於屈曲位或某些特定體位,不僅使頸椎間盤內的壓力增高,而且也使頸部肌肉長期處於非協調受力狀態,頸後部肌肉和韌帶易受牽拉勞損,椎體前緣相互磨損、增生,再加上扭轉、側屈過度,更進一步導致損傷,易於發生頸椎病。  辦公室工作人員首先在坐姿上儘可能保持自然的端坐位,頭部略微前傾,保持頭、頸、胸的正常生理曲線;尚可升高或降低案頭與椅子的高度比例以避免頭頸部過度後仰或過度前屈;此外,定製一與案頭呈10~30度的斜面工作板

.NET中的設計模式四:命令模式

 命令模式(Command)結構並不複雜,簡單的說,就是將某些職責封裝成對象,對象的激發者(Invoker)和接收者(Reciever)都不過問命令的執行過程。用這樣的方式解除了激發者和接受者之間的耦合,為程式提供了更清晰的階層。實際運用中經常是將系統中的命令抽象成一個介面,所有的命令都是這個介面的實現,如下所示:Command類是ICommand的實現,Command類實現了execute方法,其他命令類都是Command方法的子類。這樣激發者接受者和接受者面臨的環境就非常簡單了:統一作為Co

.NET中的設計模式一:原廠模式

 設計模式概述設計模式從本質上說是一種規則,從形式上說,分為建立型、結構型、行為型。設計模式的應用是為了實現軟體設計中的幾個原則,其中一個重要原則是:減少模組之間的耦合程度。為了確保這個目的,在設計一個類時,要針對介面,而非實現。(Programming to an Interface, not an

總頁數: 61357 1 .... 20066 20067 20068 20069 20070 .... 61357 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.