Avatar billede -sofus- Nybegynder
18. maj 2003 - 18:14 Der er 11 kommentarer og
3 løsninger

objektorienteret kode

Hvad er objektorienteret kode og hvorfor er det godt ?
Avatar billede soreno Praktikant
18. maj 2003 - 18:24 #1
Et objekt kan indeholde variabler og metoder.
Et objekt er en instans af en klasse.

En klasse er en abstraktion over noget data.

F.eks. kunne man have en klasse der hed Bog.
Disse variabler kunne være i klassen Bog:
  forfatter
  isbn
  udgivelsesår
  pris


En anden klasse kunne være BogListe.
Den kunne f.eks. indeholde Bog objekter.
BogListe kunne have disse metoder:
  tilføjBog
  findBog
  sletBog
  hentAntalBøger

og denne variabel:
  tabelOverBøger

Altså, et BogListe objekt kan indeholde mange Bog objekter.
Avatar billede arne_v Ekspert
18. maj 2003 - 18:26 #2
Objekt orienteret kode er kode som bygger på et objekt orienteret
design, hvor man forsøger at modellere forskellige typer i virkeligheden
til klasser i sit programmerings-sprog. En klasse kan være en specialisering
eller en generalisering af en anden klasse. Man betragter både data og
kode logik som en del af en klasses egengskaber.

Det har vist sig at være en god måde at programmere mange slags opgaver
på.
Avatar billede arne_v Ekspert
18. maj 2003 - 18:29 #3
Det fleste opgaver som relaterer sig til business programmering
er velegnede til OOP.

Meget algoritme tung scientific programming er sommetider sværere
at lave objekt orienteret.
Avatar billede -sofus- Nybegynder
18. maj 2003 - 18:30 #4
Jeg sad lige og læste lidt på sitet, og nåede frem til at OOP er noget man bruger i JPS og ASP.net

Jeg koder selv tilhverdag i ASP.

Men dvs OOP er altså hvor man samler variabler i grupper ?

Og hvorfor er det godt at lave OOP ?
Avatar billede soreno Praktikant
18. maj 2003 - 18:34 #5
Ved at samle metoder i klasser kan man nemt se hvilke der hører logisk sammen. Brugeren af klassen (programmøreren) behøver ikke bekymre sig om der er brugt en LinkedListe eller en Vector til implementering af BogListen - han skal bare stoppe Bog objekter i den og være glad.

Hvis det viser sig at performance kan øges ved at ændre en LinkedListe til en Vector kan dette gøres nemt uden at skulle bekymre sig om at koden går i stykker andre steder i projektet (det er selvfølgelig teoretisk... :-)
Avatar billede -sofus- Nybegynder
18. maj 2003 - 18:35 #6
Der vil jeg gerne lige have lov til at stå af.

Jeg forstod ikke halvden af budskabet.

Kender intet til teorien bag programering, jeg koder bare (;
Avatar billede arne_v Ekspert
18. maj 2003 - 18:36 #7
En af forskellene på ASP og ASP.NET er at ASP.NET er mere objekt orienteret.

Men det er kun en af de mange anvendelser af OO.

C++, Java og C# er alle objekt orineterede sprog.
Avatar billede -sofus- Nybegynder
18. maj 2003 - 18:37 #8
Men det jeg fisker efter er et skole eksempel på 2-3 linier, om hvorfor du/i mener at det er godt at lave OOP
Avatar billede arne_v Ekspert
18. maj 2003 - 18:40 #9
Det er svært.

Objekt orienteret programmering er normalt kun en fordel ved
større programmer og projekter.

Der er ikke nogen fordel ved at lave "hello world" objekt orienteret.

Men hvis du skal lave 10000 eller 100000 eller 1 million linier kode,
så bliver det vigtigt med en fornuftig strukturering af koden.
Avatar billede soreno Praktikant
18. maj 2003 - 18:49 #10
Fra http://www.cyberdyne-object-sys.com/oofaq2/body/basics.htm#S0.8

# Faster development
# Increased Quality
# Easier maintenance
# Enhanced modifiability

og

# Exploit power of OOPs
# Reuse of software and designs, frameworks
# Systems more change resilient, evolvable
# Reduced development risks for complex systems, integration spread out
# Appeals to human cognition, naturalness
Avatar billede dash Nybegynder
20. maj 2003 - 01:24 #11
OO kodning er et forsøg på at abstrahere fra den mere "tekniske" sekventielle afvikling af kode. Der er derfor lettere (rent tankemæssigt) at udvikle abtrakte datastrukturer og algoritmer i et OO-univers. Desuden kan det virke mere intuitivt korrekt at modellere "virkeligheden" direkte i sin kode netop vha klasser og objekter, der oprettes ud fra disse klasser - derved skabes en klar struktur for det pågældende projekt og dermed overblik.
Avatar billede arne_v Ekspert
02. juni 2003 - 20:20 #12
sofus>

Tid at lukke spørgsmålet ?
Avatar billede arne_v Ekspert
15. juni 2003 - 18:48 #13
??
Avatar billede arne_v Ekspert
11. juli 2003 - 19:35 #14
??
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester