很多對程式有著很大熱情的工程師們都會認為良好的程式碼才是一切,於是不斷找空檔將其重構。但事實上這些年我慢慢試著阻止自己這樣作,當然,如果是真的寫的很差的程式,例如每個地方都有相同一塊塊的code,整理是必需的。
不過常常重構也是產生更多問題的開始,例如已經穩定的產品,工程師為了要加入一些設計模式而造成出貨時間的延宕。在台灣大多數的公司都沒有系統架構師這個職位,所以都由工程師來擔任設計,一開始所思考的想法便不是宏觀大局的眼界,日後才會需要一直改...
寫程式的初衷是要達到它的功能,並不是為了要做出藝術品,這就是我的觀點,因為使用者不會在意背後到底是怎麼做的,如果能讓人用的滿意,就是好產品!
2010年8月14日 星期六
2010年5月14日 星期五
2010年4月29日 星期四
iPhone開發技巧(5) 找到先前版本的 iPhone SDK 與 Xcode
抱歉隔了好長一大段時間才又寫了新的文章,因為Sam最近在忙論文口試與準備上架第一個iPhone App,在整個開發過程中有參考不少的網路OpenGL ES for iPhone教學,但是有些人可能會發現到因為Apple更新速度很快,所以很多程式框架是在2009年被拍成教學,但在2010年那些框架就全改了。並且,在你申請完ADC帳號後,作實機測試的時候也有一項很麻煩的問題,例如Sam的iPhone更新到3.1.3但是Xcode與SDK是3.1.2,然後執行時候它會和你說裝置版本不符合所以不能Run,這時候千萬不要Restore版本歐!!(除非你裡頭資料不要了...),於是你上去ADC找,會發現只有最新版本Snow Leopard,通常像Sam還沒升級(還是leopard)的就認命Restore...。
2010年3月25日 星期四
iPhone 開發技巧(4) 通知追蹤
我們平常對於iPhone App的開發,都是著重在MVC或商業邏輯上,當然大家一定會有自己的一套除錯方式,或是利用Performance Tool等來進行調效,不過這裡Sam想和大家說一下通知追蹤。
iPhone應用程式中的互動可分為三大類:Delegate(委派)、Target-Action(目標-動作)及Notification(通知)。
Delegate(委派)的作用方式可將它想像成使用者告知A去做事,而A事先把這份責任委派給B,因此,A在接收到做事指令後會直接轉交B來執行(聽起來有點類似推卸責任...雖然最後還是會把事情做完...)。
iPhone應用程式中的互動可分為三大類:Delegate(委派)、Target-Action(目標-動作)及Notification(通知)。
Delegate(委派)的作用方式可將它想像成使用者告知A去做事,而A事先把這份責任委派給B,因此,A在接收到做事指令後會直接轉交B來執行(聽起來有點類似推卸責任...雖然最後還是會把事情做完...)。
2010年3月24日 星期三
2010年3月19日 星期五
iPhone 開發技巧(2) 要不要使用NIB(XIB)?
2010年3月9日 星期二
2010年1月22日 星期五
2010年1月21日 星期四
心智圖與甘特圖運用
最近這兩天在整理論文的東西,也順便預定了一下論文時程,老實說,又要系統實作、手機應用加上專家訪談,真的是相當累人,所以只要一環進度落後就會造成很大的影響,因此甘特圖就是必備的東西。
甘特圖(Gantt Chart)由亨利·甘特於1910年開發的,主要為透過條狀圖來顯示項目、進度、和其它時間相關因素隨著時間進展的情況。
其中,橫軸表示時間,縱軸表示活動(項目)。線條表示在整個期間上計劃和實際的活動完成情況。甘特圖可以直覺地表明任務計劃在什麼時候進行,及實際進展與計劃要求的對比。管理者由此可以非常便利地弄清每一項任務(項目)還剩下哪些工作要做,並可評估工作是提前還是落後,亦或正常進行。除此以外,甘特圖還有簡單、醒目和便於編制等特點。
甘特圖(Gantt Chart)由亨利·甘特於1910年開發的,主要為透過條狀圖來顯示項目、進度、和其它時間相關因素隨著時間進展的情況。
其中,橫軸表示時間,縱軸表示活動(項目)。線條表示在整個期間上計劃和實際的活動完成情況。甘特圖可以直覺地表明任務計劃在什麼時候進行,及實際進展與計劃要求的對比。管理者由此可以非常便利地弄清每一項任務(項目)還剩下哪些工作要做,並可評估工作是提前還是落後,亦或正常進行。除此以外,甘特圖還有簡單、醒目和便於編制等特點。
2010年1月20日 星期三
Google GO 語言獲得 TIOBE 評選為2009年度程式語言
TIOBE的年度語言排名又出爐了 ~ Java仍然穩站第一位,php排名提升,python仍然不動,不過由於iPhone的關係,Objective-C 躍昇到12名,而去年11月才發表的Google GO語言則莫名其妙的一下跳到13名...
原文出處:http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
2010年1月16日 星期六
安裝PostgreSQL on Mac OSX
之前Sam使用過資料庫的經驗有Oracle、MSSQL,當然最常依然是MySQL。基於php全球使用人數眾多,而通常與MySQL直接綁在一起變成書籍、課程等,也讓MySQL的聲名大噪。不過最近由於論文要研究一些國外的典藏系統(DSpace),發現他們除了商用資料庫外,也有使用PostgreSQL(念法為post-gres-ql)。PostgreSQL首次發行日為1989,MySQL為1996,所以請不要因為沒聽過它的名號就認為它很新或不夠成熟...
2010年1月14日 星期四
如何做一個出色的程式人員(轉)
轉自 http://blog.csdn.net/lkjxshi/archive/2010/01/07/5149541.aspx
愛這行! ! !
從事任何行業都一樣,只有真正的愛上了這份工作,才會投入熱情,才會在順境中自我警醒,在逆境中尋找突破。這個行業的競爭很激烈,你停下來走,別人就立刻會跑步超過你,沒有對這一行業的一種熱情,就很難在困境中保持一種執著的態度堅持到底。
踏踏實實“紮馬步”
今天無意中看了“校長”的“程序員&司機”,其中談到了關於程序員速成的問題。其實速成班畢業的“系統殺手”早已在遍布大江南北,只是在互聯網時代,互聯網的應用型軟件生命週期越來越短,業務驅動主導的情況下,這種速成方式看起來反而提高了企業生產效率。但這樣的人才也就只能寫幾個Facebook上的插件應用或者iGoogle上的Gadget,真的要出Google,Amazon,Yahoo改變互聯網世界的企業,還是需要踏踏實實先學“紮馬步”的人。
愛這行! ! !
從事任何行業都一樣,只有真正的愛上了這份工作,才會投入熱情,才會在順境中自我警醒,在逆境中尋找突破。這個行業的競爭很激烈,你停下來走,別人就立刻會跑步超過你,沒有對這一行業的一種熱情,就很難在困境中保持一種執著的態度堅持到底。
踏踏實實“紮馬步”
今天無意中看了“校長”的“程序員&司機”,其中談到了關於程序員速成的問題。其實速成班畢業的“系統殺手”早已在遍布大江南北,只是在互聯網時代,互聯網的應用型軟件生命週期越來越短,業務驅動主導的情況下,這種速成方式看起來反而提高了企業生產效率。但這樣的人才也就只能寫幾個Facebook上的插件應用或者iGoogle上的Gadget,真的要出Google,Amazon,Yahoo改變互聯網世界的企業,還是需要踏踏實實先學“紮馬步”的人。
訂閱:
文章 (Atom)