Monthly Archives: June 2009

如何寫出有用的程式?

有網友在這篇 別讓危險成為預設的行為,讓危險的行為比安全的行為更麻煩 回應裡提到 WiyD-Luck 請問大大寫程式寫多久了小弟今年大三要升大四了在無意間近來大大的blog收穫良多(請受小的一拜會寫程式.跟會寫一個能用的程式.差別好大…想問大大那些程式會造成的漏洞.是經過自己研讀還是有人指點才有如今的實力阿PS.小弟就讀的大學老只有教我怎麼寫程式.並沒有教我寫出一個可以用的程式.. 我覺得這是很多人心裡共同的疑問,所以就特地寫了一篇來說說我的看法…

Posted in 中文文章, 分享 | Tagged , , , | 16 Comments

開發wxPython的利器 : PyCrust

一直想做的事 最近我在用wxPython開發某些程式,隨著開發的過程中,難免需要一些直接的測試,改動程式碼來進行測式似乎不是很明智的選擇,即使Python是直譯式的語言,每改一次重新啟動整個程式也是一種浪費,而且狀態每次也會重置,於是我開始想,我是否可以寫一個像Half-Life那樣的一個console整合到我的GUI中,如此一來我就可以在開發時直接進行某些測試,對某些特定的模組操作,如此一來開發的效率可以提升,對於程式而言也會更好除錯,但是雖然寫一個console不是什麼太難的事,但也不是什麼太輕鬆的事,為了早點完成程式,於是我就沒有真的去做 直到某本書的出現 : wxPython in action 當有一天我訂的書: wxPython in action終於來了,這本書要1500元,實在是不便宜,但是我認為卻很值得,我在書中發現我以前一直都沒仔細去注意到的東西,PyCrust,在翻過這章節時我驚訝地發現,這不就是我想做的嗎? 一個控制臺,可以讓我操作、觀察、測試我的GUI,而且整合的方法超簡單,只要一行指令 python pywrap.py main.py 在wx.py的package下的pywarp.py會自動找到app並且將PyCrust整合進去,在我程式中執行的畫面就像這樣 在截圖中我利用pycrust將gui的背景換成了紅色,它不止是一款簡單的GUI,因為他是動態載入模組的name space,和一般IDE不同的是,他的自動完成是動態的,一般的IDE只抓得到靜態的成員,但是即然是動態載入又是在執行中,有什麼成員一清二楚,所以基本上自動完成功能感覺非常地強大,但相對的弱點是對於靜態的部份比較麻煩 它除了可以自動整合到現有的wxPython gui程式中,更可以把裡面各個元件分開來獨立使用 所以它可以幹麻? 對我來說,PyCrust將會是像神兵利器般好用的工具,像是開發遊戲之類需要大量的調校,一個console或是動態的機制是免不了的,而console提供了立即且互動式的環境,有了PyCrust,就等於有了現成的console可以使用,在遊戲的開發過程中,開發者可以利用這個console動態地改變各種參數來觀察反應等等,當然開發遊戲只是其中一個應用的例子,即使在一般的GUI中也會是很好用的工具 順帶一提 wxPython in action真的是難得一見的好書,有別於一般的書,它使用問句來當做標題,但是不會因為這樣而零散雜亂,相反的,你可以很正式地看完一次,也可以很快速地掃過一次,當你需要什麼東西時,那些問句可以幫助你很快地找到你需要的東西,豐富的截圖和圖解更讓人不用費心去猜想到底做出來會是什麼樣子,或是想像到底是如何運作,如果要學wxPython,我覺得這本書真的是非常值得推薦,做為工具書,這本也是必備的一本

Posted in Python, 中文文章, 分享, 遊戲設計 | Tagged , , , | 2 Comments

在家遨翔全世界: 微軟模擬飛行 Microsoft Fight Simulator X

飛行 飛行一直是人類的夢想,這對大多數人來說都遙不可及,我們所謂的飛行頂多是搭乘飛機而已,是需要長時間的訓練才能辦到的,但是飛行有相當的風險,沒辦法讓初學者一開始就駕使飛機,為了因應這樣的需求,模擬器被發明了,在進真的駕駛艙飛行前,初學者可以在模擬的環境下安全的學習如何飛行,原本這需要特殊的設備,現在拜由電腦的進步,在家也能夠進行模擬飛行,雖然是模擬的,和現實有一段差距,但是已經相當逼真了,玩家可以透過模擬飛行來飛遍全世界,我們現在就來介紹,微軟所推出的模擬飛行10,以下簡稱FSX 模擬飛行 模擬飛行是微軟所推出的一款模擬飛行遊戲,說它是遊戲似乎有點小看它,雖然是遊戲,但是有相當的擬真程度,有很多熱衷的玩家甚至組成了虛擬航線,也就是只存在線上的航空公司,玩家們要通過考試才可以成為機師,我們先來看看它的遊戲畫面 如你所見的,進如眼廉的是複雜的儀表版,就跟現實中你會在飛機的駕駛艙看到的一樣,然後是窗外的景色,在這裡是桃園中正國際機場,沒有錯,FSX收錄了世界各地的機場,台灣的機場當然也在裡面,而這台飛機是波音747-400,基本的東西都跟現實中的差不多,就像開真的飛機似的,所以其實玩這款遊戲,就會發現原來開飛機這麼困難,需要非常非常多的知識,流體力學、通訊、精通英語等等,我個人只是偶爾玩一下,所以都是靠自己的直覺亂飛,偶爾看一下文章找一下資料,在某些程度來說他非常地困難,像是降落就非常地困難,我摔爛幾百架的飛機才漸漸有成功地降落 接著就讓我們來介紹FSX….

Posted in 中文文章, 遊戲 | Tagged , , , , | 7 Comments