【研討會 01/23】2010 軟體設計鮮思維—程式碼與循序圖的關係與產品開發介紹

先祝各位讀者們 2010 年新年快樂!!

** 由於文化教室已滿,故地點改為 中國生產力中心,台北市承德路二段81號B1(首府經貿大樓)。
http://www.cpc.tw/Train/Place.aspx

各位好:

報名與詳細講座資訊請至:
http://www.hsdc.com.tw/course/seminar_20100123

 o 報名費用 NT$300。 (擔負場地費用以及每位參與學員一份 85。C 咖啡飲料與蛋糕)
 o 日期:2010/01/23 (星期六) PM13:10 ~ PM 17:00
 o 地點:中國生產力中心,台北市承德路二段81號B1(首府經貿大樓)。
  http://www.cpc.tw/Train/Place.aspx

§研討會介紹 --------------------------------------------------------------------

2009 年對 HSDc. 團隊是相當忙碌的一年。 幾乎大半年的期間,都長期專注在新竹「工研院」資訊中心的專案輔導與開發、同時又仍需要忙碌著固定幾家企業資訊單位的長期性顧問輔導,使得團隊主要成員們不容易抽出時間在教育訓練與研討會的研究發表上。這是對許多支持 HSDc. 的學員們的一種抱歉。

無論如何,我們沒有任何藉口。 同時經過團隊內部的溝通討論,我們決定自 2010 年這嶄新的一年,至少每 1~2 個月舉辦 研討會/讀書會/單元課程/完整系統分析課程 等其中之一的活動。 分享、引導與傳授發表我們在軟體設計各類議題上的研究與心得(及實務經驗),在軟體設計教育訓練這個領域上,一直是我們重視的焦點所在。

即使百忙之餘,在去年中,HSDc. 團隊已進行了「Sequence Generator」產品研發。 可以將程式碼的某一個功能展延出物件合作的 UML 循序圖;反之亦可以從循序圖轉出到程式碼 (當然,要先規範好類別圖)。 對從事 Coding Developer 可說是一個相當便捷的工具,彷彿就是幫程式碼照 X 光,可以輕易看出程式碼動態呼叫期間的物件關係。

請參考: http://www.kenming.idv.tw/hsdc-product-sequence-generato

經過與澳洲 Sparx System (EA 的開發原廠商)的遠距會議,展示我們的開發理念與深具彈性的結構設計,相當獲得對方的好評。 並決定於 2010 年初在澳洲原廠網頁上提供 Beta 版本的下載試用。 (以 Plug-in 的方式整合在 EA 工具上)

2010 年的第一場研討會,我們就是以 "Sequence Generator" 這個產品開發為主題,來分享說明我們是如何設計這套產品。 同時,我們也預先提供這個產品算是 pre-beta(或者該稱為 alpha 版?) 版本給前來參與研討會的學員們試用並請提供寶貴的意見。

當然,我們必然會附贈研討會光碟。光碟內容包括歷屆研討會簡報內容、UML 教學/操作錄影檔、EA 等試用版、UML OCUP 模擬試題... 等,相當物超所值。

***
請注意,由於需要保留及計算報名學員們的座位,請確定會前來參加後才填寫報名單,若不克前來,也請於報名表單或來信取消報名。若報名人數尚未滿額(每場人數以 60 人為限),不及報名者,若尚有名額,仍可以現場報名。

--------------------------------------------------------------------------------
§講座主題:

 1. 「程式碼與 UML 循序/類別圖 的關係探討」-- Kenming Wang
  o 基礎觀念導引 - 何謂靜態與動態?
  o 程式碼與類別圖的靜態結構關係。
  o 程式碼與循序圖的動態關聯關係。
  o 簡單範例展示。

 2. 「如何利用 UML 工具設計 Sequence Diagram Plug-in」-- Ringle Lai
  o 為何需要從程式碼產生Sequence Diagram
   i. Sequence Diagram的基本假設
   ii. 預想的產品架構
o Sequence Diagram Plug-in應有的功能
  o Sequence Diagram Plug-in 的結構(Class 圖)設計
   i. 基本架構
   ii. 元件設計
   iii. 類別設計
  o 實機展示 - 使用 EA (Enterprise Architect) UML 工具。
--------------------------------------------------------------------------------

§對象:對軟體設計相關議題有興趣者,包括在職軟體開發人員及相關資訊科系講師及學生等。
§主辦單位:HSDc 軟體設計顧問中心。
§講師:賴信仁(Ringle Lai)、王克明(Kenming Wang)。
o報名經確認後,本站即會寄送確認通知信給報名學員。
§備註:
 o 本次講座預計開放 60 個名額。(額滿即停止報名)
 o 因上課人數眾多,恕不直接提供列印教材,本次講座會直接附送「講座教材及示範操作光碟」等。教材內容並於講座前兩日公佈於 HSDc. 網站,學員可自行列印講座教材。
--------------------------------------------------------------------------------

High-quality Software Design Consultant.
TEL: 02-27227179
Email: service@hsdc.com.tw
軟體設計論壇: http://www.hsdc.com.tw

透過 Google 找 Coding How-to 的好範例

我經常在文章發表或講課時說教:不要再花心思去學 How-to 了啦。 如果是對於工作上要用來謀生、不得不熟練的 How-to,那是另當別論;但是對於自我的學習成長、創新能力的發揮,幾乎不會有啥幫助。

"做中學" 的真正意義在於: 做了以後會去思考 "這是什麼?"、 "為什麼" 是這樣子?

尤其是軟體開發人員,總是要去思考,自己的職場生涯,是要往 "重複性的密集量化工作",還是 "知識性的創新設計" 之路來走?

軟體開發人員,太多太多,總是很容易把精力與時間浪費在不必要的地方上。 而且,對自己的成長卻沒啥幫助。

什麼叫作 "浪費在不必要的地方上"?

舉個例子。 上個月有位網友透過 Msn 問了我一個問題: 請問你會不會寫 C# 連結到 ActiveX 元件上?

ActiveX 是什麼? 我也不知道。 我直覺的就回答說:不是透過 MSDN 查一查範例就可以知道的?

那位網友回答說,他有查過,因為微軟已經不支援在 .NET 環境上開發 ActiveX 元件,所以看來,他必須自己要來自己從頭到尾寫 C# 連結 ActiveX 元件了。

姑且不論為何還要使用 ActiveX 元件,看來應該是要 "Re-Use (重用)" 已經寫好的元件吧。 但是,微軟轉移到了 .NET 環境卻不支援 ActiveX 必然會有其原因,可能是 安全性、穩定性與效能等問題。反正,我對其不支援的原因也不會有興趣。

但是,我只知道,那位網友要自行寫 C# 連結 ActiveX 元件這事,根本就是在浪費生命!

繼續閱讀 »

深圳軟件三日教學行(20~23)-02

深圳真是個美麗乾淨的城市!

道路非常的寬敞,到處都是豪華式的大廈林立。 若與台灣這邊的都市比起來,高雄市是比較接近的,但是卻仍沒有像深圳這般如此大又寬的馬路。 空氣也比台北清新太多了,主要的原因就是,這邊是禁止吃汽油的摩托車、而只能騎乘吃電的輕型機踏車。 喔,還有個有趣的現象,這裡並沒有專用的自行車道,所以騎踏車的民眾,竟然是騎在內側的快速道路上,而且還是逆向行駛,好像這也不算是違法,真是奇特的一景呢。

隔天早上我們與對方企管顧問公司派來接洽的兩位女孩子在旅社見面 (其實她們前一晚就從廣州前來並住宿在同一旅社),用完餐後然後由她們帶我們搭地鐵前去教課的地點。

這邊的環境對我來說一切都透著新鮮。 沒想到,早上約 8:00 時分,來來往往的群眾根本就是與台北一樣,儘是趕著上班、臉上總是冷漠、匆匆忙忙的上班族。 而這邊的地鐵也與台北的捷運一樣,但是又乾淨上太多了,而且趕著上班的人潮,大約只有台北的 1/10 左右吧,每一般列車都還能有空位乘坐。
深圳地鐵

我們教課的地點就是所謂的「深圳軟件園」,應該就是等同於台北「南港軟體園區」,但是卻又是大上太多太多了。
深圳軟件園

繼續閱讀 »

深圳軟件三日教學行(20~23)-01

這個月初,突然接到來自大陸廣州某家企管顧問公司的來信,希望能邀請 HSDc. 團隊至深圳教授 EA (Enterprise Architect) UML 工具操作使用。 怎麼會知道 HSDc. 團隊? 原來是 Ringle 的那本著作:「UML 與團隊協同合作」有大陸那邊亦有耳聞,且最近即將出版簡體版本。 因為結合了基礎觀念與實務操作,所以算是還頗為實用的工具用書。 而且對方一定指名要有 Ringle 親自來任教,其他講師,包括我與 Cathy (這次共安排了三位講師),都只算是助教性質。 ;)

對大陸事務的協調與聯絡,當然是由 Cathy 負責處理了。 她的執行能力與行動力是我所看過諸多人當中最積極的。 月初聯絡與討論,然後規劃了三天共 18 個小時的課程,安排了日程、交通與食宿等,這個星期,20號(星期日) 晚上就搭機成行了。

老實說,我還真頗不想去。 主要的原因是,我還沒有搭過飛機出國過。 :(

但可不是搭飛機害怕喔,而是我實在想把我第一次的「處女航」獻給家人、一同出國旅遊啦。 這類洽公性的事務,實在有些些的不甘心。 不過,基於現實的因素,對方相當有誠意,講師鐘點費用與在台灣我們的報價是一樣的,而關於搭機與食宿等,都由對方買單;再則,我還真想瞧瞧大陸在最南邊這一端的軟件發展情形。 喔,對啦,順便也去探望一下我老婆她哥哥,聽說他在「東莞」開了三家的韓國烤肉餐廳。 一年多不見,而且他聽說我要過來深圳這邊,就很積極的說要帶我去他的餐廳吃大餐。 :)

我們是搭 20號晚上 7:20 「國泰航空」飛往香港的飛機 (當日沒有直接飛往深圳,所以只好到香港再入境)。 我是開車,再去接 Ringle 一同到桃園機場。 因為是在「第一航廈」出(入)境,而那邊的停車場過夜每天只收 NT$100,當然划算多了。

因為啦,是第一次的出國,當然一切都算是透露著新鮮好奇,所以總是隨手拿著我老婆的 Sony T10 DC,看到就拍照,留著紀念。

一到出境大廳,然後拿著電子機票 Check-in 登記飛機座位後,就到了樓上一整排的商店區。 尤其是看到了 StartBucks,開心~ 離登機還有一個半小時,當然就是在這裡喝個咖啡休息囉。

桃園國際機場一景

這個時間正是耶誕氣氛,StarBucks 的熱門咖啡就是 "太妃糖核果拿鐵" 與 "櫻桃摩卡"。 我點了太妃糖,呼,真是香濃好喝啊。論花式調味咖啡,還真的是 StarBucks 的咖啡特別濃郁好喝,但就是太貴了些。
StarBucks@桃園國際機場

繼續閱讀 »

貽笑大方、不公正的愛國裁判?

最近不是那個東亞運,我國選手在跆拳道比賽中因為被韓國對手,擊中喉嚨倒地並送醫,而且還痛失金牌? 除了因為關連到了其中之一的裁判為我捫台灣籍,國內的民眾因為覺得沒有挺自己人,反而胳膊往外彎而引起公憤;再加上累積太久的不滿 - 太多的國際競賽 (尤其是跆拳道)被韓國狂熱的愛國裁判的明顯不公正,給搓掉應該是台灣可以贏得的獎牌。

只要是武術性質的競賽,而沒有那個非得誰倒地才能贏的規則下,誰點的比較多、累積的積分多就會贏的這樣情況下,當選手與裁判都是來自同一個國家時,最容易爆這樣出不公平的判決爭議。 只是勒,韓國的愛國裁判特別是世界知名罷了。

我在想,如果是韓國民眾看到有場一面倒的電視轉播比賽,而那個被一面倒的是自家人,但最後卻被本國的愛國裁判判決勝利,然後又看到對手國家的選手與觀眾們的忿忿不平,會不會覺得不好意思、有丟臉的感覺?

我們台灣這邊,常常會看到國外、特別是韓國籍的愛國裁判。 看到這個就會理所當然覺得很不爽。 那麼,到底我們台灣也有沒有這樣子的 "愛國裁判" 呢?

好像很少聽到吧? 難道是我們台灣人的道德觀特別高尚?

我以前倒是沒想過這問題,不過,最近看完一本內容很棒、國內有中文翻譯的暢銷書籍:「學習的王道」。 作者 (Josh Waitzkin)相當相當有名也頗具傳奇,他是西洋棋的神童,其父親所寫的「天生小棋王」一書還被拍成電影,贏過八次全美的西洋棋冠軍,並且還是全球最大的西洋棋電腦遊戲【西洋棋大師 (Chess Master)】的代言人; 長大成人後,迷上東方道家哲學思想,進而接觸太極拳並獲得多次的世界太極拳冠軍比賽。 世界太極拳冠軍比賽有好幾屆都是在台灣舉辦,所以作者 Josh 曾三度來台灣參加錦標賽。

那麼,作者的這些軼事到底與現在的主題有甚麼關係? 因為,作者本人來台灣參加太極拳比賽時,認為遭受到台灣的 "愛國裁判" 的不公平判決,而且他還把這些經過詳細的寫在這本國際暢銷的著書內。 從外國人的角度來看他們對於台灣愛國裁判的觀感,還挺新鮮有趣的。 :wink:

分散在好幾頁的篇幅內,作者都有提及這些在台灣受到的這種不公平判決。 我就節錄出這一小段來瞧瞧: (p.271)

這是我第二次參加這個錦標賽,而這兩次經驗都讓我對裁判的虛偽不公感到詫異。這一次,我已經熟悉主辦單位 (指台灣)的行事模式,基本上他們的作法大致如下:先舉行個盛大的開幕典禮歡迎外國選手,事實上他們並不希望我們贏得比賽。他們往往會在選手剛開始過招時,先以許多令人難以接受的裁決,讓整場比賽的氣勢一面倒。當外國選手發現比賽不公,情急之下亂了陣腳,情緒激動,不再能保持沉穩專注,進而越打越糟,士氣潰散。接下來,一旦台灣選手掌控了大局,這時裁判的判決又變得格外公正。他們會變得過度和善,以做出公平的假象。

呵呵,所以,看來中外、應該也是古今吧,愛國裁判何處不有啊!!
只是,不要太過離譜,除了貽笑大方,自家人也會不好意思吧。 ;)

[how-to] Windows 7 64-bits 跑多個 XP-Mode VMs 的方法

使用 Windows 7 64-bits 作業系統,比較擔心的是老舊的應用程式,只能執行於 Windows XP-32bit 的環境下。 為了能在 64-bit 的環境下,能 100% 執行 32-bit、XP 系統下的應用程式,MS 是透過執行 "Virtual PC" 的虛擬機器方式,只要是包括 Ultimate, Professional, Enterprise 等版本,均可以免費下載並安裝這個稱之為 "XP-Mode" 的虛擬 Windows XP 系統 (會自動授與一個授權的 OEM 帳號)。
*** 關於 XP-Mode 的下載與安裝,請參考:Windows Virtual PC ***

這個 "XP-Mode" 的優點是 MS 已將之最佳化,把不必要的系統服務給移除掉,所以佔用資源極小,開機後記憶體才佔用約 120MB 左右,所以跑 512MB 的環境也挺順暢。 再加上預設關閉並非是關機 (Shutdown),而是給 "休眠 (Hibernate)" 儲存至 HDD,所以爾後重新啟動的速度也是相當快。
Windows 7 x64_XP-Mode_task_manager

這個 XP-Mode VM (Virtual Machine),相當適合用來執行看盤交易程式,因為這些盤商提供的看盤交易系統,目前還沒有保證可以確實在 64-bit 的環境下正常執行。 請參考我另一篇: 在 Windows 7 64bit 下跑 AmiBroker 的方法

另外,有時候為了開發一些 Win-32 的程式,例如 DDE,所以會需要安裝如 VB6 的開發環境 (Visual Basic 6)。 為了不希望在原來 Windows 7 64-bit 安裝有的沒的,且使用次數其實不多,所以也會想安裝在 "XP-Mode" 內:但是又不希望與實際執行交易的作業環境下放在一起,所以希望能 "複製 (Clone)" 另一個 "XP-Mode" VM,並在其內安裝 Win32 的程式開發環境。

但是,"XP-Mode" 可不像 Vmware 這般,直接複製即可。 在 Virtual PC 的管理介面,你根本看不到可以複製 "XP-Mode" 的指令。 而如果你直接用檔案複製 (Copy) 的方式,則是無法執行新複製的那個 VM。

到底可不可以在 Windows 7 x64 的環境下同時執行多個 "XP-Mode" VM 呢? 答案是 Yes!
繼續閱讀 »