Du må være registrert og logget inn for å kunne legge ut innlegg på freak.no
X
LOGG INN
... eller du kan registrere deg nå
Dette nettstedet er avhengig av annonseinntekter for å holde driften og videre utvikling igang. Vi liker ikke reklame heller, men alternativene er ikke mange. Vær snill å vurder å slå av annonseblokkering, eller å abonnere på en reklamefri utgave av nettstedet.
  9 993
Trigonoceps occipita
vidarlo's Avatar
Donor
Eg har tatt til å lære meg java no, som del av studium.

Eg har skrive litt C++, så kan det på simpelt nivå, samt at eg kan en del PHP, SQL, shell og awk.

Java, til forskjell fra C++, PHP osb., tvinger en jo til å skrive objektorientert. Det må eg innrømme er litt nytt for meg, da eg ikkje er vandt til å skrive objektorientert enda.

Det læreboka legg opp til er følgande struktur på ting:

Kode

public class HelloWorld {
  HelloWorld() {
System.out.println("Hello, World!");
  } 
  public static void main (String [] args) {
    new HelloWorld ();
  }
som jo fungerer heilt utmerka. Eg er imidlertid lat, og uvant med OOP. Eg skriv stortsett typen

Kode

public class HelloWorld {
	public static void main(String[] args) {
        System.out.println("Hello, World!");
	}
}
Eg foretrekker den siste typen fordi den er raskere, og IMHO meir oversiktleg.

Vel, poenget er: kva blir brukt IRL når det gjeld java? Eg ser heilt klart fordelane med å håndtere det som objekt heile vegen, sidan det gjer det enkelt å utvide programmet etter behov, evt endre oppførsel ved start ved å endre ei linje? Er det nokon bakdelar med å bruke denne metoden? Er det store bakdelar utover det eg har nevnt ved å drite i at java er OOP for enkel kode? Er det fordeler med det?
Sist endret av vidarlo; 24. januar 2007 kl. 21:09.
du KAN forsåvidt drite i OO i java også dersom du absolutt vil men satan i japan så rotete det blir....

Nå syns jeg kanskje eksemplet ditt er litt dårlig siden det virker som verdens mest tungvinte måte å skrive Hello World på og jeg hadde nok i det tilfellet der valgt å gjøre det på din måte.

Heldigvis er virkelighetens problemer langt mer komplekse enn som så og jeg må innrømme at jeg er ganske glad i MVC-tankegangen og liker objektene mine..

Men um altså...denne posten endte igrunn bare opp i piss men konklusjonen min skulle bli noe sånt som at det spørs litt på hva du skal lage. skal du bare outpute litt tekst ser jeg ikke noen grunn til å lage objekter og drit av det.
Det koster ekstra kjøretid å instansiere og initialisere nye objekter, da det er mye rart som skal gjøres i minnet bak kulissene. Jeg vil fraråde å lage objekter av alt mulig. OO-fanatikerne overdriver imo konseptet med objektorientering. De skal jo lage datastrukturene sine alt for abstrakte med subklasser og arv og jeg vet ikke hva. Keep It Simple, Stupid.

--Zorro (som er mer glad i C)
Trigonoceps occipita
vidarlo's Avatar
Trådstarter Donor
Sitat av moridin
Men um altså...denne posten endte igrunn bare opp i piss men konklusjonen min skulle bli noe sånt som at det spørs litt på hva du skal lage. skal du bare outpute litt tekst ser jeg ikke noen grunn til å lage objekter og drit av det.
Vis hele sitatet...
Det var vel sånn ca. det eg tenkte meg sjølv. Eg ser jo heilt klart fordelane med OO i større prosjekt, der det virkelig er behov for det...
med fruktkjøtt.
Tias's Avatar
Crew
Når du beynner å få store programmer så er det helt klart en fordel med objektorientert programmering. Se for deg massevis av klasser, med en egen main klasse som bare har "public static void main (String [] args) {" og alle objektene som skal startes. Klassen du bruker for Hello World er kanskje oversiktlig nå, men når du plutselig har hundrevis av metoder å holde orden på så finner du nok OOP både raskere (å skrive) og enklere å holde orden på.

Imo skal det ikke mye kode til før det er verdt det.
Sist endret av Tias; 25. januar 2007 kl. 11:08.
nso
popålol
nso's Avatar
Administrator
I tillegg skriver vidarlo at det er et ledd i utdanning, og hvis man skal kunne bruke det i kommersiell virksomhet etter endt utdanning så kommer det nok til å forventes at du er flytende i OOP.
Kan love deg etter egen erfaring at under utdanningen får man ikke veldig mange gode eksempler på hvorfor man bør bruke OOP, jeg har bare rett og slett finni meg i det og orker ikke tenke no mer over det, har bare blitt en liten vane tilslutt at man bruker egne klasser.
Edit: glemte å legge meg at Java er et drittspråk etter min mening, c++ og c# er MYE bedre.. Sikkert noen javadiggere som er uenig med meg her.
Sist endret av RayMonk; 25. januar 2007 kl. 16:05.
Kjøp noen bøker om OO Design Patterns så skjønner du uhyre fort fordelene med OOP og lærer deg å bruke det.

"Design Patterns av Erich Gamma, Richard Helm, Ralph Johnson og John Vissides er en av de beste, skrevet av de fire fremste innen OOP.
Java er perfekt i teori, men fra mitt ståsted ser det ut til at Python har blitt det alle forventet av java; nemlig et universalt portabelt kompilerbart scriptspråk.
Sist endret av fxxked; 25. januar 2007 kl. 18:01.
Trigonoceps occipita
vidarlo's Avatar
Trådstarter Donor
Takk for inputen. Det nso sa, var eg vel forsåvidt relativt klar over fra før, men TipeX og en del andre kom med innspel som var nyttige Har tenkt å få tak i ei bok om OOP, lurer litt på ei O'Reilly bok. Har du noko å anbefale der, TipeX?