程式語言基本概念.功能及用途
1.為何要學習程式?
「動機」和「堅持」才是學習最重要的兩把鑰匙
學程式的目的不是讓你可以寫程式賣錢,而是學習程式設計的思維。從中學會運算思維,把事情程序化,把資料結構化、模型化
活動設計1-為何要學程式?
2.什麼是程式?有何功能?用在哪裡?
活動設計2-寫程式是甚麼?
軟體(Software)就是程式(Program),它是由一連串的指令(Instructions)所組成。
人與人透過語言溝通,如果我們需要電腦來幫我們做事,就必須想辦法與電腦溝通。
程式語言就是人與電腦溝通的工具。為了讓電腦能夠完成工作,電腦專家就為程式語言制定一套特定的格式與語法規則,指揮電腦完成工作。 不同類型的程式語言,語法格式就不同,就如同中文英文法文,語法是不一樣的。 簡單的說程式就是許多叫電腦做事的指令程序。
程式設計就是用程式語言把求解特定問題的演算法描述出來的指令
活動設計2.1-寫程式是甚麼?對電腦下指令練習
按鍵精靈下載
2048遊戲開放原始碼下載
https://github.com/gabrielecirulli/2048
3.程式語言種類
大致區分
(1)視覺化程式語言
a.Scratch.Kodu. Blockly.Project Spark........
b.谷歌與麻省理工合作開發下一代Scratch
活動設計3-視覺化程式語言網站體驗1
參考網站
(2)Blockly(Google開發)
■特色及內容
Blockly目前主要分為7個小遊戲包含飛機座位計算(Plane Seat Calculator)、迷宮(Maze)、圖形計算器(Graphing Calculator)、拼圖(Puzzle)、驗證碼(Code)、海龜圖形 (Turtle Graphics)、模塊工廠( Block Factory)。每一個遊戲又分成許多的關卡,雖著關卡越高難易度也跟著提升,遊戲還有許多國家語言可以選擇,因此,幾乎全世界的孩童都能輕鬆學習。
Blockly 含有表達各種程式設計概念的遊戲,例如最基本的Puzzle主要是介紹圖塊的拼接與設定方式,Maze則是以迷宮遊戲來表達簡單的迴圈與條件概念,Bird則是進階的條件與控制教學,Turtle為進階的迴圈概念遊戲,以Movie來介紹數學方程式,Pond則是一個可程式化鴨子的競賽遊戲,Pond JS將圖塊轉成文字介面,讓鴨子的行動更快而且能力更強。
活動設計4-視覺化程式語言網站體驗2
迷宮關卡說明
|
■教學網站
■參考網站
(2)文字型程式語言
a.程式語言擬人化
https://kheresy.wordpress.com/2014/03/21/moe-program-language-part1/
b.程式語言種類與金庸小說中的絕世武功
C 比之九陰真經,學會並掌握指標,天下無敵。
C++ 比之龍象般若功,有十三層,但修煉不易,無人超過第十層。
C# 比之彈指神通,高手運用手指的巧勁就能施展。
Java 比之獨孤九劍,敗中變化出的招式,不限平台的 JVM 。
JavaScript 比之胡家刀法,六字訣變幻莫測,瀏覽器上都能運作。
Objective-C 比之六脈神劍,獨家不傳絕技。
Perl 比之龍爪手,少林正宗武學,幾乎 Linux 高手必備。
PHP 比之黯然銷魂掌,需要深厚內力才能使出。
Python 比之降龍十八掌,簡單卻威力強大。
Ruby 比之乾坤大挪移,這要用過了才會知道。
Swift 比之一陽指,六脈神劍的精髓,本來同樣是獨家不傳絕技,不過現在 open source 了。
c.程式語言與魔戒小說中的人物
點這裡看原尺寸圖檔1666x1841
c.該選擇何種程式語言
想清楚做什麼再決定學什麼
http://blog.ntsec.edu.tw/index.php?tid=531&id=254
d.程式語言學習資源網站
活動設計5-非視覺化程式語言體驗(使用Blockly)
步驟
1.下載3個範例檔(xml)
2..解壓縮code.zip
3.開啟01_circle_area.txt.全選(編輯/全選.CTRL+A).複製(右鍵/複製.CTRL+C)
4.進入https://blockly-demo.appspot.com/static/demos/code/index.html?lang=zh-hans 介面改為正體中文.點XML語言
5.將預設內容清空-全選(CTRL+A) 刪除(DELETE) 6.將01_circle_area.txt的內容貼上
7.點積木程式及其他程式語言例如Python
8.請觀察一下.積木或程式碼.說說你覺得這個程式的目的(功能)為何?
9.點選執行看看程式結果是否與你想的一樣呢?可否將輸入訊息改為中文呢?
10.或點刪除第一題的程式碼.繼續完成02_one_two_three.txt及03_prime_number.txt的練習.說一說這兩個程式的目的為何?可否修改程式的互動介面為中文呢?
11.其他更多的練習https://sites.google.com/site/ssblockly/ren-shiblockly/code-xie-cheng-shi-jiao-xue
參考網站
https://sites.google.com/site/warkeyli/blockly
其他相關網站
http://jimmyscratchlab.blogspot.tw/p/jforthblocks.html