Avatar billede petan Nybegynder
26. juni 2006 - 19:06 Der er 5 kommentarer og
1 løsning

Kompileret kode og brugergrænseflade

Hej,

Når man har skrevet et program i Java, kan den kompilerede kode så læses af det menneskelige øje, eller er det lavet om til bits og bytes? Kan det let dekompileres af andre? Gælder det samme for Java applets?

Er Java bedst egnet hvis man vil programmere noget der egner sig lige godt til både Windows og Linux? F.eks. i forhold til C# (mono)? Er det rigtigt forstået, at Java har sin egen brugergrænseflade (hvis det er det man kalder det) som hedder noget med Swing, der fungerer både på Windows og Linux?

Hvad er de største svage og stærke sider ved Java?

På forhånd tak!
Avatar billede arne_v Ekspert
26. juni 2006 - 19:14 #1
Foobar.jaca compiles til Foobar.class - en .class fil er ikke umiddelbart
laesbar, men der finde udmaerkede decompilere som kan producere en Foobar.java
igen. Kommentarer er sporloest forsvundet og lokale variable faar tilfaeldige navne,
men ellers ligner koden den oprindelige. Man kan saa bruge en ofuscator som aendrer klasse navne og metode navne til totalt intetsigende navne. I praksis er
problemet ikke saa stort, fordi det tager lige saa lang tid at reverse engineere
paa den maade som at skrive kode fra scratch. Problemet er primaert i
forbindelse med license kode, database passwords og den slags.

Java applets er helt ligesom anden Java kode i den sammenhaeng.
Avatar billede arne_v Ekspert
26. juni 2006 - 19:17 #2
Java kan afvikles paa Windows, Linux, diverse Unix og stort set alle
andre platforme. Fuldtsaendigt uandret.

.NET programmer kan koere paa Linux/Unix med mono hvis mono understoetter
alle de framework klasser og metoder som der bruges. Og der er altsaa nogle huller.
Min personlige mening er at mono og C# er udmaerkede udviklings vaerktoer til
Linux men at man ikke skal bruge det hvis portabilitet mellem platforme
er hovedformaalet.
Avatar billede arne_v Ekspert
26. juni 2006 - 19:19 #3
Java har flere grafiske frameworks>

AWT som kom i Java 1.0

Swing som kom i Java 1.2

SWT som ikke er i selve Java men er udviklet af Eclipse teamet

AWT og Swing er per definition i enhver Java implementation (for Swing dog
kun hvis version >= 1.2)

SWT understoettes paa en stribe af de mest populaere platforme
Avatar billede arne_v Ekspert
26. juni 2006 - 19:30 #4
fordele:
  nemt at finde folk med Java know how
  utroligt mange biblioteker og frameworks som man kan bruge (de fleste er open source)
  OS uafhaengigt
  har naesten alt som man har brug for

ulemper:
  uegnet til OS specifikke ting
Avatar billede petan Nybegynder
27. juni 2006 - 12:05 #5
Tak for svaret! Læg et svar og jeg giver point.
Avatar billede arne_v Ekspert
27. juni 2006 - 13:05 #6
kommer her
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