作者簡介
才望子(Cybozu)股份有限公司
提供雲端運算的群組軟體和企業流程再造服務的科技公司。本書內容主要由公司成員西尾泰和、川合秀實共同撰寫。
西尾泰和
任職於才望子科技公司,並擔任社團法人「未踏」(Mitou)理事。2006年,24歲時取得理學博士學位。2007年起於才望子科技公司從事「促進團隊合作和提高知識生產力」的軟件開發工作。因特別關注程式語言的多樣性及其發展,曾出版探究「為何會有程式語言及程式語言的發展」的著作《代碼之髓:程式設計語言核心概念》,並以PM身分參與社團法人「未踏」針對17歲以下學生而設計的「未踏Junior」計劃。
川合秀實
任職於才望子科技公司,並擔任社團法人「未踏」(Mitou)理事、Security Camp講師、SecHack365指導老師,對於年輕人的程式設計教育非常有熱忱。1975年生,小學4年級時獲得一台8-bit電腦,但因為沒買軟體,就自己寫程式來玩。自此以後,幾乎沒有受過程式設計的專業教育。雖然一般程式設計師會的他不會,但普通程式設計師不會的他卻都懂,可以說是一位相當特別的程式設計師。著作有《30天打造OS!作業系統自作入門》。
編者簡介
《理解新聞月刊》編輯部
1990年創刊於每日新聞社的月刊。從政治、國際、科學等廣泛領域中,擷取一些對中小學生在學習上有助益又有趣的新聞。月刊內容及本書編輯為小平百惠、橫田香奈。
網址:mainichi.jp/wakaru/
譯者簡介
Syuan Chang
日文系畢業。在科技公司當一個小小小助理兼翻譯,栽進未知的領域在水深火熱中邊磨練著專業。曾在日本打工度假一年。不論是吵雜的東京、靜謐的富士山,我愛各種不同面貌的日本。
【前言】
【登場角色】
第1章 什麼是程式?
播放手機裡的影片時,程式是怎麼運作的?
比「運動會流程表」的功能更強大的「程式」
適合家長看的延伸知識【「小幫手」就是核心(core)的擬人化用法】
程式跟「食譜」其實很像?
程式有自己專用的語言!
適合家長看的延伸知識【程式設計語言誕生的歷史】
程式設計小教室【播放影片的APP】
適合家長看的延伸知識【這章提到的程式】
第2章 電鍋裡也有程式在運作?
程式就藏在電鍋的「微電腦」裡
適合家長看的延伸知識【內含「微電腦」的程式開發組件】
代替人類煮出美味米飯的微電腦
早期電鍋的自動開關原理
微電腦電鍋幫人類省下許多時間和工作量
適合家長看的延伸知識【微電腦小幫手們是怎麼用「電」溝通的?】
程式設計小教室【電鍋的程式】
第3章 商店的大功臣!收銀機裡的程式
不論輸入或計算金額,交給收銀機就對了
條碼裡的資料其實是「商品代碼」不是「價格」
讀碼機是怎麼讀取條碼的?
適合家長看的延伸知識【條碼的構造】
收銀機不會累,也不會犯錯!
收銀機幫你記得什麼時候賣了什麼商品
程式設計小教室【收銀機裡的程式】
第4章 智慧型手機中的超級小幫手
CPU—─智慧型手機的「大腦」
一起來研究手機規格表!
適合家長看的延伸知識【iPhoneX所使用的A11 Bionic】
記憶體——CPU小幫手的「工作台」
儲存空間——保管指示書和數據的「書架」
適合家長看的延伸知識【RAM和ROM】
觸控螢幕——小幫手能判斷手指觸碰的位置
螢幕——為了讓人類看見而裝上光源
適合家長看的延伸知識【「色彩三原色」和「光的三原色」】
電池——儲存小幫手「伙食」的地方
通信裝置——使用電磁波來溝通
GIGABYTE(GB)到底有多大?
適合家長看的延伸知識【kilo(K)是1000 Byte?還是1024 Byte?】
程式設計小教室【簡易繪圖APP】
第5章 能夠回心轉意的Undo功能
偉大的發明——「Undo」功能
不用再害怕犯錯
也有Undo 無法復原的東西
建立「存檔」和「備份」的觀念
備份在別的地方
自動備份的軟體和網路服務
瀏覽器的「返回」並不是Undo
版本控制系統
適合家長看的延伸知識【「版本控制系統」的功能】
程式設計小教室【繪圖APP】
第6章 把人們連結起來的網際網路
電腦的「身分證」
因為「IP 位址」不好記,於是有了「網域名稱」
適合家長看的延伸知識【IPv4 和IPv6】
「網域名稱」的組成形式
適合家長看的延伸知識【「頂級域名」與類型】
「路由器」小幫手的日常工作
「Packet」的收發和運送
世界是由「線」相連的
程式設計小教室【網際網路的路由器】
第7章 小幫手們的對話方式
用光的閃爍方式來傳遞資訊
小幫手的規則
「摩斯密碼」也是一種「規則」
適合家長看的延伸知識【關於電信系統】
「2 進位」和「16 進位」的意思
雜亂的「規則」
因應不同國家的文字而出現的「新規則」
規則也需要與時俱進
程式設計小教室【將文章的全形英數字轉換為半形】
第8章 傾聽宇宙聲音的定位小幫手
從遙遠宇宙傳來的「電磁波」
GPS 是怎麼定位的?
GPS 衛星離我們有多遠?
地球表面到衛星的實際距離
適合家長看的延伸知識【地球到GPS衛星的距離】
只負責接收電磁波的小幫手
人造衛星中的小幫手
適合家長看的延伸知識【人造衛星所使用的微電腦】
地表下收得到宇宙傳來的電磁波嗎?
程式設計小教室【顯示現在的位置】
第9章 大家一起寫的百科全書
維基百科—節省資源的網路百科全書
維基百科的「規則」
編者的全新溝通方式
彙整各種情報的地方
不集結也能協力完成工作
適合家長看的延伸知識【無法信任維基百科的資訊嗎?】
程式設計小教室【簡易版的Wiki】
第10章 小幫手的指示書和程式語言
實際程式舉例:Scratch 和C 語言
程式語言有很多種類
機器語言
組合語言
C語言
「int i」是什麼?
Forward(100)是什麼?
JavaScript
Python
Java
Processing 和Arduino
撫子語言
第11章 到底要學哪種程式語言呢?
依需求使用不同的程式語言
程式語言是諸行無常
程式語言是「工具」
一開始用什麼語言都可以
學了一種語言,就再學一種
程式語言是人類製作的
適合家長看的延伸知識【要注意那些鼓吹學特定程式語言的人】
程式設計小教室【二元搜尋】
第12章 學程式設計不要害怕失敗
程式設計是需要學的嗎?
一開始只要先嘗試一點點就好了
專家也是在失敗中不斷修正
尋找BUG 的祕訣
將BUG 的範圍縮小
適合家長看的延伸知識【原因‧ 驗證‧縮小範圍】
把大程式拆成小程式再找BUG
「一步驟執行」
區分「事實」和「解釋」
程式設計小教室【合併排序演算法(merge sort)】
適合家長看的延伸知識【幫孩子創造學習動力的方法】
【各章概要】
【後記】