Inleiding tot blokken in Scratch

In het laatste deel van deze serie hebben we gekeken naar assets in Scratch-achtergronden, sprites, kostuums en audio. Nadat je wat activa hebt gemaakt, moet je ze iets laten doen, en dat is waar blokken in komen.

Blokken zijn regels of codeblokken die u naar uw project sleept om een ​​script te maken. Aan elk activum kan meer dan één script zijn gekoppeld en elk script kan zoveel blokken bevatten als u nodig hebt. 

Naarmate u meer ervaring opdoet met Scratch en begint met het bouwen van meer complexe projecten, zult u merken dat uw scripts vrij lang en complex kunnen worden, dus het is belangrijk om de meest efficiënte manier te vinden om scripts te maken en de meest efficiënte blokken mogelijk te maken. Dit is een goede vaardigheid om te leren als je Scratch als uitgangspunt gebruikt om jezelf of anderen te leren programmeren, omdat het schrijven van opgeruimde, efficiënte code belangrijk is.

Later in deze serie zal ik elke categorie van blokken gedetailleerder behandelen en hun gebruik via projecten demonstreren, maar in dit bericht geef ik je een snel overzicht van de verschillende soorten blokken en wat je ermee kunt doen.

Blokken in een kras gebruiken

Als u een blok wilt gebruiken, selecteert u eenvoudig het item waarop het betrekking heeft en sleept u het naar uw scriptvenster.

In de onderstaande schermafbeelding ziet u het project dat ik in het laatste deel heb gemaakt. Dit project heeft enkele sprites maar nog geen scripts. 

Als u een script wilt maken, klikt u op het item waarop u het wilt toepassen (de fase of een sprite) en sleept u de relevante blokken naar het scriptvenster aan de rechterkant. Als u meerdere blokken aan een script wilt toevoegen, sleept u nieuwe blokken naar de locatie in het script waar u ze wilt laten verschijnen. U kunt nieuwe blokken boven of onder bestaande blokken toevoegen.

Als u meerdere scripts wilt toevoegen, sleept u een nieuw blok naar het scriptvenster maar weg van het bestaande script (en).

Als u een blok uit een script wilt verwijderen, sleept u het naar links, weg van het scriptvenster. Merk op dat je dit alleen kunt doen voor het onderste blok in een script of een blok dat op zichzelf staat: als je een blok wegsleept van het scriptpaneel met andere blokken eronder, worden alle blokken eronder ook verwijderd . Als u dit wilt doen, selecteert u het blok direct onder het blok dat u wilt verwijderen en sleept u het weg van het script. Sleep vervolgens het blok dat u wilt verwijderen (dat wil zeggen het onderste) weg van het scriptvenster en sleep de blokken die u hebt verplaatst terug naar de plaats.

Je kunt ook blokken verwijderen met behulp van het snelmenu dat je opent door met de rechtermuisknop op een blok te klikken. Hetzelfde geldt als bij het wegslepen van blokken: als u een blok verwijdert met andere blokken eronder, worden die blokken ook verwijderd.

U kunt ook het snelmenu gebruiken om opmerkingen toe te voegen aan uw scripts, ze te dupliceren of hulp te krijgen op het blok waarop u met de rechtermuisknop hebt geklikt.

Bloktypen in Scratch

Scratch geeft je tien blokcategorieën, elk met een aantal blokken die je kunt gebruiken om vergelijkbare taken uit te voeren. Dit zijn:

  • Beweging
  • looks
  • Geluid
  • Pen
  • Gegevens
  • Evenementen
  • Controle
  • sensing
  • operator
  • Door de gebruiker gemaakte blokken (of Meer blokken)

Laten we eens kijken naar wat elk van deze categorieën omvat.

Motion Blocks

Beweging blokken zijn wat je gebruikt om je sprites op het podium te plaatsen of te verplaatsen. Ze zijn donkerblauw. Je kunt alleen bewegingsblokken gebruiken met sprites, niet met het podium.

Bewegingsblokken bevatten de volgende soorten beweging:

  • Sprites verplaatsen.
  • Sprites draaien.
  • Sprites in een bepaalde richting of op elkaar richten.
  • Sprites laten bewegen naar een bepaald punt op het toneel, naar een andere sprite of de muisaanwijzer. Deze beweging kan direct met behulp van de ga naar blokken, of geleidelijke gebruik van de glijden blok.
  • Veranderen van de x- en y-coördinaten van de sprite op het podium, hetzij door deze van zijn huidige waarde te veranderen (verander x / y door) of door het op een vast bedrag in te stellen (zet x / y op).
  • De sprite laten stuiteren als deze de rand van het podium raakt.
  • De stijl wijzigen waarmee een sprite roteert.
  • De x- of y-coördinaten van een sprite instellen of de richting waarin deze wordt weergegeven op het podium.

Deze klinken erg eenvoudig, maar ze vormen de basis voor veel games en animaties. We gebruiken bewegingsblokken in een voorbeeldproject later in deze serie.

Ziet Blokken

looks blokken zijn paars gekleurd en bepalen hoe je sprites en achtergrond er uit zien, hoe groot ze zijn en of ze voor of achter andere items worden weergegeven. Blikkenblokken bevatten ook blokken waarmee u tekst kunt weergeven.

Blikken van uiterlijk kunnen worden gebruikt met sprites en de achtergrond, hoewel er enkele zijn die alleen van toepassing zijn op sprites. De belangrijkste soorten uiterlijken zijn:

  • Blokken voor het weergeven van tekst, hetzij voor een vaste periode of voor onbepaalde tijd. De zeggen blokken zullen tekst in een tekstballon weergeven, terwijl de denken blokken zullen het in een tekstballon weergeven. U kunt dit combineren met andere blokken, zoals gegevens of detectieblokken, om de waarden weer te geven die door die blokken zijn opgeslagen in plaats van statische tekst. Je kunt deze blokken alleen met sprites gebruiken.
  • Blokken voor het weergeven of verbergen van sprites, die je niet kunt gebruiken met de stage.
  • Blokken voor het wisselen van kostuums (sprites) of achtergronden (stage). In elk geval kunt u overschakelen naar een bepaald kostuum of achtergrond, of naar het volgende kostuum of achtergrond. Dit kan worden gecombineerd met een lus wanneer u kostuums of achtergronden herhaaldelijk wilt wisselen en u kunt heel veel blokken opslaan.
  • Blokken voor het wijzigen van kleureffecten of het verwijderen ervan. U kunt de kleur met een waarde wijzigen of op een vaste waarde instellen. Gebruik deze blokken met sprites of achtergronden.
  • Blokken voor het wijzigen van de grootte van sprites, handig voor een inzoomeffect. U kunt de grootte wijzigen in een vast bedrag of een percentage. Je kunt deze blokken niet gebruiken met de fase.
  • Blokken voor het verplaatsen van sprites (niet de stage, die altijd aan de achterkant staat) naar achteren of naar voren, met behulp van lagen. Gebruik deze om een ​​effect te creëren van dingen die naar de kijker toe bewegen, misschien in combinatie met blokken van grootte.
  • Blokken voor het weergeven van het kostuumnummer, de achtergrondnaam en / of de grootte van een sprite op het podium.

De looksblokken zijn erg handig voor het maken van geanimeerde effecten en kunnen worden gebruikt om een ​​aantal krachtige effecten te creëren in combinatie met besturingselement- en evenementenblokken.

Geluidsblokken

De volgende reeks blokken is het roze Geluid blokken. Als je een groep kinderen lesgeeft om met Scratch te coderen, zul je snel merken dat deze erg populair zijn!

 De blokken vallen onder deze categorieën:

  • Blokken om geluiden af ​​te spelen of te stoppen, inclusief geluiden uit de bibliotheek en degenen die u uploadt of opneemt.
  • Blokken om drumgeluiden en noten te spelen voor een bepaald aantal beats, of om te rusten voor een aantal beats.
  • Blokken om het volume of tempo te wijzigen of in te stellen en ze op het podium weer te geven.

Het gebruik van geluidsblokken voegt een andere dimensie aan uw animaties en games toe en kan de gebruikerservaring helpen verbeteren, bijvoorbeeld als u geluidseffecten toevoegt die overeenkomen met gebeurtenissen in een game.

Pen Blocks

Je kunt de green gebruiken Pen blokken om interactieve spellen te maken waar de gebruiker op het podium kan tekenen. Combineer penblokken met gebeurtenis- en besturingsblokken om interactieve tekentoepassingen te maken, alleen of als onderdeel van een spel. U kunt sommige blokken ook op andere manieren gebruiken, bijvoorbeeld met behulp van de duidelijk blokkeren om het scherm leeg te maken wanneer u een niveau hoger gaat in een game.

Penblokken zijn onder meer:

  • Blokken voor het opruimen van het podium.
  • Blokken voor het naar beneden en naar boven verplaatsen van de pen zodat deze wel of niet op het podium wordt getekend.
  • Blokken voor het instellen en wijzigen van de penkleur, schaduw en grootte.

Je zult zien hoe je penblokken in een uitgewerkt voorbeeld later in deze serie kunt gebruiken. Merk op dat alleen de duidelijk blok kan worden gebruikt met de stage: de rest is alleen voor sprites.

Gegevensblokken

Met gegevensblokken kunt u gegevens in uw animaties en games maken en manipuleren. U kunt twee soorten gegevens maken: variabelen en lijsten. Deze kunnen worden gebruikt met sprites en met het podium.

Variabelen laat u de waarden voor een variabele definiëren en deze vervolgens gebruiken in uw project. Ze zijn geweldig voor timingspellen of om score bij te houden, of om te definiëren hoe vaak een lus moet worden uitgevoerd. Gegevensblokken zijn oranje voor variabelen en oranje voor lijsten. 

Nadat u een variabele hebt gemaakt, ziet u een aantal blokken met variabelen:

  • Blokken voor het instellen van de waarde van uw variabele en het wijzigen ervan.
  • Blokken voor het tonen en verbergen van uw variabele.

lijsten kan worden gebruikt om gegroepeerde of gerelateerde gegevens op te slaan en te manipuleren.

Nadat u een lijst hebt gemaakt, zijn een aantal blokken beschikbaar voor u:

  • Blokken om waarden in uw lijst toe te voegen, in te voegen of te verwijderen, als extra items of bestaande items te vervangen.
  • Gegevensblokken die betrekking hebben op de lengte van uw lijst of op een bepaald item erin, dat u vervolgens kunt gebruiken met andere blokken zoals operatorblokken.
  • Blokkeert om uw lijst te tonen en te verbergen.

Gegevensblokken brengen Scratch naar een meer geavanceerd niveau vergelijkbaar met veel programmeertalen en betekenen dat uw projecten op veel verschillende manieren kunnen reageren op gebeurtenissen en gebruikersinvoer. Ze kunnen worden gebruikt met sprites en het podium.

Evenementen Blokken

De bruine Evenementen blokken zijn fundamenteel voor Scratch omdat zonder hen niets zal gebeuren. Elk script krijgt een begingebeurtenis die aangeeft welk script moet worden uitgevoerd. Dit kan de groene vlag zijn waarop wordt geklikt om het project te starten, of het kan een gebeurtenis zijn die wordt geactiveerd terwijl uw project wordt uitgevoerd. Gebruik alle evenementenblokken met het podium of met je sprites: de naam van sommige blokken verandert iets, afhankelijk van waar je mee werkt.

Gebeurtenissenblokken omvatten:

  • Het allerbelangrijkste toen de groene vlag klikte blok dat alles start. U kunt dit gebruiken met meerdere scripts in uw project.
  • Blokken voor andere gebruikersinteracties, zoals het indrukken van een toets of het klikken op het werkgebied of een sprite.
  • Gebeurtenissen die worden geactiveerd door de achtergrond of een kostuumwissel (die beschikbaar is, hangt af van of je script van toepassing is op het podium of een sprite). Een blok om te reageren op veranderingen in volume, beweging of timer.
  • Blokken met betrekking tot berichten: u kunt één Sprite een bericht laten uitzenden wanneer er iets mee gebeurt en vervolgens een andere Sprite op dat bericht laten reageren met een gebeurtenissenblok. Deze berichten worden niet op het scherm weergegeven: het zijn interne berichten in de code. 

Gebeurtenissen zijn handig om scripts te laten starten, zowel wanneer een project wordt gestart als terwijl het wordt uitgevoerd.

Besturingsblokken

Controle Met blokken kunt u de blokken binnen uw scripts beheren, voorwaardelijke instructies, lussen, herhalingen en pauzes invoegen. Ze kunnen uw code veel efficiënter maken en kunnen zeer krachtig zijn in combinatie met variabelen en / of operators.

Besturingsblokken zijn onder meer:

  • Blokken voor pauzeren: ofwel wachten op een ingestelde tijdsperiode of wachten tot iets gebeurt of de gebruiker iets doet.
  • Voorwaardelijke blokken: wikkel deze rond een reeks blokken om iets te laten gebeuren als aan een voorwaarde wordt voldaan.
  • Loops: herhaal een reeks blokken een bepaald aantal keren, voor altijd, of totdat er iets gebeurt of aan een voorwaarde is voldaan.
  • Een blok om alle lussen te stoppen.
  • Blokken voor het maken en gebruiken van klonen: hiermee kunt u een sprite dupliceren en deze herhaaldelijk gebruiken. Dit zijn de enige besturingsblokken die niet met de stage kunnen worden gebruikt.

Besturingsblokken zijn geweldig voor het toevoegen van interactiviteit aan uw project, en voor het schrijven van effectievere code, een handig iets om te leren!

Blokken detecteren

sensing blokken zijn lichtblauw gekleurd. Ze laten je identificeren wat er op een gegeven moment gebeurt en laten je sprites of achtergrond reageren.

Waarnemende blokken omvatten:

  • Blokken om te detecteren of items (inclusief spitsen en kleuren) elkaar of op een bepaalde afstand van elkaar raken. Je kunt deze alleen met sprites gebruiken, niet op het podium.
  • Blokkeert om de gebruiker een vraag te stellen - u kunt het antwoord vervolgens gebruiken in voorwaardelijke blokken, bijvoorbeeld.
  • Blokken om toetsaanslagen en muisklikken te detecteren.
  • Videoblokken voor het detecteren en opnemen van beweging of richting van sprites.
  • Blokken voor het bepalen van de looptijd van een project.

Je kunt besturingsblokken in games gebruiken om de speler te verliezen wanneer het ene object een ander raakt, of om te detecteren of een sprite snel genoeg beweegt om door een andere sprite te crashen, bijvoorbeeld.

Operator Blocks

operator Met behulp van blokken kunt u vergelijkingen maken tussen of rekenkundige functies uitvoeren op verschillende waarden en kunt u deze gebruiken in combinatie met gegevensblokken of detectieblokken.

Operators zijn onder meer:

  • Blokken voor het optellen, aftrekken, vermenigvuldigen en delen van de ene waarde door een andere. Dit kunnen gegevensblokken zijn die u hebt gedefinieerd of het antwoord op een vraag die u hebt gesteld met behulp van een detectieblok.
  • Een blok om een ​​willekeurig getal tussen twee getallen te kiezen.
  • Blokken voor het identificeren of twee waarden kleiner dan, groter dan of gelijk aan elkaar zijn.
  • Booleaanse blokken: niet, en en of. Gebruik deze om waarden in besturingsblokken als te combineren als en herhaling blokken.
  • Blokken voor het samenvoegen van andere blokken of werken met slechts een deel van de waarde van een blok (zoals de eerste letter).
  • Blokken voor afrondingswaarden en identificeren of het resultaat van een berekening een rest heeft.  

Je kunt alle operatorblokken met sprites en de stage gebruiken.

Meer blokken

Gebruik de donkerpaarse 'meer' blokken om je eigen blokken te maken. Deze zijn handig om uw code efficiënter te maken. Als u een reeks blokken hebt die u herhaaldelijk in uw project gebruikt, misschien tussen sprites of scripts voor echo sprite, kunt u een enkel blok definiëren dat die reeks blokken (of routine) bevat en dat alleen gebruiken wanneer u maar wilt de hele routine. Het lijkt een beetje op het maken van een functie of klasse in andere programmeertalen.

Hier kunt u ook uitbreidingen toevoegen, hardware koppelen zoals een picoboard of Lego WeDo om fysieke invoer toe te voegen aan uw project of besturingsrobots die u bouwt.

Samenvatting

Scratch wordt geleverd met veel blokken die u kunt gebruiken in uw projecten, die nog verder kunnen worden uitgebreid wanneer u ze combineert of zelf maakt. Met oefening en verbeeldingskracht, is er heel weinig wat je niet kunt doen met deze blokken.

Terwijl we door deze serie werken, concentreer ik me op verschillende categorieën blokken en laat ik zien hoe je ze kunt gebruiken in je projecten.