Citaat:
merci, werk nu in Python en is echt dikke fun ^^
maar vind het nogal vervelend dat ze aan de universiteit OBERON - 2 gebruiken en het lijkt helemaal anders...
|
Oberon-2 is inderdaad wel ietsje anders dan Python; maar heeft ook heel wat gelijkenissen. Je hoeft je in Oberon ook niet zo veel van geheugenbeheer aan te trekken; en Oberon is verwant aan Modula, en Modula is een van de inspiratiebronnen geweest voor Python. Een van de grote verschillen is weliswaar dat (voor zover ik weet) Oberon ook eerder een gecompileerde taal is, terwijl Python een scripttaal blijft. Dat uit zich (over het algemeen) in betere abstract data types bij scripttalen (er is heel wat werk al voor je gedaan geweest). Maar het voordeel van gecompileerde talen is dat ze sneller zijn. Als toekomstige informaticus moet je met allebei eigenlijk kunnen werken; als hapklare instap vind ik scripttalen best handig (al kom ik zelf uit een tijdperk waar BASIC vooral populair was; BASIC is een geïnterpreteerde taal, maar nog geen scripttaal in feite: je compileert de code wel, maar eerst naar een tussenliggende vorm; ook is BASIC niet aan te raden voor goede stijl, of de uitgebreide mogelijkheden).
Je gaat dus sowieso met allebei (script (higher level) en compiled (nog steeds hogere talen, maar minder high level dan scripttalen, over het algemeen)) moeten leren werken. De reden hierachter is dat je als informaticus ook de werking van een computer moet begrijpen, dat je eigenlijk bv. zelf ook een scripttaal ineen moet kunnen boksen; en dat is vooral handig in talen die lage zijn. Om nog even daarop uit te breiden: hogere (gecompileerde) talen zoals C, zijn ook gebaseerd op assembly (zowat de laagste echte taal; daaropnder heb vooral nog 1'tjes en nulletjes, maar de mensen die vlot dergelijke opcodes kunnen lezen zijn zeer zeldzaam (lees: mensen die processoren/assemblers ontwerpen kennen ze misschien)). Waarvoor ik scripttalen dan ook vooral aanraad: om de basis op te pikken; je leert het veel makkelijker in een taal die wat hoger is. Eenmaal je de basis beethebt, kan je naar lagere talen overstappen.
Ook even voor de duidelijkheid: een lagere taal is niet inferieur aan een hogere; ze hebben elk hun voor- en nadelen. Over het algemeen zijn scripttalen ietsje hoger dan gecompileerde talen, maar dat hoeft in feite niet. De 'hoogte' van talen duidt er gewoon op in welke mate er bepaalde abstracties voorzien zijn (hogere taal = meer abstracties; dus bv. Object Oriented Programming, lists en dictionaries in Python). Lagere talen hebben dat minder of niet (soms moet je zelf maar met pointers je lijst aan elkaar hangen), of in assembler heb je zelfs niet zoiets als een for-lus (die mag je nog zelf ineen gaan knutselen, als ik me niet vergis). Dat moet je als informaticus dus bv. ook kunnen (niet dat dat moeilijk is).