Wat is semantisch in ontwerp?


Beste antwoord

Goede vraag!

Semantiek in taal verwijst naar hoe de betekenis verandert als de structuur verandert; in het ontwerp hangt de semantiek niet af van de volgorde (zoals in geschreven of gesproken taal), maar van de elementen en hoe deze op elkaar inwerken: materiaal, grootte, vorm, textuur, kleur; deze bieden allemaal semiotische aanwijzingen die u in staat stellen te begrijpen hoe u met een bepaald ontwerp moet omgaan.

Het gebruik van een bepaald materiaal kan u bijvoorbeeld doen denken dat een object duur of goedkoop is; het formulier (bijvoorbeeld grootte) kan een hint geven of het bedoeld is voor jongere of oudere mensen (denk bijvoorbeeld aan plastic bouwstenen, zoals lego). De positie van een stoel kan communiceren dat het bedoeld is voor de belangrijkste persoon in de reünie, enzovoort.

Ontwerpers moeten rekening houden met al deze subtiele (en niet zo subtiele) stukjes informatie om objecten maken waarmee mensen kunnen communiceren, zonder handleidingen of zonder beschaamdheid omdat ze niet weten wat ze moeten doen.

Ik zou aanraden om de theorie van de materiële cultuur te onderzoeken.

Antwoord

Syntaxis en semantiek zijn beide onderdelen van communicatie met elkaar en met andere entiteiten, zoals computers.

Syntaxis verwijst naar de grammaticale indeling van woorden en leestekens in zinnen.

Semantiek verwijst naar de betekenis van woorden en leestekens die op een syntactisch aanvaardbare manier zijn gerangschikt.

Laten we eens kijken naar een syntactisch correcte ect voorbeeld dat in eerste instantie niet semantisch kan worden begrepen door onze gewone Engelse compiler, die een zin als semantisch begrijpt wanneer deze kan worden teruggebracht tot een vorm die een Intel x86-computerprocessor kan uitvoeren.

De gemarkeerde zin in dit programma …

… heeft duidelijk werk nodig.

Het probleem is dat de compiler niet weet wat een” spaarvarken “is. Nu weten we dat een spaarvarken veel kenmerken heeft (grootte, vorm, kleur, enz.) …

… maar het enige dat het programma moet weten over een spaarvarken is dat het geld in verschillende bedragen kan bevatten. Dus voegen we een eenvoudige definitie toe langs die lijnen (rode pijl), en proberen ons programma opnieuw te compileren:

Rats! Communiceert nog steeds niet. Misschien moeten we luider praten !!! Maar nee, gewoon Engels is niet hoofdlettergevoelig. En wacht … de fout is veranderd. Deze keer denk ik dat het het woord dollar is dat de computer niet begrijpt. Dus we leggen “dollar” uit zoals hieronder getoond en proberen opnieuw te compileren:

Rats opnieuw! Laten we eens kijken of we dat kunnen oplossen door een zin toe te voegen die de compiler vertelt hoe hij over centen moet denken:

Et voila ! Deze keer wanneer we compileren, zijn we semantisch begrepen, en wanneer we het programma uitvoeren, werkt het (console-uitvoer hieronder weergegeven):

Ondertussen, van binnen …

Dit is hoe semantisch begrip van die zin werd bereikt in het brein van de compiler.

• “10 dollar” werd herkend als een numerieke letterlijke waarde, gevolgd door een maateenheid, en werd omgezet in een numerieke variabele met een waarde van 1000 (10 dollar maal 100 pence per dollar).

• “Een spaarvarken” werd opgevat als een verzoek om een ​​nieuwe lokale variabele van het type “spaarvarken” – die reduceert tot het basistype “nummer” – en ruimte voor deze variabele, geïnitialiseerd op nul, werd toegewezen op de stapel.

• De zin Voeg 10 dollar toe aan een spaarvarken is intern teruggebracht tot alleen de slordige essentiële zaken – Voeg [dollars] toe aan / aan / aan [spaarvarken] – waarbij de woorden in vierkante haken zijn typenamen.

• Een dergelijke routine werd in geen van beide programmas aangetroffen code of in de “Noodle” – de gewone Engelse bibliotheek met handige dandy-typen, variabelen en routines – dus werden de variabelen teruggebracht tot hun basistypen, een voor een, waarbij elke combinatie werd gecontroleerd op een overeenkomende routine op de weg naar beneden.

• Op het onderste niveau – “Voeg [nummer] toe aan / in / aan [nummer]” – werd een corresponderende routinekop gevonden in de Noodle. Eureka! In het bijzonder de tweede koptekst van deze routine …

… waarvan de tekst is geschreven, zoals u kunt zien, in een taal die Intel x86-hersenen kunnen het begrijpen (de assembler-taalinstructies in het blauw zijn commentaren).

• Dus de compiler genereerde de vereiste Intel x86-statements om (a) de adressen van de twee variabelen op de stapel te pushen, en om (b) noem de bovenstaande routine.

En dat is het zowat voor die zin. De rest van het programma is op dezelfde manier samengesteld.

Semantisch begrip.Een ontmoeting tussen de geesten.

Et voila!

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *