Java les 3 2020

1 / 28
volgende
Slide 1: Tekstslide
InformaticaMiddelbare schoolhavo, vwoLeerjaar 4

In deze les zitten 28 slides, met tekstslides.

time-iconLesduur is: 70 min

Onderdelen in deze les

Slide 1 - Tekstslide

Vandaag
  • Talen
  • Syntax

Slide 2 - Tekstslide

Talen
  • NATUURLIJKE talen
  • KUNSTMATIGE talen
  • FORMELE talen

Slide 3 - Tekstslide

Natuurlijke taal
Mensen spreken een natuurlijke taal

Slide 4 - Tekstslide

Kunstmatige taal
  • Esperanto (wordt echt gesproken)
  • Dothraki (Game of Thrones)
  • Klingon

Slide 5 - Tekstslide

Menselijke talen zijn dubbelzinnig



Wat betekent “Het jongetje zag een man op zijn telefoon staan.” ?

Slide 6 - Tekstslide

Er zijn wel vier betekenissen:
Het jongetje zag de afbeelding van een man op het scherm van zijn telefoon.
Het jongetje zag de afbeelding van een staande man op het scherm van zijn telefoon.
Het jongetje zag een man met zijn voeten bovenop zijn telefoon (die van het jongetje) staan.
Het jongetje zag een man met zijn voeten bovenop zijn telefoon (die van de man) staan.

Slide 7 - Tekstslide

Computerinstructies mogen nooit dubbelzinnig zijn
  • Het moet precies zijn
  • Het moet duidelijk zijn
Formele talen voor computers heten computertalen

Wiskunde is ook een formele taal:

Slide 8 - Tekstslide

Computertalen
Twee soorten:

  • Imperatieve talen
  • Declaratieve talen

Slide 9 - Tekstslide

Imperatieve talen
Bestaat uit een reeks instructies voor de computer
Die instructies heten statements
De volgorde is belangrijk

Slide 10 - Tekstslide

Objectgeoriënteerde talen
De meeste imperatieve talen zijn objectgeoriënteerd
Ze werken met objecten
Dat zijn de bouwstenen van een applicatie
Een object bestaat uit:
Eigenschappen of attributen: data die is opgeslagen in het object
Methoden: acties die een object kan uitvoeren

Slide 11 - Tekstslide

Voorbeeld van het object ‘lesgroep’

Slide 12 - Tekstslide

Zuiver imperatieve taal
  • Sommige talen zijn zuiver imperatief
  • Ze zijn niet objectgeoriënteerd
  • Ze hebben een beperkt aantal statements
  • Bijvoorbeeld de taal C
  • Geschikt voor embedded systems en voor bijv. Arduino (variant van C)
  • Het is lastig om in C te programmeren

Slide 13 - Tekstslide

Declaratieve talen
  • Het zijn beschrijvende talen
  • Bestaan dus niet uit een verzameling instructies
  • De volgorde is minder belangrijk
Voorbeelden van declaratieve talen:
  • HTML
  • SQL
  • XML

Slide 14 - Tekstslide

HTML
  • Beschrijft hoe informatie moet worden weergegeven op een webpagina
  • Het is geen reeks instructies, maar een beschrijving
  • Bijvoorbeeld hoe een hoofdstuk- titel moet worden getoond

Slide 15 - Tekstslide

SQL
  • Beschrijft welke informatie moet worden opgehaald uit een database
  • Bijvoorbeeld alle namen en adressen van klanten uit Enschede
  • Het resultaat is een tabel met deze gegevens

Slide 16 - Tekstslide

XML
Een taal om data op een gestructureerde manier:
  • op te slaan
  • te verzenden (via internet)
  • weer te geven
Bijvoorbeeld over boeken

Slide 17 - Tekstslide

Declaratieve programmeertalen
Er zijn verschillende soorten declaratieve programmeertalen
De bekendste soort: functionele programmeertalen
Bijvoorbeeld de talen:
  • Lisp
  • Haskell
  • Elm
Je kunt er kort en efficiënt in programmeren
Het is lastiger om te leren

Slide 18 - Tekstslide

Grammatica’s
De taalregels van een programmeertaal heet de syntaxis
Engels: syntax
Elke taal heeft zijn eigen syntaxis
Deze taalregels zijn heel strikt
Een haakje vergeten heeft grote gevolgen

Syntaxisverschillen – dezelfde code in vier talen

Slide 19 - Tekstslide

Javascript
C#

Slide 20 - Tekstslide

PHP
PYTHON

Slide 21 - Tekstslide

Syntaxis op drie niveau’s
De syntaxis van een taal kun je bekijken op drie niveau’s
Woordniveau
  • de spelling
Zinsniveau
  • de grammatica
Contextniveau
  • de geldigheid van variabelen, objecten en typen.

Slide 22 - Tekstslide

Woordniveau
De syntaxis voor woorden hangt af van het type woord
Voor elk type zijn spellingsregels

Slide 23 - Tekstslide

Woordsoorten
  • Waarde (literal)
  • Operator (operator)
  • Scheidingsteken (delimiter)
  • Variabelenaam (variable identifier)
  • Functienaam (function identifier)
  • Gereserveerd woord (keyword / reserved word)

Slide 24 - Tekstslide

Spaties worden niet apart benoemd
Meerdere nieuwe regels beschouwen als één

Slide 25 - Tekstslide

Zinsniveau
De grammatica
Juiste volgorde van variabelen, operatoren en andere tekens
Woorden worden gescheiden door:
  • Spatie, tab, nieuwe regel
  • Operator (+, -, etc.)
  • Scheidingstekens (zoals komma en punt)

Slide 26 - Tekstslide

Contextniveau
  • Regels voor welk type een variabele heeft
  • Regels voor waar een variabele geldig is
Voorbeeld: de variabelen getal en kwadraat alleen geldig in regel 2 en 3. In regel 6 mag ‘kwadraat’ dus niet gebruikt worden

Slide 27 - Tekstslide

Volgende keer
Verder met
fouten en grammatica

Slide 28 - Tekstslide