原创 軟件工程實現階段

通常把編碼和測試統稱爲實現 編碼: 選擇程序設計語言 選擇標準: 系統用戶要求 可以使用的編譯程序 可以得到的軟件工具 工程規模 程序員的只是 軟件可移植性要求 軟件的應用領域 編碼風格 應該遵循的標準:

原创 操作系統筆記---進程的描述與控制

進程:系統資源分配和獨立運行的基本單位  在20世紀60年代中期來說,但20世紀90年代後,線程纔是作爲調度和分派的基本單位 把資源調度與分配和擁有資源兩個屬性分開,進程作爲分配資源的基本單位,線程作爲調度分派的基本單位 前趨圖概

原创 操作系統筆記---虛擬存儲器

虛擬存儲技術:從邏輯層面上實現對內存容量的擴充,改善系統性能 常規存儲器管理方式特徵: 一次性 駐留性 虛擬存儲器的工作原理:給予局部性原理可知,應用程序在運行之前無需全部載入,而只需要載入少數頁面或段就可運行,其餘部

原创 命令模式(5)

命令模式定義:將請求,命令,動作等封裝成對象,這樣可以讓項目使用這些對象來參數化其他對象。是的命令的請求者和執行者解耦。 以下是一個遙控器的例子,如果按照傳統OO思想,我們一般會直接讓遙控器去調用硬件提供的API,但是這種寫

原创 單例模式(4)

單例模式的定義:類只有一個全局對象,構造函數私有化,提供一個對外獲取單例對象的方法。 對於打印機,數據庫連接池這些對象,全局應該僅有一個對象對應着一個實體。 代碼示例如下: 1 2 3 4 5 6 7 8

原创 裝飾者模式(3)

裝飾者模式定義:動態的將新功能附加到對象上。在對象功能擴展方面,它比繼承更有彈性。 現實中,裝飾者模式就像一個快遞。我們購買的東西,需要經過一層一層的包裹,確保穩妥之後才被寄出。如果按照傳統的面向對象,每包裹一層就需要設計一個新類

原创 maven概念

什麼是maven? Maven是一個基於項目對象模型 (POM)的項目管理和綜合工具。 maven能幹什麼? Maven提供了開發人員構建一個完整的生命週期框架。 概括地說,Maven簡化和標準化項目建設過程。處理編譯,分配,文檔,團

原创 Socket筆記

Socket又稱套接字,應用程序通常通過“套接字”向網絡發出請求或者應答網絡請求。 在Java中,Socket和ServerSocket類庫位於java.net包中。ServerSocket用於服務器端,Socket是建立網

原创 Sitemesh 3 的使用及配置

1 . Sitemesh 3 簡介 Sitemesh 是一個網頁佈局和修飾的框架,基於 Servlet 中的 Filter,類似於 ASP.NET 中的‘母版頁’技術。參考:百度百科,相關類似技術:Apache Tiles。 官網

原创 操作系統筆記---處理機調度與死鎖

處理機調度與死鎖 在多道程序環境下,內存中存在着多個進程,起數目往往多餘處理機數目。這就要求系統能按照某種算法,動態地將處理機分配給處於就緒狀態的一個進程,使之執行。分配處理機的任務是由處理機調度程序完成的。對於大型系統運行時的性能,

原创 策略模式(1)

策略模式定義:分別封裝行爲接口,實現算法族,超類裏放行爲接口的對象,在子類裏具體設定行爲對象。原則就是,分離變化部分,封裝接口,基於接口編程各種功能。此模式讓行爲算法的變化獨立於算法的使用者。  策略模式注意點: 分析項目中的變

原创 操作系統筆記---存儲器管理

存儲器的多層結構: 寄存器 高速緩存 主存儲器 磁盤緩存 固定磁盤 可移動存儲介質 程序的裝入與鏈接: 編譯: 鏈接: 靜態鏈接方式: 裝入時動態鏈接: 運行時動態鏈接: 裝入: 絕對裝入方式:僅適合運行

原创 Lucene筆記---全文檢索引擎工具包

Lucene是apache軟件基金會 jakarta項目組的一個子項目,是一個開源的全文檢索引擎工具包 Lucene的數學模型:倒排表(反向索引:從詞元到文檔的索引) Lucene的文件結構: 索引:一個

原创 觀察者模式

觀察者模式定義:對象之間多對一依賴的一種設計方案,被依賴的對象爲Subject,依賴的對象爲Observer,Subject通知Oberver變化。 觀察者模式就像小時候的訂牛奶業務 奶站:相當於Subject,負責訂奶

原创 模板模式(7)

模板模式定義:封裝了一個算法步驟,並允許子類爲一個或多個步驟方法提供實現。模板模式可以使子類再不改變算法結構的情況下,重新定義算法中的某些步驟。 類圖如下: 說明:模板模式就好比我們生活中的做菜,做菜的步驟是一定的:準備