來寫程式囉:創造群組並在群組中傳遞訊息(圖:microbit.nominetresearch.uk)
譯者: 江宗諭
在上一篇文章中,讀者們實驗了廣播,也就是傳送訊息給每一個人。而在這篇文章裡,讀者只會將訊息傳遞給較小群體的人。這個活動最好在一大群朋友或同學中進行,就能體驗不同的群體及群體大小。
團體傳播(也被稱作「多播」)是一項有趣的概念,可促成好幾個項使用網路科技。例如,團體傳播促成透過網際網路,盡可能快速地傳送影片。所以,在本篇文章中,讀者將學習到:
- 團體傳播的概念,以及團體或多播位址。
- 何時團體傳播有用,又何時沒有。
為了進行本篇文章中的活動,讀者們會需要:
- 2 個 micro:bit
- 1 個白板
- 白板筆及便利貼
- 1 位隊友
活動背景
在前一篇文章中,所有的 micro:bit 會從所有其它的 micro:bit 接收到訊息。這可以有點令人感到困惑(也許感覺有趣!)現在,讓我們來限制您可以向誰傳送訊息,以及誰可以接收到您的訊息,這便成為「團體傳播」。團體傳播被運用於網際網路中,以同時傳送給許多人,例如,網路電話和視訊會議皆使用到「團體傳播」的技術。
小知識:傳播媒介
在團體傳播或多播中,1 則訊息只被傳送至團體中的電腦。
為了這個緣故,團體傳播中的訊息需要被標示團體或多播的位址。
小知識:團體位址
一項團體或多播位址是一項特殊的位址,讓團體中的所有裝置應能接收到訊息。
為了設定團體位址(或團體 ID),您將再一次使用在「廣播選單」下的「設定廣播群組」的程式積木。而這篇文章的主要挑戰是為了傳播而創造群組。電腦如何學習並加入這些群組?當電腦離開一個群組會發生什麼事?在這篇文章中,當讀者實驗創造群組時,將有機會思考這些問題。
本篇文章中,讀者需要兩人一組,或形成一個小組,當中至少要有 2 個 micro:bit。讀者將會完成 2 個任務,以替您的 micro:bit 撰寫程式,好在您的群組中傳遞並接收訊息。
任務一:創造群組
描述:在這項任務中,讀者將會為您的群組選擇一個獨特的群組 ID,並且運用群組 ID 來廣播。讀者將在 JavaScript 程式積木編輯器中,運用「廣播」程式選單下的「設定廣播群組」積木於您的程式。當選擇群組 ID 時,您必須思考最好選擇數字的方式。
小提示:如果兩個群組選擇同樣的數字,會發生甚麼事?而您如何確保這樣的事不發生?
說明:運用白板及便利貼選擇一個群組ID,並確保您的群組 ID 與其它組別不一樣。
任務二:傳送並接收訊息
描述:讀者將運用前一篇文章的程式,以傳送並接收訊息至您的群組。您將改寫這些程式,以計算您所收到訊息的數字。讀者將測試,是否來自您的群組發出的訊息。
說明:請撰寫一個傳送訊息的程式,當讀者按下按鈕 A 時,這個程式將隨機傳送數字 0 至 9 的任意一個數字。請撰寫一個接收訊息的程式,當這個程式每接受一個數字時,計數器皆會增加。當您在運用接收訊息的程式時,按下按鈕 A,接收訊息的程式會顯示出計數器的數值。與您的群組一起,測試看看您是否收到正確的數字。並且與其他群組一起測試,看看您是否能收到它們的訊息。
(特別感謝作者 Cigdem Sengul 與 Anthony Kirby,以開放授權方式讓我們翻譯,特此致謝。本文僅為針對重點摘譯,若想進一步閱讀原文,請見此。)