台灣三年級以上中小學生必學!未來將正式併入課綱
臺灣中小學校都在舉辦以貓爪程式(Scratch)程式為設計基礎的比賽!什麼是Scratch貓爪程式?
由MIT(麻省理工學院)經過多年研究測試
專為程式初學者量身打造的Scratch貓爪程式
寫程式就像玩積木一樣簡單
輕鬆學會設計一款遊戲!
「程式設計教育」已成全球的學習風潮,目前我們的國中小教育也正致力於培養孩子的運算思維、邏輯能力,現在只要透過這套市面上最容易上手理解的入門程式教材就能有效學習輕鬆完成!
學會程式語言,動手「寫」出自己的遊戲吧!
跟著書中的15個教學單元,一步步地組合出一款遊戲,同時階段性地解說Scratch的使用方法、學習程式設計時必備的基礎通用概念。從實作中體驗、激盪創意、培養運算思考及解決問題的能力!
從零開始一點一滴建構出一款射擊遊戲,透過解說過程,教導你「製作時的訣竅」。一旦掌握這個訣竅,當你想要另外自行創作其他作品時,就能夠適時應用!
Scratch的全中文化程式介面,讓程式初學者也能輕鬆上手。
好的教學工具書,讓你一本就能完全掌握程式設計的基本概念!
「沒有一定的正確解答」就是程式設計中的有趣之處,學習程式語言能體驗「同樣的結果在過程中是以不同的邏輯思考堆疊拼湊出來的」,因此更能培養出解決問題及邏輯思考的能力。從錯誤中不斷嘗試、與他人討論、創造新的想法,透過一步步除錯、修改,讓邏輯更清晰,同時也能訓練表達、溝通與創造力。
和世界的程式設計同好交流分享
除了單機版本,Scratch就像是社群媒體般,只要在官網輕鬆註冊,就能迅速開始體驗,更有多種語言可以選擇,能與世界各地的人交流!不但可以分享、上傳自己完成的專案遊戲,還能下載試玩他人的作品,從玩遊戲中推算分析程式的構想,學習模仿,激發靈感,甚至挑戰設計更進階的程式,讓你越玩越厲害!
貓爪(Scratch)程式和一般Java、C++語言的差別是?
一般程式語言都要輸入密密麻麻又複雜的程式碼,只要輸錯一個字元或符號,就容易造成語法錯誤,往往也難以了解該從何修正起;Scratch則是以有趣的積木為元素,程式依功能性分門別類,介面簡單易操作,適合程式入門學習者,只要決定終極目標→分析內容→拆解成多個架構,就像玩積木一樣堆疊、拆解程式,完成好玩又有趣的遊戲!
什麼人最適合本書?
所有大朋友小朋友~各別或共同學習
‧曾稍微接觸過Scratch,現在希望能更進一步做出一個完整作品的使用者;或對程式設計或Scratch貓爪程式有興趣,想先了解自己能學到什麼的人
‧初次想挑戰程式設計,國中以上年齡的讀者
‧因為想運用Scratch貓爪程式在課堂教學,正在尋找合適教材的老師
‧想陪孩子一起挑戰Scratch貓爪程式,但希望自己能先進度超前,以便回答孩子提問的父母
專業推薦
-師鐸獎教師
國立臺灣師範大學數學系畢業
台北市國小數學科專任教師 黃若玲 老師
「很棒的一本書!適合想挑戰程式設計的人與想訓練孩子邏輯能力的家長一同和孩子分享學習書中內容。」
-新北市桃子腳國小電腦科指導教師 游雅婷 老師
「我看過很多有關scratch的書籍,此書內容極為豐富和詳細,非常適合初學者閱讀,跟著此書步驟來認識scratch。推薦給第一次接觸scratch的人,不只大孩子,連大人都適合閱讀!」
臺灣中小學校都在舉辦以貓爪程式(Scratch)程式為設計基礎的比賽!什麼是Scratch貓爪程式?
由MIT(麻省理工學院)經過多年研究測試
專為程式初學者量身打造的Scratch貓爪程式
寫程式就像玩積木一樣簡單
輕鬆學會設計一款遊戲!
「程式設計教育」已成全球的學習風潮,目前我們的國中小教育也正致力於培養孩子的運算思維、邏輯能力,現在只要透過這套市面上最容易上手理解的入門程式教材就能有效學習輕鬆完成!
學會程式語言,動手「寫」出自己的遊戲吧!
跟著書中的15個教學單元,一步步地組合出一款遊戲,同時階段性地解說Scratch的使用方法、學習程式設計時必備的基礎通用概念。從實作中體驗、激盪創意、培養運算思考及解決問題的能力!
從零開始一點一滴建構出一款射擊遊戲,透過解說過程,教導你「製作時的訣竅」。一旦掌握這個訣竅,當你想要另外自行創作其他作品時,就能夠適時應用!
Scratch的全中文化程式介面,讓程式初學者也能輕鬆上手。
好的教學工具書,讓你一本就能完全掌握程式設計的基本概念!
「沒有一定的正確解答」就是程式設計中的有趣之處,學習程式語言能體驗「同樣的結果在過程中是以不同的邏輯思考堆疊拼湊出來的」,因此更能培養出解決問題及邏輯思考的能力。從錯誤中不斷嘗試、與他人討論、創造新的想法,透過一步步除錯、修改,讓邏輯更清晰,同時也能訓練表達、溝通與創造力。
和世界的程式設計同好交流分享
除了單機版本,Scratch就像是社群媒體般,只要在官網輕鬆註冊,就能迅速開始體驗,更有多種語言可以選擇,能與世界各地的人交流!不但可以分享、上傳自己完成的專案遊戲,還能下載試玩他人的作品,從玩遊戲中推算分析程式的構想,學習模仿,激發靈感,甚至挑戰設計更進階的程式,讓你越玩越厲害!
貓爪(Scratch)程式和一般Java、C++語言的差別是?
一般程式語言都要輸入密密麻麻又複雜的程式碼,只要輸錯一個字元或符號,就容易造成語法錯誤,往往也難以了解該從何修正起;Scratch則是以有趣的積木為元素,程式依功能性分門別類,介面簡單易操作,適合程式入門學習者,只要決定終極目標→分析內容→拆解成多個架構,就像玩積木一樣堆疊、拆解程式,完成好玩又有趣的遊戲!
什麼人最適合本書?
所有大朋友小朋友~各別或共同學習
‧曾稍微接觸過Scratch,現在希望能更進一步做出一個完整作品的使用者;或對程式設計或Scratch貓爪程式有興趣,想先了解自己能學到什麼的人
‧初次想挑戰程式設計,國中以上年齡的讀者
‧因為想運用Scratch貓爪程式在課堂教學,正在尋找合適教材的老師
‧想陪孩子一起挑戰Scratch貓爪程式,但希望自己能先進度超前,以便回答孩子提問的父母
專業推薦
-師鐸獎教師
國立臺灣師範大學數學系畢業
台北市國小數學科專任教師 黃若玲 老師
「很棒的一本書!適合想挑戰程式設計的人與想訓練孩子邏輯能力的家長一同和孩子分享學習書中內容。」
-新北市桃子腳國小電腦科指導教師 游雅婷 老師
「我看過很多有關scratch的書籍,此書內容極為豐富和詳細,非常適合初學者閱讀,跟著此書步驟來認識scratch。推薦給第一次接觸scratch的人,不只大孩子,連大人都適合閱讀!」
序
動手「寫」出自己的遊戲吧!
為什麼人們會想學習程式設計呢?
我想,背後應該有幾種不同的原因:感覺很帥、想更深入瞭解電腦方面的知識、想成為專業工程師……等等。除了上述的原因,我想不論以前或現在,「想要親自設計一個遊戲」這個想法,一定也存在於部分想學程式的人心中。
對30年前的小朋友而言,這是一個非常真切的願望。在當時,想要製作、遊玩遊戲,寫程式便是必備的技能。1983年,任天堂發售了堪稱日本遊戲機鼻祖的「超級任天堂(Super Famicom)」,而在這台遊戲機問世前,如果想要玩遊戲,只能到遊樂場付錢(街機「太空侵略者Space Invaders」於1978年誕生),或是用BASIC培基語言編輯程式來操控微電腦(Microcomputer)才行。BASIC感覺起來大概像這樣:
10 INPUT A
20 INPUT B
30 PRINT A+B
40 GOTO 10
上述的例子中,最後呈現的結果是:用鍵盤輸入2個數字,就能顯示兩者的合計值。這裡用的英語很簡單,我想各位應該能明白它背後的意思。在BASIC問世前,人們只能用16進位(0~9、A~F構成的數字)來輸入機器語言,一想到這裡,就令人不禁覺得陽春的BASIC實在太美妙了。
以前每月發售的微電腦雜誌中,都會刊載用BASIC寫的遊戲程式,只要一字不漏地把那些跨了好幾頁篇幅的程式碼輸入到電腦裡(有時候還需要和朋友一起合作輸入),鍵入「RUN」這個指令,就能玩到和遊樂場裡面一樣的遊戲(事實上兩者之間還是有相當大的差距,必須努力想像才能把它們當成是一樣的東西)。
這個過程真的非常有趣,但畢竟微電腦要價不斐(當時最具代表性的微電腦之一,由NEC出品的「PC-8001」售價為16萬8千日圓),所以我甚至有過幾次驚險的經驗——躲過店員的耳目,把程式碼輸入到電器行陳列的微電腦裡,趁程式碼還沒被刪除前趕緊享樂一番。
現在,人們已經不再需要費這麼大的苦勁。市面上有許許多多很棒的遊戲,我們可以直接購買遊戲包,也可以下載付費或免費遊戲,隨時享受遊戲的樂趣。說實在話,我們根本不需要特別學習程式設計。
那麼,為什麼各位還是願意拿起這本書呢?應該是因為各位已經發現或是隱約覺得寫遊戲比玩遊戲更有趣。說起來,30年前的我確實就是這麼認為的(然後,我現在就成了專業的工程師了)。
為了因應各位的期待,我們寫了這本書。書中會教各位製作1個遊戲——人人都聽過、玩過的射擊遊戲,我們細分成好幾個單元(書中稱之為Stage),仔細講解製作的步驟與原理。
書中使用的程式語言,是美國MIT(麻省理工大學)Media Lab.開發的「Scratch」教學用語言。不同於BASIC,Scratch幾乎不必使用鍵盤進行輸入,只要把寫著中文的「積木」堆積起來,就能寫出程式;也因此,就原理上來說,並不會發生程式語言造成的語法錯誤(Syntax error),光就這點來說,Scratch就已經是一個很值得入門者選擇的學習平台。
已經使用過Scratch的人,相信就會明白運用它寫程式是件很容易的事。但另一方面,讓預設的貓咪角色走路雖然簡單,但若是想讓牠做出更複雜的動作,有的人忽然就會覺得面臨了一個難解的挑戰。事實上,「程式語言本身簡單」與「想製作的對象的語義(Semantics)上的困難程度」,其實是兩碼子事。
到底該用什麼樣的方法,來涉及、討論、處理這個困難點,也是本書試圖解決的問題之一。看起來再怎麼複雜龐大的體系,只要適當分解後,就能變成腦袋能理解的大小。用比較符合潮流的語言來描述的話,我們或許可以說工程師看世界的方法,就是所謂的Computational Thinking(運算思考),舉例來說,提取物件(Object)、如何把東西模型化(Modeling)、如何選擇變數的可視範圍(Scope)、重構(Refactoring)等等,都屬於上述的思考範疇。
雖然寫了一連串看似很難理解的東西,但本書中教導的程式、做出來的遊戲,是非常非常有趣的。但願透過這本書籍,能夠讓各位感受到我以前體會過的寫程式的樂趣。希望讀者們都能享受這份挑戰。
阿部和廣
動手「寫」出自己的遊戲吧!
為什麼人們會想學習程式設計呢?
我想,背後應該有幾種不同的原因:感覺很帥、想更深入瞭解電腦方面的知識、想成為專業工程師……等等。除了上述的原因,我想不論以前或現在,「想要親自設計一個遊戲」這個想法,一定也存在於部分想學程式的人心中。
對30年前的小朋友而言,這是一個非常真切的願望。在當時,想要製作、遊玩遊戲,寫程式便是必備的技能。1983年,任天堂發售了堪稱日本遊戲機鼻祖的「超級任天堂(Super Famicom)」,而在這台遊戲機問世前,如果想要玩遊戲,只能到遊樂場付錢(街機「太空侵略者Space Invaders」於1978年誕生),或是用BASIC培基語言編輯程式來操控微電腦(Microcomputer)才行。BASIC感覺起來大概像這樣:
10 INPUT A
20 INPUT B
30 PRINT A+B
40 GOTO 10
上述的例子中,最後呈現的結果是:用鍵盤輸入2個數字,就能顯示兩者的合計值。這裡用的英語很簡單,我想各位應該能明白它背後的意思。在BASIC問世前,人們只能用16進位(0~9、A~F構成的數字)來輸入機器語言,一想到這裡,就令人不禁覺得陽春的BASIC實在太美妙了。
以前每月發售的微電腦雜誌中,都會刊載用BASIC寫的遊戲程式,只要一字不漏地把那些跨了好幾頁篇幅的程式碼輸入到電腦裡(有時候還需要和朋友一起合作輸入),鍵入「RUN」這個指令,就能玩到和遊樂場裡面一樣的遊戲(事實上兩者之間還是有相當大的差距,必須努力想像才能把它們當成是一樣的東西)。
這個過程真的非常有趣,但畢竟微電腦要價不斐(當時最具代表性的微電腦之一,由NEC出品的「PC-8001」售價為16萬8千日圓),所以我甚至有過幾次驚險的經驗——躲過店員的耳目,把程式碼輸入到電器行陳列的微電腦裡,趁程式碼還沒被刪除前趕緊享樂一番。
現在,人們已經不再需要費這麼大的苦勁。市面上有許許多多很棒的遊戲,我們可以直接購買遊戲包,也可以下載付費或免費遊戲,隨時享受遊戲的樂趣。說實在話,我們根本不需要特別學習程式設計。
那麼,為什麼各位還是願意拿起這本書呢?應該是因為各位已經發現或是隱約覺得寫遊戲比玩遊戲更有趣。說起來,30年前的我確實就是這麼認為的(然後,我現在就成了專業的工程師了)。
為了因應各位的期待,我們寫了這本書。書中會教各位製作1個遊戲——人人都聽過、玩過的射擊遊戲,我們細分成好幾個單元(書中稱之為Stage),仔細講解製作的步驟與原理。
書中使用的程式語言,是美國MIT(麻省理工大學)Media Lab.開發的「Scratch」教學用語言。不同於BASIC,Scratch幾乎不必使用鍵盤進行輸入,只要把寫著中文的「積木」堆積起來,就能寫出程式;也因此,就原理上來說,並不會發生程式語言造成的語法錯誤(Syntax error),光就這點來說,Scratch就已經是一個很值得入門者選擇的學習平台。
已經使用過Scratch的人,相信就會明白運用它寫程式是件很容易的事。但另一方面,讓預設的貓咪角色走路雖然簡單,但若是想讓牠做出更複雜的動作,有的人忽然就會覺得面臨了一個難解的挑戰。事實上,「程式語言本身簡單」與「想製作的對象的語義(Semantics)上的困難程度」,其實是兩碼子事。
到底該用什麼樣的方法,來涉及、討論、處理這個困難點,也是本書試圖解決的問題之一。看起來再怎麼複雜龐大的體系,只要適當分解後,就能變成腦袋能理解的大小。用比較符合潮流的語言來描述的話,我們或許可以說工程師看世界的方法,就是所謂的Computational Thinking(運算思考),舉例來說,提取物件(Object)、如何把東西模型化(Modeling)、如何選擇變數的可視範圍(Scope)、重構(Refactoring)等等,都屬於上述的思考範疇。
雖然寫了一連串看似很難理解的東西,但本書中教導的程式、做出來的遊戲,是非常非常有趣的。但願透過這本書籍,能夠讓各位感受到我以前體會過的寫程式的樂趣。希望讀者們都能享受這份挑戰。
阿部和廣