原创 《重構與模式》目錄

讀過設計模式的童靴,可以再讀本書,加深理解 目錄 第1章 本書的寫作緣由 1 1.1 過度設計 1 1.2 模式萬靈丹 2 1.3 設計不足 2 1.4 測試驅動開發和持續重構 3 1.5 重構與模式 5 1.6 演進式設計 6 第2章

原创 設計模式-學習與應用

“設計模式的本質是簡約和美。” “當你在編程和設計軟件時每時每刻都想着我要讓軟件系統變得簡約變得美,你自然就掌握了設計模式的本質,剩下的只不過是學習一些方法和技巧而已。” 如上所述,如果你能理解,其實設計模式並沒什麼需要學習的。 如果你

原创 構架師的工作成績評估依據

具體來講,我們可以通過以下幾方面來評估系統構架師的工作成績: 1:系統構架師是否是某一技術領域的專家; 2:系統構架師能否指導分析員的設計工作,發現並指出設計存在的問題並提出解決方 法,評審他們的工作; 3:系統構架師能否指導軟

原创 架構師合作角色之與項目經理合作

與項目經理的合作關係: 1,向項目經理推薦開發方式和項目技術框架建議。例如,技術架構師建議項目經理將所有需求分析結果用UseCase 完整描述,並最好附有原型示例;或者建議設計文檔使用對象化描述方式進行文檔化等。 2,和項目經理、業務分析

原创 架構師修煉-架構知識(部分)

(說明:這些知識沒有統一的標準,以下內容緊供參考,歡迎您能閱後改進) 一、 架構設計文檔: 需求分析完成約80%的時候開始進行。 目的目標:架構應儘可能簡化,架構文檔應簡單、簡短,清晰而不雜亂,解決方案自然。 系統概述:給出一致的輪廓。

原创 一次分佈式計算實踐(項目完成上線成功,但事實上已經與分佈式計算無關了)

系統架構圖: 系統及需求簡介如下, (姑且把Internet上面部分稱做雲端,但實際上Terminal Node也是屬於系統的一部分,沒有Terminal Node則整個系統就沒有意義了) 1,如上系統架構圖所示,雲端服務器數量相對較少

原创 VC6IDE環境宏輔助添加移除註釋

VC6很老了(15年),當年的IDE功能不如現在的各種IDE功能豐富。 比如自動添加註釋,就需要藉助第三方插件或自己動手實現。 最近做些code試驗,新裝上了VC6,但是改代碼時不能自動添加註釋,很不爽,於是,翻出曾經伴隨了很多年的這些

原创 軟件項目開發管理過程中值得藉助的一些工具

“工欲善其事,必先利其器。” 一,項目管理, 項目管理和缺陷跟蹤工具 Redmine; 開源項目管理軟件 禪道(ZenTao); 禪道是第一款國產的開源項目管理軟件,她的核心管理思想基於敏捷方法scrum,內置了產品管理和項目管理,同時又

原创 [轉]普通軟件項目開發過程規範(五)—— 總結

[引言]優秀的程序員既懶又笨。 因爲懶,做爲優秀程序員一族,就沒有必要經常創建無意義的新玩意,我們需要一套切實可行的過程規範,能達到開發目的就好了,除非是,能創造出讓我們可以更變得懶的玩意。 笨,有規範,照着做就行,再笨都行,除非你

原创 構架師應具備的能力

一般來講,系統架構師應該擁有以下幾方面的能力: 1:具備 8 年以上軟件行業工作經驗; 2:具備 4 年以上 C/S 或 B/S 體系結構軟件產品開發及架構和設計經驗; 3:具備 3 年以上的代碼編寫工作經驗; 4:具備豐富的大

原创 系統架構師修煉之雲計算(分佈式,集羣,負載均衡亂談)

以下內容純屬瞎忽悠,別太當真:) 負載均衡: 負載均衡將是大型網站解決高負荷訪問和大量併發請求採用的終極解決辦法。 負載均衡技術發展了多年,有很多專業的服務提供商和產品可以選擇,我個人接觸過一些解決方法,其中有兩個架構可以給大家做參考。

原创 [摘抄拼湊]系統架構師修煉之開發模式(模型)

典型的開發模型有: 1. 邊做邊改模型(Build-and-Fix Model); 2. 瀑布模型(Waterfall Model); 3. 快速原型模型(Rapid Prototype Model); 4. 增量模型(Increment

原创 理解設計模式-關於設計模式

作爲coder,在編寫了大量的code後,你可能會發現,很多代碼需要翻來覆去的寫,但他們的表現形式卻是一致的! 如果你足夠優秀,你肯定會思考,並且會想偷懶,於是你就有可能爲此創造一個模子(如果有可能),用以簡化代碼! 沒錯,你這可能就發現

原创 構架師的職責

架構師的職責就是設計一個公司系統的基礎架構,並提供關於怎樣建立和維護系統的指導方針。 具體來講,架構師的職責主要體現在以下幾方面: 1、負責公司系統的架構設計、研發工作。2、承擔從業務向技術轉換的橋樑作用。3、協助項目經理制定項目計劃和控

原创 常用軟件架構模式(收集)

不能保證準確性! 1,分層架構:職責分層,層與層通訊,上層使用下層提供的服務; 2,三層架構(屬於分層架構):表現層,業務層,數據層; 3,MVC架構:Model+View+Controller; 4,SSH架構:Struts+Sprin