国产日韩欧美一区二区三区综合,日本黄色免费在线,国产精品麻豆欧美日韩ww,色综合狠狠操

極客小將

您現(xiàn)在的位置是:首頁(yè) » scratch編程資訊

資訊內(nèi)容

學(xué)好Scratch必知的二三事,別樣的Scratch積木分類(lèi)(下)

極客小將2020-12-11-
利利:上一篇文章當(dāng)中,我們談到可以將Scratch當(dāng)中的積木分為兩大類(lèi),分別是“基礎(chǔ)效果類(lèi)”和“復(fù)雜功能類(lèi)”。基礎(chǔ)效果類(lèi)包含表現(xiàn)層以及交互層兩種,那么,復(fù)雜功能類(lèi)積木包含哪些內(nèi)容呢? 今天我們繼續(xù)來(lái)談Scratch當(dāng)中的積木類(lèi)別,以

利利:上一篇文章當(dāng)中,我們談到可以將Scratch當(dāng)中的積木分為兩大類(lèi),分別是“基礎(chǔ)效果類(lèi)”和“復(fù)雜功能類(lèi)”。基礎(chǔ)效果類(lèi)包含表現(xiàn)層以及交互層兩種,那么,復(fù)雜功能類(lèi)積木包含哪些內(nèi)容呢?

今天我們繼續(xù)來(lái)談Scratch當(dāng)中的積木類(lèi)別,以及這些積木的特點(diǎn)~

全文字?jǐn)?shù)3300字,推薦閱讀時(shí)長(zhǎng)12分鐘

復(fù)雜功能類(lèi)積木及特點(diǎn)

基本解析

復(fù)雜邏輯類(lèi),分為邏輯層、數(shù)據(jù)層和優(yōu)化層,邏輯層又可以細(xì)化為“基礎(chǔ)邏輯”“優(yōu)化邏輯”和“角色邏輯”。

●?基礎(chǔ)邏輯:條件語(yǔ)句(如果...那么...)、循環(huán)語(yǔ)句(重復(fù)執(zhí)行)、條件表達(dá)式(偵測(cè))

●?優(yōu)化邏輯:運(yùn)算操作,以及與條件表達(dá)式相關(guān)的所有值類(lèi)型積木(運(yùn)算、較為復(fù)雜的偵測(cè))

● 角色邏輯:背景切換、消息(廣播消息、接收消息)、克隆

復(fù)雜邏輯積木分類(lèi)

upload/article/images/2020-12-11/2cc53556df6aef15c10a8166e4453d88.jpg

邏輯層

基礎(chǔ)邏輯

基礎(chǔ)邏輯部分,包含編程的三大結(jié)構(gòu)中的“循環(huán)結(jié)構(gòu)”和“分支結(jié)構(gòu)”,以及分支結(jié)構(gòu)當(dāng)中必不可少的“條件表達(dá)式 / 偵測(cè)條件”,主要對(duì)應(yīng)于Scratch中“控制”與“偵測(cè)”兩大模塊中的大部分積木。

循環(huán)結(jié)構(gòu):重復(fù)執(zhí)行系列積木,對(duì)應(yīng)于其他語(yǔ)言當(dāng)中的while、for等語(yǔ)句

分支結(jié)構(gòu):如果...那么...系列積木,對(duì)應(yīng)于其他語(yǔ)言當(dāng)中的if else語(yǔ)句

偵測(cè)條件:菱形的偵測(cè)類(lèi)積木,對(duì)應(yīng)于其他語(yǔ)言當(dāng)中的“條件表達(dá)式”,在偵測(cè)類(lèi)模塊當(dāng)中,提供了各種各樣的偵測(cè)條件,可以檢測(cè)當(dāng)前角色是否碰到顏色、指定角色,判斷是否按下鼠標(biāo)或某個(gè)鍵盤(pán)鍵位等等,這些偵測(cè)積木很簡(jiǎn)單,但它們是組成分支結(jié)構(gòu)以及部分循環(huán)結(jié)構(gòu)的重要一環(huán)。

基礎(chǔ)邏輯積木的分類(lèi)

upload/article/images/2020-12-11/77ab9dc3c7ee6856acd34e31fcf98cf4.jpg

各個(gè)基礎(chǔ)邏輯積木,能夠互相進(jìn)行嵌套,形成更復(fù)雜的邏輯,實(shí)現(xiàn)更豐富多彩的功能。

多種多樣的嵌套關(guān)系

upload/article/images/2020-12-11/dd0c8b6fca84baa2b158e393d2b8f618.jpg

優(yōu)化邏輯

優(yōu)化邏輯,主要基于當(dāng)前已經(jīng)搭建好的邏輯功能,進(jìn)行細(xì)節(jié)優(yōu)化與修繕,或者進(jìn)行更復(fù)雜的控制(“偵測(cè)條件”更多樣而復(fù)雜),主要對(duì)應(yīng)于Scratch中的“運(yùn)算”模塊,以及各個(gè)模塊當(dāng)中的“值類(lèi)型”積木。

優(yōu)化邏輯中的各類(lèi)積木

upload/article/images/2020-12-11/62994e68172be76be5aab5d40f17b231.jpg

這些積木,對(duì)應(yīng)于其他語(yǔ)言當(dāng)中的各類(lèi)運(yùn)算(邏輯運(yùn)算、算術(shù)運(yùn)算、關(guān)系運(yùn)算、字符操作、數(shù)學(xué)函數(shù)方法等)

在案例作品當(dāng)中,優(yōu)化邏輯相關(guān)積木的加入,一方面,讓“偵測(cè)條件”變得復(fù)雜起來(lái),便于我們更好地檢測(cè)角色狀態(tài),并根據(jù)角色狀態(tài)執(zhí)行相應(yīng)功能;

另一方面,讓“基礎(chǔ)邏輯”(如果...那么...等)積木得到了優(yōu)化,降低了一個(gè)功能當(dāng)中需要的積木量與復(fù)雜度。

實(shí)現(xiàn)復(fù)雜的偵測(cè)(點(diǎn)擊圖片可放大)

upload/article/images/2020-12-11/a494267256ba102ddaf5843f587d61ab.jpg

通過(guò)與或非,優(yōu)化如果...那么...等復(fù)雜的嵌套邏輯

upload/article/images/2020-12-11/953ab73be15ecccdb399d5da6763d82b.jpgupload/article/images/2020-12-11/169a6b548501e96835485e36e3e48e9b.jpg

碩碩

什么是值類(lèi)型積木?

利利

在Scratch當(dāng)中用于存儲(chǔ)值,“橢圓”形狀的積木

upload/article/images/2020-12-11/6e8830b3ba38a0c2c484108b4ea17a57.jpgupload/article/images/2020-12-11/169a6b548501e96835485e36e3e48e9b.jpg

碩碩

還有哪些類(lèi)型的積木呢?

利利

這是對(duì)Scratch另一種維度的分類(lèi),后面有機(jī)會(huì)我們單獨(dú)開(kāi)文詳細(xì)來(lái)講吧~!

upload/article/images/2020-12-11/6e8830b3ba38a0c2c484108b4ea17a57.jpg

角色邏輯

角色邏輯,是能夠跨越角色進(jìn)行操控的相關(guān)積木,主要對(duì)應(yīng)于Scratch“事件”模塊當(dāng)中的部分積木 —— 背景的切換、消息的廣播和接收、克隆。

角色邏輯相關(guān)的積木

upload/article/images/2020-12-11/2b8402e8efd011bbbacb920dc1ca4fa3.jpg

背景的切換、消息的廣播和接收,隸屬于“事件類(lèi)模塊”,但是和其他“事件類(lèi)”積木,卻有所不同。

其他事件類(lèi)積木,均需要用戶(hù)(作品的使用者)通過(guò)外部環(huán)境觸發(fā)(按下鍵盤(pán)、鼠標(biāo)、點(diǎn)擊綠旗、發(fā)出聲響等等);

背景切換與廣播消息,由程序內(nèi)部觸發(fā),并不直接受外部控制。

這兩種事件能夠?qū)ⅰ敖巧迸c“背景”、“角色”與“角色”連接在一起,是實(shí)現(xiàn)“跨角色跨背景”控制必不可少的積木。

恰恰是這種關(guān)聯(lián),進(jìn)一步豐富了案例功能,最重要的是,讓Scratch制作的東西,從“案例”變成了“作品”!

upload/article/images/2020-12-11/169a6b548501e96835485e36e3e48e9b.jpg

碩碩

案例與作品的區(qū)別是什么?

利利

我們可以把案例理解為一個(gè)簡(jiǎn)單的demo,簡(jiǎn)單的樣例,它是一個(gè)作品的核心功能部分

upload/article/images/2020-12-11/6e8830b3ba38a0c2c484108b4ea17a57.jpgupload/article/images/2020-12-11/169a6b548501e96835485e36e3e48e9b.jpg

碩碩

為何說(shuō),背景切換和消息廣播的功能,能夠把案例變成作品?

利利

如果希望一個(gè)作品當(dāng)中包含“開(kāi)始”“結(jié)束”“幫助”“游戲核心功能”等幾個(gè)部分,必然要出現(xiàn)多個(gè)場(chǎng)景(背景),不同角色在不同場(chǎng)景當(dāng)中展示的效果也會(huì)有所不同。

upload/article/images/2020-12-11/6e8830b3ba38a0c2c484108b4ea17a57.jpg

利利

實(shí)現(xiàn)場(chǎng)景切換,并控制不同場(chǎng)景當(dāng)中不同角色的狀態(tài),建立角色與角色之間的關(guān)系,都需要使用到此類(lèi)(角色邏輯)積木。

upload/article/images/2020-12-11/6e8830b3ba38a0c2c484108b4ea17a57.jpg

克隆,隸屬于“控制類(lèi)模塊”,它能夠基于一個(gè)角色,復(fù)制多個(gè)“虛擬”的相同角色(復(fù)制的角色不會(huì)出現(xiàn)在角色面板當(dāng)中),并且能夠?yàn)檫@些“虛擬”角色設(shè)置不同的功能。

小貼士

背景切換、廣播消息事件的用法

使用背景切換、廣播消息,創(chuàng)建事件。

通過(guò)“當(dāng)背景切換為”和“當(dāng)接收到某消息”,來(lái)接收這些事件,并定義發(fā)生這些事件時(shí)要執(zhí)行的具體功能(積木組)。

事件的發(fā)生與接收

upload/article/images/2020-12-11/c858e0fd0cdafc2a3e9d9be5898b3c0d.jpg

小貼士

關(guān)于特殊的響度檢測(cè)

響度是使用相對(duì)較少的一類(lèi)積木,它隸屬于“基礎(chǔ)效果類(lèi) - 交互層”積木,用戶(hù)通過(guò)外部聲音的大小,來(lái)控制角色發(fā)生變化。

在前一篇文章當(dāng)中,并沒(méi)有太多提及,所以,就在這里做個(gè)補(bǔ)充吧~哈哈

邏輯層積木小結(jié)

基礎(chǔ)邏輯、優(yōu)化邏輯、角色邏輯在案例當(dāng)中的功能以及關(guān)系:

●?基礎(chǔ)邏輯:實(shí)現(xiàn)了對(duì)角色狀態(tài)的判斷;

●?優(yōu)化邏輯:在“基礎(chǔ)邏輯”之上,使用更少的積木,實(shí)現(xiàn)了對(duì)角色狀態(tài)“更精確更精細(xì)”的判斷;

●?角色邏輯:功能邏輯更復(fù)雜,實(shí)現(xiàn)角色與角色/背景間的邏輯與交互,多個(gè)類(lèi)似角色的功能操作。

數(shù)據(jù)層

在Scratch中,充當(dāng)數(shù)據(jù)層的積木,是變量和列表(均隸屬于變量模塊)。

在幾乎所有的編程語(yǔ)言當(dāng)中,變量能夠存儲(chǔ)數(shù)據(jù),也能夠優(yōu)化積木邏輯。

在Scratch當(dāng)中,變量更多的作用在于存儲(chǔ)數(shù)據(jù),而非優(yōu)化功能,這與Scratch本身特點(diǎn)相關(guān)。

此外,與其他語(yǔ)言相比,Scratch在數(shù)據(jù)存儲(chǔ)方面相對(duì)較為弱勢(shì),只有“變量”和“一維列表”,無(wú)法使用多維列表(其他語(yǔ)言當(dāng)中成為“多維數(shù)組”),也缺少了非常重要的“對(duì)象”。

upload/article/images/2020-12-11/1df28d8a631a2068eba0c5fb54e4db1a.jpg

路人甲

Scratch在數(shù)據(jù)層做得不好?

碩碩

數(shù)據(jù)存儲(chǔ)上的不便,的確會(huì)導(dǎo)致制作時(shí)的一些局限性,譬如在制作“需要存儲(chǔ)大量數(shù)據(jù)”或“有關(guān)聯(lián)數(shù)據(jù)”的項(xiàng)目時(shí),相對(duì)比較復(fù)雜。

upload/article/images/2020-12-11/9b176f77de0be7e5f0f59cb2e8bcb112.jpg

利利

Scratch在數(shù)據(jù)層上的這種處理方式,其實(shí)也是因Scratch軟件本身特點(diǎn)所限制的

upload/article/images/2020-12-11/6e8830b3ba38a0c2c484108b4ea17a57.jpg

碩碩

是的,既需要滿(mǎn)足“按照角色進(jìn)行積木編寫(xiě)”的功能,又需要滿(mǎn)足“漂亮的視覺(jué)呈現(xiàn)”,在數(shù)據(jù)層上自然會(huì)有根據(jù)整體軟件的定位做出一定的調(diào)整

upload/article/images/2020-12-11/9b176f77de0be7e5f0f59cb2e8bcb112.jpg

利利

其實(shí)任何一門(mén)語(yǔ)言都不是萬(wàn)能的,作為編程語(yǔ)言的使用者,要做的是了解這門(mén)語(yǔ)言,并將這門(mén)語(yǔ)言的優(yōu)勢(shì)和長(zhǎng)處發(fā)揮到極致

upload/article/images/2020-12-11/6e8830b3ba38a0c2c484108b4ea17a57.jpg

優(yōu)化層

在Scratch中,目前我們還沒(méi)有提及的,就是“自制積木”了,這個(gè)模塊屬于優(yōu)化層積木,對(duì)應(yīng)于其他語(yǔ)言當(dāng)中的函數(shù)。

自制積木的作用,在于將一個(gè)角色當(dāng)中通用功能“打包”起來(lái),之后多次使用,增強(qiáng)積木組的復(fù)用性,提升積木組的擴(kuò)展性。

優(yōu)化層 - 自制積木 - 通過(guò)參數(shù)控制具體功能

https://cdn.china-scratch.com/timg/191011/140933EG-22.jpg

需要注意的是,自制積木,只能夠應(yīng)用于當(dāng)前角色當(dāng)中,無(wú)法應(yīng)用于所有角色(無(wú)法跨角色使用)。

upload/article/images/2020-12-11/1df28d8a631a2068eba0c5fb54e4db1a.jpg

路人甲

在Scratch當(dāng)中,有沒(méi)有能夠應(yīng)用于所有角色的“自制積木”(方法 / 函數(shù))?

利利

沒(méi)有

upload/article/images/2020-12-11/6e8830b3ba38a0c2c484108b4ea17a57.jpgupload/article/images/2020-12-11/1df28d8a631a2068eba0c5fb54e4db1a.jpg

路人甲

為何自制積木只能應(yīng)用于當(dāng)前的角色呢?

利利

在上一篇文章當(dāng)中我們提及到,Scratch當(dāng)中存在對(duì)象、方法、屬性,每個(gè)角色都是一個(gè)對(duì)象,自制積木,是定義在這個(gè)角色當(dāng)中的,因此,自制積木是相應(yīng)角色的方法。

upload/article/images/2020-12-11/6e8830b3ba38a0c2c484108b4ea17a57.jpg

文章傳送門(mén):學(xué)好Scratch必知的二三事,別樣的Scratch積木分類(lèi)(上)

簡(jiǎn)言之,我們作為Scratch作品的編寫(xiě)者,無(wú)權(quán)操作底層功能函數(shù)(方法),只能夠?yàn)榻巧?/ 背景這些對(duì)象添加一些方法。

小貼士

沒(méi)有繼承功能的Scratch

在Scratch當(dāng)中,角色和角色之間并沒(méi)有“繼承”關(guān)系。

當(dāng)作品中,有多個(gè)角色存在相似功能時(shí),雖然積木類(lèi)似,但是都需要單獨(dú)編寫(xiě)。

編寫(xiě)時(shí)自然會(huì)比較“累”,好在我們還有“復(fù)制大法”……

總結(jié) ~ ~ ~!

已經(jīng)講解完Scratch所有積木的分類(lèi)了,我們一起來(lái)回顧一下!

● 基礎(chǔ)效果類(lèi)積木 —— 讓角色的屬性(樣式)能夠發(fā)生簡(jiǎn)單的變化

●?基礎(chǔ)邏輯類(lèi)積木 —— 對(duì)角色進(jìn)行狀態(tài)檢測(cè)和控制,并根據(jù)角色狀態(tài)執(zhí)行不同的功能

●?優(yōu)化邏輯類(lèi)積木 —— 使用更少的積木,對(duì)角色更精確更精細(xì)地檢測(cè)與控制

●?角色邏輯類(lèi)積木 —— 實(shí)現(xiàn)角色與角色/背景間的邏輯與交互

●?數(shù)據(jù)類(lèi)積木 —— 進(jìn)行數(shù)據(jù)記錄,增強(qiáng)作品的可玩性

●?優(yōu)化類(lèi)積木 —— 減少角色的積木量,增強(qiáng)積木擴(kuò)展性

在了解Scratch積木分類(lèi)之后,什么樣的學(xué)習(xí)順序更有利于我們又快又好的掌握Scratch呢?學(xué)習(xí)Scratch又有哪些注意事項(xiàng)呢?后面我們慢慢來(lái)談~

教育的路上,不忘初心!

聲明:本文章由網(wǎng)友投稿作為教育分享用途,如有侵權(quán)原作者可通過(guò)郵件及時(shí)和我們聯(lián)系刪除

預(yù)約試聽(tīng)課

已有385人預(yù)約都是免費(fèi)的,你也試試吧...

主站蜘蛛池模板: 伽师县| 沛县| 兴和县| 四川省| 华安县| 鹿泉市| 福建省| 贡山| 临汾市| 视频| 哈尔滨市| 双江| 南召县| 昂仁县| 师宗县| 上思县| 怀集县| 家居| 门头沟区| 开化县| 大渡口区| 松原市| 鄂伦春自治旗| 新龙县| 明溪县| 湛江市| 十堰市| 明光市| 韶山市| 疏勒县| 辽源市| 四平市| 清河县| 塔河县| 锦州市| 永兴县| 习水县| 余姚市| 锦州市| 刚察县| 桂阳县|