跳到主要內容

發表文章

用SWTBot 在 Eclipse 測試 content assist

SWTbot 是一個 Eclipse plugin 可用來自動測試 Eclipse plugin。 Javadoc 幾點注意 test case運作時必須加上 plug-ins: org.eclipse.core.net org.eclipse.ui.ide.application 執行時可能需要加上JVM參數 -XX:MaxPermSize=512m ,在我的環境下總是會遇到 outofmemoryerror: PermGen Space 模擬按鍵 : http://wiki.eclipse.org/SWTBot/Keyboard_Layouts 以下是簡單的測試案例,其步驟是移動游標到指定位置,並觸發content assist功能,並檢查proposal內容是否如我們預期。 import org.eclipse.swtbot.eclipse.finder.SWTWorkbenchBot; import org.eclipse.swtbot.eclipse.finder.widgets.SWTBotEclipseEditor; import org.eclipse.swtbot.eclipse.gef.finder.SWTBotGefTestCase; import org.eclipse.swtbot.swt.finder.junit.SWTBotJunit4ClassRunner; import org.eclipse.swtbot.swt.finder.utils.Position; import org.eclipse.swtbot.swt.finder.utils.SWTBotPreferences; import org.eclipse.swtbot.swt.finder.widgets.SWTBotTreeItem; import org.junit.BeforeClass; import org.junit.Test; import org.junit.runner.RunWith; @RunWith(SWTBotJunit4ClassRunner.class) public class Basic extends SWTBotGefTestCase { private static SWTWorkb...

軟體版本編號方式

  Apache Portable Runtime Project Version Numbering  這分文件詳細定義編號意義,讓編號代表明確的軟體工程意義。 基本上就是3個數字組成:  MAJOR.MINOR.PATCH 每一個數字改變都有相容性上不同的意義。 由github 提出的版本編號規格: Semantic Versioning

Application Framework 設計感想

關於一個application framework 該怎麼設計,根據這陣子工作的經驗,整理一些心得。 使用時鬆散,設計時嚴謹。 鬆散是方便使用者,算是抽象化帶來的好處,使其不需要瞭解運作細節就可以使用。設計嚴謹才容易在其上發展更多應用,如輔助工具等。可以讓你鬆散使用的技術,背後在設計的時候都有嚴謹的定義,當運作不如你預期的時候,可以依循一個嚴謹的規則檢視背後的運作流程來除錯。 從簡單的原則與概念開始,漸進地增加概念。 每次增加一個概念,都要與既有概念一起比較分析,看有無衝突之處。 Spring framework 最早只從一個 Dependency Injection概念開始,發展到今天成為一個 de facto Java EE standard。 我相信儘可能的維持簡單才是好的設計,因為人的心智是極為有限的。 整體應維持一致的設計哲學。 兩種相反的程式語言設計哲學: Python: There should be one-- and preferably only one --obvious way to do it Perl: There's more than one way to do it. 沒有對錯,只有維持一致才不會讓使用者混亂。 有一致的規則,使用者容易理解,可以舉一反三,不用事事皆需查文件,也無需針對各種情況寫文件。 從使用角度來定義需求,並用嚴謹的技術去滿足。 從使用者角度評估才能解決他們真正的痛點,但用嚴謹的技術才能維持長久發展。 Framework 新創的抽象概念應有明確的定義。 定義不清楚將導致使用者學習的障礙。 Application framework不是Application Application framework的目的是協助它的使用者建造application,而application(應用程式)本身是要解決應用情境的問題。所以application framework的抽象層次要更高一點,不要對應用情境有過多的假設。

TortoiseGit (Git 客戶端)

TortoiseGit是Windows下可用的Git 客戶端,可用來與Github連線,push及pull程式碼 簡單裝安裝教學: [教學]初心者git (TortoiseGit) + GitHub使用教學 使用的時候記得啟動Pageant (Putty agent)並把產生的private key加到Pageant中,才可進行ssh通訊。

免費圖片圖示下載網站

照片 PHOTO PIN 需加註圖片來源 介紹: http://www.techbang.com/posts/9866 http://www.soft4fun.net/website-recommand/photopin-free-photo-gallery.htm freepixels 介紹: http://blog.xuite.net/loveisa/media/19739611 小圖示 http://icons.mysitemyway.com/

大衛 鮑森新約、舊約綜覽

大衛 鮑森(David Pawson) 的新約、舊約綜覽是非常好的讀經教材,他深入淺出的講解聖經,保證讓基督徒在聖經中找到前所未有的亮光。 以下是一些相關的網路資源: Mp3 福音影視網 新約綜覽 舊約綜覽 正版DVD有附上課程內的所有中文圖表與講義,值得收藏。