Operativsystem: .............................................................
Operativsystem: .............................................................
Operativsystem: .............................................................
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Objekt Orienteret Programmering (OOP):<br />
Struktureret Programmering og Design (SD) opstod omkring 1970. Objekt Orienteret<br />
programmering (OOP) opstod som et paradigme omkring 1990 og findes i sprog som Java,<br />
SmallTalk, C++ og Visual Basic.<br />
Struktureret programmering er en delmængde af OOP paradigmet.<br />
Et meget enkelt eksempel på OOP og erklæring af en klasse er (eksemplet bliver udbygget senere!):<br />
//fil: person.cs<br />
//primitivt eks på OOP<br />
//kompileres som DLL: csc /t:library person.cs<br />
//koden har ikke noget 'entry point' og er IKKE en 'applikation':<br />
using System;<br />
public class Person{<br />
private string fornavn, efternavn, telefon;<br />
}<br />
OOP har en række overordnede typiske træk:<br />
Indkapsling:<br />
En klasse skal fungere som en ‘black box’. Omverdenen skal kunne bruge klassens ’interface’ dvs<br />
dens metoder, men ikke kunne gribe ind i de indre mekanismer i klassen (’data hiding’, objektets<br />
interne tilstand er skjult set udefra).<br />
I eksemplet ovenfor: en persons egenskaber er interne dvs ’private’. Den omgivende verden skal<br />
ikke kunne ændre en persons egenskaber direkte. I det anførte eksempel findes (endnu) ingen<br />
metoder – så foreløbigt kan fornavn, efternavn og telefon slet ikke hentes ud af klassen! Person<br />
klassen er en black box.<br />
Klassen har 3 datamedlemmer. Et datamedlem er noget andet og mere end en variabel: Et<br />
datamedlem rummer information om klassens/objektets ’tilstand’. Et datamedlem er medlem af<br />
klassen og 2 objekter – 2 personer – har antageligt forskellige værdier i deres tilstandsvariable<br />
eller datamedlemmer!<br />
Der kan sammenlignes med at køre bil: det kræves ikke at man har nogen som helst forstand på<br />
bilens mekanik for at kunne køre bilen. Hvordan bilen egentligt fungerer er sikkert helt uvist for de<br />
fleste. Og egentligt også uvæsentligt for billisten (men ikke for automekanikeren!). Formålet med<br />
indkapsling eller ’encapsulation’ er altså også at gøre det nemmere for brugeren! Se fx dette kode<br />
eksempel:<br />
StreamReader r=File.OpenText(”abc.txt”);