I vilka sammanhang kommer Java till sin fulla rätt?
Till sin fulla rätt?
5 svar · 285 visningar · startad av Rödalacket
Definiera "sin fulla rätt".
Om man enbart tittar på exekveringstid så är det väldigt sällan som en Java-applikation slår en applkation som är kompilerad för det målsystem man använder sig av. Det finns dock undantag och de är serverapplikationer som skall ligga och snurra under långa tider. Mycket handlar här om vilken JVM man kör och som i alla andra progammeringsspråk även hur koden är skriven.
Om man går ett steg ner i näringskjedjan och tittar på driftssättning så blir det genast mer intressant. Anta att jag har en klient som skall arbeta mot en server men kundernas miljöer skiljer sig avsevärt. En kör Unix-servrar och PC. En annan M$-servrar och Linux-klienter. En tredje något helt annat (kanske till och med Mac). Då är det mycket enklare att använda Java eftersom koden blir samma på alla men man har olika JVM:er. Driftstättningen blir därför mycket enklar och den stackare som är ansvarig för att handha versioner av programmet blir mycket trevligare att ha att göra med.
Tittar man ännu ett steg längre ner i näringskjedjan, på de som kodar och designar, så är Java relativt enkelt att lära sig, det finns massor med färdiga klasser att använda sig av som oftast gör det man vill att de skall göra. Och skulle de inte göra det så är mycket open source så man kan hacka om dem om man vill.
Objektorienteringen gör också att mycket kan återvinnas. På ett stort tyskt företag som jag konsultat på har man ett väldigt fint grafiskt bibliotek med massor av olika komponenter som måste användas när man gör gui för deras kunder. Allt ser lika ut och spara en oerhörd massa tid. Ett annat exempel är att det är, enligt mig, en faktor 10 enklare att koda Corba, SOAP och XML i Java än i andra språk. Möjligtvis .NET undantaget.
Så som du ser så är det lite knepigt att svara på frågan "till sin fulla rätt" om man inte säger i vilket perspektiv man tittar på det. Hade du t.ex. sagt "databehandling" så hade jag sagt Fortran eller Cobol och inte Java. Hade du sagt "realtid" hade jag sagt C och Assembler. Hade du sagt grafik och portabilitet så blir svaret Java.
Knepig fråga det här. Vilken bil är snabbast?
Ja, det jag tänkte på var väl om det är någon större idé att skriva ett program i Java till t.ex. en pc som skall används på jobbet, nu kan man väl göra det i alla fall bara för att det är kul men rent prestandamässigt så är det förkastligt för att det finns bättre alternativ?
Och när Java är att föredra framför andra språk men det framgick nog av ditt inlägg. :)
Njea. Prestandamässigt så märker inte en användare någon skillnad på om det är skrivet i Java eller .NET.
Generellt så tycker jag att om det är ett GUI inblandat så är det enklare att göra det i Java på ett snyggt och effektivt sätt. Jag har dock inte lekt så mycket med GUI i .NET men har förstått att det skall vara ganska lika Java. Jag har, tyvärr, programmerat en jävla mass MFC och det suger.
Om du skall göra ETT program till EN pc så skulle jag definitivt använda Java. Du slipper licenskostnader, det finns massor av färdiga komponenter att använda dig av och det är ett relativt enkelt språk att använda.
Tack, jag är nog klokare........tror jag :)
Allting är relativt... ;-)