十二月 16, 2013
» The Art of Design

為甚麼好的設計會來自於差的設計呢? Scott 在 Why Good Design Comes from Bad Design 提到攻讀 CMU Computer Science 博士時選了門介面設計課,第一堂課上他發現一位年輕人素描著隨身聽的各種變異版本,而且圖紙上已經堆積了三、四十種不同考量的版本了。 Scott 於是湊過去問這個小伙子「幹嘛費勁畫那麼多草稿?」,小伙子發楞了好一會才笑著回說: I don't know what a good idea looks like until I've seen the bad ones. 經過時日洗煉, Scott 後來也體會到當初認為多餘的作法,其背後的精神,他提到: Each new idea I sketched out was more informed than the last. Each bad idea

六月 20, 2010

電腦做什麼事
pydoing
is about »

tag cloud

» c concept

C 語言基本概念 我們先用一個簡單範例講解 C 程式的基本概念 #include <stdio.h> int main(void) { char name[20]; printf("請輸入你的英文暱稱: "); scanf("%s", name); printf("Hello,%s!今天好嗎?\n", name); return 0; } /* 《程式語言:教學誌》的範例程式 http://pydoing.blogspot.com/ 檔名:simple.c 功能:簡單的程式範例 作者:張凱慶 時間:西元2010年4月 */ 先來編譯執行看看 嗯, say hello !我們看到程式的第一行 #include <stdio.h> 利用井字號 # ,後頭接著


七月 4, 2009
» Two Ways to Solve a Problem

這些年下來,我反覆觀察到一個現象:程式員各有一套慣用的方法來克服自己遭遇到的問題,這些解題習慣可區分成兩種,工程師多只專精其一,只有少數能任意在兩者間自在地切換。 在很多情況下,無論程式員採用哪種作法,都可輕易把問題解掉;但是另有一些問題,卻不是這樣隨性而為就解得掉的--這就值得我們好好玩味了…… 以 1..n 的正整數相加這個例子來說,我知道程式員應該利用現成的副程式,以爬說語來寫,應該要長成這樣: n = 100 y = sum(range(1, n+1)) 假裝我們沒有現成的,像 sum 這樣的副程式可用。那麼,一種可能的寫法如下: y = 0 for i in range(1, n+1): y += i 這是標準的合成(Synthesis)法。以這個例子來說,如果不考慮時間複雜度要 O(n) ,這個方法其實

biggo.com.tw

A Django site.