Kirjaudu

Uutiskirje

Rekisteröidy Sektoriin ja tilaa itsellesi joko aamuisin tai iltaisin ilmestyvä uutiskirje sähköpostiisi.

Keskiviikko, 7.8.2002

Kymmenen kohdan lista Java2-ohjelmointikielen vioista

Java-ohjelmoija ja monen ohjelmointikirjan kirjoittaja Elliotte Rusty Harold on julkaissut artikkelin, jossa hän listaa omasta mielestään pahimmat ongelmat Java2-ohjelmointikielessä. James Gosling aloitti Javan suunnittelun jo yli 11 vuotta sitten ja ensimmäisestä Sunin julkaisemasta Java-versiostakin on ehtinyt kulua jo seitsemän vuotta. Elliotten mukaan vuosien varrella Javaan on kertynyt mukaan paljon historiallista painolastia taaksepäin yhteensopivuuden takia ja muutamia Javan toiminnallisia osioita olisi syytä kirjoittaa kokonaan uudelleen.

Elliotten mukaan Java3-versiosta voitaisiin jättää pois kaikki vanhentuneet (deprecated) metodit ja luokat. Kaikissa luokissa ja metodeissa tulisi ottaa käyttöön sama nimeämiskäytäntö, sillä Javan nykyisessä versiossa on monia ärsyttäviä epäloogisuuksia luokkien ja metodien nimeämisen suhteen. Nimeämistä suuritöisempiä muutoksia olisivat säieluokkien ja I/O-toimintojen uudelleen kirjoittaminen, tiedostomuotojen muuntaminen XML-muotoon sekä AWT-käyttöliittymäluokista luopuminen.

Mikäli Java ei kykene mukautumaan ajan haasteisiin ja tiedossa olevia ongelmia ei korjata ajoissa, joku muu ohjelmointikieli saattaa ottaa Javan aseman markkinoilla. Elliotte uskoo, että nyt on aika luopua taaksepäin yhteensopivuudesta ja keskittyä tulevaisuuteen.

Lue juttu oma, 7.8.2002 08:41. Lähde: OnJava.com

Kommentoi juttua



Aihe

Esikatsele kommentti
Kommentit ( 0 uutta / 19 )
pistettä.
Näytä vain kommentit joilla on vähintään
lokori onpa taas äijjö
lokori, 7.8.2002 09:28:23
Pisteet: +1
Vastaa
En ole vielä kohdannut ohjelmointikieltä jossa ei olisi vikoja tai puutteita.

Javan kohdalla viat ja väärät tavat tehdä asioita on kuitenkin dokumentoitu poiketen joistakin muista ja henkilö joka vaivautuu ottamaan asioista selvää pystyy välttämään ongelmat helposti. Kaikki tuon kaverin mainitsemat ongelmat ovat olleet tiedossa jo kauan, mutta on aika yksisilmäistä ehdottaa ratkaisuksi JDK:n ja koko ohjelmointikielen radikaalia muuttamista. Sällin muutoksethan rikkoisivat vaatimattomasti kaikki olemassaolevat java-ohjelmat :)

Ongelman ydin on se, että jos joku ominaisuus on käytettävissä, joku sitä myös käyttää. Noiden ominaisuuksien korjaaminen siis rikkoisi javan alaspäinyhteensopivuuden. Ja olemassa olevia softia edelleen kehitettäessä ei takuulla kirjoiteta isoa softaa uusiksi sen takia että joku keksi kirjoittaa JDK:n uusiksi -> pitäydytään vanhassa JDK:ssa -> Sun joutuu ylläpitämään ja tukemaan useampia versioita javasta.

"Mikäli Java ei kykene mukautumaan ajan haasteisiin ja tiedossa olevia ongelmia ei korjata ajoissa, joku muu ohjelmointikieli saattaa ottaa Javan aseman markkinoilla"

No jaa, enpä oikein usko tähän. C++ sisältää mielestäni enemmän ongelmakohtia eikä senkään asemaa ole toistaiseksi juuri horjunut.

Toi kaveri elää utopiassa ja on pudonnut kelkasta (tai ei ole kaikkien väittämiensä osalta tosissaan).
heko Re: onpa taas äijjö
heko, 7.8.2002 11:35:51
Pisteet: +1
Vastaa
Javan kohdalla viat ja väärät tavat tehdä asioita on kuitenkin dokumentoitu poiketen joistakin muista ja henkilö joka vaivautuu ottamaan asioista selvää pystyy välttämään ongelmat helposti.
Ei nyt ehkä aivan näinkään. Pitää muistaa, että Java voi tarkoittaa sekä ohjelmointikieltä, kokoelmaa kirjastoja, tai virtuaalikone/kehityspakettitoteutusta. Erityisesti tuossa viimeisimmässä _on_ ongelmia, jotka ovat alustariippuvaisia ja jotka tulevat usein yllätyksenä, ja joita ei ole dokumentoitu eikä ole mielekästä odottaakaan dokumentoiduksi samassa paketissa kielen syntaksin ja standardirajapintojen kanssa.

Kaikki tuon kaverin mainitsemat ongelmat ovat olleet tiedossa jo kauan, mutta on aika yksisilmäistä ehdottaa ratkaisuksi JDK:n ja koko ohjelmointikielen radikaalia muuttamista. Sällin muutoksethan rikkoisivat vaatimattomasti kaikki olemassaolevat java-ohjelmat :)
Joskus täytyy tehdä tällaisia valintoja ja yksinkertaisesti pakottaa ihmisiä siirtymään pikkuhiljaa pois vanhoista standardeista niin, että uudemmat versiot eivät enää tue kaikkia vanhempien ominaisuuksia. Kerralla ei kannata vain minusta tehdä kauhean montaa tällaista muutosta, koska muuten käyttäjät pitävät uuden version ominaisuuksia pienempänä hyötynä kuin sitä vaivaa, joka softan päivittämisestä seuraa.

Mikäänhän ei tietenkään estä pitämästä kahta JDK:ta koneella...

No jaa, enpä oikein usko tähän. C++ sisältää mielestäni enemmän ongelmakohtia eikä senkään asemaa ole toistaiseksi juuri horjunut.
Onhan Java nimenomaan syönyt C++:n asemaa.
--
Heikki http://www.heikkikorpela.fi heikki@heikkikorpela.fi
Re: onpa taas äijjö
mxmattil, 7.8.2002 13:11:30
Pisteet: 0
Vastaa
Erityisesti tuossa viimeisimmässä _on_ ongelmia, jotka ovat alustariippuvaisia ja jotka tulevat usein yllätyksenä, ja joita ei ole dokumentoitu eikä ole mielekästä odottaakaan dokumentoiduksi samassa paketissa kielen syntaksin ja standardirajapintojen kanssa.
Ihan mielenkiinnosta, mitä alustariippuvaisia ongelmakohtia uusimmassa versiossa on?
http://www.dvd.to - DVD hakukone
Re: onpa taas äijjö
Anonyymi kommentoija, 8.8.2002 09:10:57
Pisteet: +1
Vastaa
Ihan mielenkiinnosta, mitä alustariippuvaisia ongelmakohtia uusimmassa versiossa on?
Esim javan nio (non-blocking io) toimii Java 1.4.0 versiossa hieman eri tavoilla riippuen platformista. Tämä ei ole uutta, ongelma on esiintynyt myös kaikissa aiemmissa Javan versioissa (esim socketin sulkeutuminen on aiheuttanut joko ioexpectionin, EOF palauttamisen tai bufferin flushaamisen riippuen platformista). 1.4.1 pitäisi korjata tämä. Jos kiinnostaa, kannattaa mennä java.sun.comiin ja lukea 1.4.1 changes dokkaria.
janilxx AWT/Swing vs Eclipse
janilxx, 8.8.2002 08:40:28
Pisteet: 0
Vastaa
Tuli tuosta AWT:stä mieleeni, että ei se AWT:n poistaminen välttämättä mitään auttaisi.

Swingille voi hyvinkin olla tulossa uusi kilpailija Eclipsestä. Lue esim http://www.javaworld.com/javaworld/jw-07-2002/jw-0...
heko Javan epäkohtia jwz:lta.
heko, 7.8.2002 11:40:37
Pisteet: +1
Vastaa
Tästä on jo ainakin jokunen vuosi aikaa.

http://www.jwz.org/doc/java.html>

En ole kaikista asioista ihan yhtä mieltä (varsinkaan loppukaneetista), mutta hyviä pointteja tuossa on.
--
Heikki http://www.heikkikorpela.fi heikki@heikkikorpela.fi
Mielipiteitä eroteltuna kohdittain
mxmattil, 7.8.2002 13:36:01
Pisteet: +1
Vastaa
10. Delete all deprecated methods, fields, classes, and interfaces.
Ideana hyvä mutta deprekoitujen metodien poistaminen kokonaan aiheuttaisi valtavia kustannuksia aina kun siirrytään seuraavaan java-versioon. Uskon että tällöin yritykset pysyisivät vanhoissa versioissa koska päätös parin sadan tuhannen markan hassaamisessa uuteen javaversioon ei ole mielekäs. Olen itse sunin linjoilla tässä kohdassa.

9. Fix incorrect naming conventions.
Vanhat konventiot jotka on korvattu tulisi deprekoida kuten on käsittääkseni tehtykin. Olen taas sunin linjoilla kulujen takia.

8. Eliminate primitive data types.
Olen sitä mieltä että nopeuden takia primitiivit ovat hyvä asia. Olen myös täysin sillä kannalla että jos nopeuden kannalta optimaalinen tulos saataisiin ilman primitiivejä, ne pitäisi eliminoida välittömästi. Ei siten kuten artikkelissa ehdotetaan vaan yksinkertaisesti poistamalla primitiivit.
Samassa yhteydessä tulisi kieleen lisätä operaattoreiden kuormitus koska muuten koodin kirjoittaminen tulisi äärettömän vaikeaksi.

7. Extend chars to four bytes.
Tähän en osaa kommentoida. Tilan takia char-kokoista mittayksikköä tarvitaan ja sen nimeäminen joksikin muuksi kuin char-nimiseksi historaiallisista syistä olisi päätä sekoittavaa.

6. Fix threads.
Ei kommentteja

5. Convert file formats to XML.
Konfiguraatiotiedostojen osalta olen samaa mieltä, binääriolioiden tallentaminen XML-formaatissa taas kuulostaa turhalta työltä.

4. Ditch the AWT.
Samaa mieltä ja tähän sun on kai Swingillä pyrkinytkin. Ongelma on vain vanhat selaimet jotka eivät pyöritä uutta versiota javasta (microsoft-versiot) ja joille on pakko käyttää awt:tä. Jos tähän saataisiin kunnon ratkaisu, en vastustaisi ollenkaan.

3. Rationalize the collections.
Olen samaa mieltä.

2. Redesign I/O.
Olen kohtuullisen paljon samaa mieltä

1. Redesign class loading from scratch, this time with human interface factors in mind.
Tätä kohtaa ei ole kommentoitu sen ihmeemmin joten en osaa itsekään ottaa kantaa. Instanceof - virhe kuulostaa bugilta ja tulisi korjata.

Siinä jotain kommentteja :-P

Oma lisäykseni olisi

11. Kielen tulisi tukea ekplisiittistä destroy-metodia ilman että garbagecollectoria pitäisi kutsua erikseen.
http://www.dvd.to - DVD hakukone
Re: Mielipiteitä eroteltuna kohdittain
Anonyymi kommentoija, 7.8.2002 16:54:56
Pisteet: +1
Vastaa
Samassa yhteydessä tulisi kieleen lisätä operaattoreiden kuormitus koska muuten koodin kirjoittaminen tulisi äärettömän vaikeaksi.
Ei mikään huono idea. BigIntegereiden, Vectoreiden ja Matrixien käsittely helpottuisi huomattavasti. Sallitaanhan perus-javassa Stringillekkin + operaattori. Javalle on olemassa preprocessoreita, jotka tekevät tämän operation overloadinging.

7. Extend chars to four bytes. Tähän en osaa kommentoida. Tilan takia char-kokoista mittayksikköä tarvitaan ja sen nimeäminen joksikin muuksi kuin char-nimiseksi historaiallisista syistä olisi päätä sekoittavaa.
Tolkienin haltiakieli ja nuotit eivät liene riittävän painavia syitä sallia tekstin kuluttaa 2x enemmän muistia.

5. Convert file formats to XML. Konfiguraatiotiedostojen osalta olen samaa mieltä, binääriolioiden tallentaminen XML-formaatissa taas kuulostaa turhalta työltä.
Kaveri mainitsi, että tekstipohjainen serialisointi olisi nopeampaa ja pienempää kuin binaarivastaava. Haluasin tietää, miten tällainen onnistuu, jos esimerkiksi int a = 2000000 vie neljän tavun sijasta 8 * sizeof(char) eli 16.

4. Ditch the AWT. Samaa mieltä ja tähän sun on kai Swingillä pyrkinytkin. Ongelma on vain vanhat selaimet jotka eivät pyöritä uutta versiota javasta (microsoft-versiot) ja joille on pakko käyttää awt:tä. Jos tähän saataisiin kunnon ratkaisu, en vastustaisi ollenkaan.
Kuoleekohan selainpohjainen Java nyt kun Microsoft tappoi tuen sille tulevissa versiossa? Jos appletteja käytetään efekti-kikkailuun Flash nousee paremmaksi vaihtoehdoksi huomattavasti pienemmän runtimensa puolesta. Toisaalta, jos tehdään asiakas-serveri sovelluksia, puhdas HTTP ja servletit riittävät useasti.
Pineapple Re: Mielipiteitä eroteltuna kohdittain
Pineapple, 8.8.2002 23:05:05
Pisteet: 0
Vastaa
7. Extend chars to four bytes. Tähän en osaa kommentoida. Tilan takia char-kokoista mittayksikköä tarvitaan ja sen nimeäminen joksikin muuksi kuin char-nimiseksi historaiallisista syistä olisi päätä sekoittavaa.
Tolkienin haltiakieli ja nuotit eivät liene riittävän painavia syitä sallia tekstin kuluttaa 2x enemmän muistia.
Olisiko taustalla se että tuo char pystyisi sisältämään unicode-merkin ?
Pineapple
lussmu Re: Mielipiteitä eroteltuna kohdittain
lussmu, 10.8.2002 23:44:06
Pisteet: 0
Vastaa
Kuoleekohan selainpohjainen Java nyt kun Microsoft tappoi tuen sille tulevissa versiossa?
Tappoi vai? Eikös se jättänyt Java-tulkin XP:stä pois, minkä jälkeen Sun haastoi MS:n oikeuteen ja pian tulkki löytyikin päivityksenä windowsupdate.comista?
Re: Mielipiteitä eroteltuna kohdittain
samleh, 7.8.2002 15:47:36
Pisteet: 0
Vastaa
Mahdollisuus kontrolloida koska piirretään, eikä, että piirretään kun ehditään, jos ehditään.
--
just joo.
lokori Re: Mielipiteitä eroteltuna kohdittain
lokori, 8.8.2002 09:14:55
Pisteet: +1
Vastaa
10. Delete all deprecated methods, fields, classes, and interfaces. Ideana hyvä mutta deprekoitujen metodien poistaminen kokonaan aiheuttaisi valtavia kustannuksia aina kun siirrytään seuraavaan java-versioon. Uskon että tällöin yritykset pysyisivät vanhoissa versioissa koska päätös parin sadan tuhannen markan hassaamisessa uuteen javaversioon ei ole mielekäs. Olen itse sunin linjoilla tässä kohdassa.
Samoin. Sun on myös dokumentoinut mielestäni esimerkillisesti miksi deprecated-metodeja (esim. Thread.stop()) ei tule käyttää ja mitä niiden tilalla tulee käyttää ongelmien välttämiseksi.

9. Fix incorrect naming conventions. Vanhat konventiot jotka on korvattu tulisi deprekoida kuten on käsittääkseni tehtykin. Olen taas sunin linjoilla kulujen takia.
Samoin.

8. Eliminate primitive data types. Olen sitä mieltä että nopeuden takia primitiivit ovat hyvä asia.
Ehdottomasti. Se joka väittää ettei tehokkuutta tarvitse miettiä "kun koneet on kehittyneet niin paljon" on väärässä. Myös järjestelmien koko ja käsiteltävän datan määrä kasvaa koko ajan.

Samassa yhteydessä tulisi kieleen lisätä operaattoreiden kuormitus koska muuten koodin kirjoittaminen tulisi äärettömän vaikeaksi.
Ja tämä taas tuottaa uusia ongelmia. Javastahan on jätetty ihan tarkoituksella mm. tämä c++:sta löytyvä ominaisuus pois.

Sinänsä en ihan näe miksi javasta pitäisi tehdä "puhdas oliokieli" - eihän mikään estä nytkään kirjoittamasta puhdasta olio-ohjelmaa sillä.

Sunin alkuperäinen tarkoitus kai oli että sama JDK kelpaisi kaikkiin tarkoituksiin, mutta nythän on erikseen J2EE, J2SE ja J2ME, joten ehkä ne eriytyvät myös kielen tasolla enemmän jatkossa. Saa nähdä.

5. Convert file formats to XML. Konfiguraatiotiedostojen osalta olen samaa mieltä, binääriolioiden tallentaminen XML-formaatissa taas kuulostaa turhalta työltä.
ja tehottomalta. Esim. RMI toimii siten että olioita serialisoidaan, jolloin siirrettävän datan koolla on huomattava korrelaatio tehokkuuteen. XML olisi tuhlausta.

Tietysti olisi hienoa jos olioita voisi ulostaa sekä "packed binary" muodossa että XML muodossa, mutta tätä varten on jo olemassa koodia.

3. Rationalize the collections. Olen samaa mieltä.
"eliminate Vector and Hashtable completely. An ArrayList can do anything a Vector can do and a HashMap can replace a Hashtable."

Näinhän se on, mutta aika moni olemassaoleva ohjelma kuitenkin nojaa Hashtableen ja Vectoriin. Muistaakseni HashMap ei ole tarjolla ME:ssä, joten koodin portattavuuden kannalta SE-ME voi olla perusteltua säilyttää nuo vanhat.

Sinänsä olen samaa mieltä että pitäisi olla yhtenäisempi collection api.

1. Redesign class loading from scratch, this time with human interface factors in mind. Tätä kohtaa ei ole kommentoitu sen ihmeemmin joten en osaa itsekään ottaa kantaa. Instanceof - virhe kuulostaa bugilta ja tulisi korjata.
vähän heikoksi jäi tuon esityksen pohjalta se, onko kyse bugista vai ei. Yleensähän ohjelmassa käytetään yhtä classloaderia, jolloin ongelmaa ei esiinny, mutta classloader kikkailu mahdollistaa joitakin siistejä juttuja joten ei sitä noin vain kannata sorkkia :)

Oma lisäykseni olisi
11. Kielen tulisi tukea ekplisiittistä destroy-metodia ilman että garbagecollectoria pitäisi kutsua erikseen.
tämä olisi kyllä kiva monesti, mutta siitä voisi aiheutua paljon ongelmia.

mulla olisi lisäyksenä:

"type-safe enumeration pattern" on ainoa järkevä tapa tehdä luetelty tyyppi javassa, ja se toimii hienosti, mutta serialisoinnin yhteydessä joutuu tekemään ruman kikan (pitää määritellä public konstruktori, joka taas mahdollistaa koko patternin pilaamisen). Jos sen saisi jotenkin hoidettua, niin olisi kaunista.

Siitä olen varauksetta samaa mieltä kirjoittajan kanssa että long ja double -tyyppien kuuluisi ehdottomasti olla atomisia, kuten kaikki muut primitiiviset tyypit ovat. Sarjassamme yksi typerimpiä tapoja ampua itseään jalkaan multithreadaavassa softassa.

Tuon muuttaminen ei edes rikkoisi mitään olemassaolevaa.
Re: Mielipiteitä eroteltuna kohdittain
Anonyymi kommentoija, 8.8.2002 10:53:02
Pisteet: 0
Vastaa
Siitä olen varauksetta samaa mieltä kirjoittajan kanssa että long ja double -tyyppien kuuluisi ehdottomasti olla atomisia, kuten kaikki muut primitiiviset tyypit ovat. Sarjassamme yksi typerimpiä tapoja ampua itseään jalkaan multithreadaavassa softassa. Tuon muuttaminen ei edes rikkoisi mitään olemassaolevaa.
Paitsi Javan bytekoodin. Javan bytekoodissa nimittäin käsitellään erikseen eri 32-bit osia niistä registereistä joissa on long tai double.
lussmu Re: Mielipiteitä eroteltuna kohdittain
lussmu, 10.8.2002 23:41:24
Pisteet: 0
Vastaa
8. Eliminate primitive data types. Olen sitä mieltä että nopeuden takia primitiivit ovat hyvä asia. Olen myös täysin sillä kannalla että jos nopeuden kannalta optimaalinen tulos saataisiin ilman primitiivejä, ne pitäisi eliminoida välittömästi. Ei siten kuten artikkelissa ehdotetaan vaan yksinkertaisesti poistamalla primitiivit.
Kuten artikkelissa todetaan, Java on muutenkin hidasta, ja konetehon kasvaessa prosessiajasta yhä pienempi ja pienempi osa kuluu luokkiin pakattujen muuttujien käsittelyyn. Primitiivit hidastavat yhä vähemmän ja vähemmän prosentuaalisesti koneita. Itse olen samaa mieltä artikkelin kirjoittajan kanssa.

7. Extend chars to four bytes. Tähän en osaa kommentoida. Tilan takia char-kokoista mittayksikköä tarvitaan ja sen nimeäminen joksikin muuksi kuin char-nimiseksi historaiallisista syistä olisi päätä sekoittavaa.
Charhan on jo nyt UNICODEn takia 2 tavua, joten se voitaisiin myös kasvattaa nelitavuiseksi. Musiikin ja muun mölön tallettaminen stringeihin ei ehkä olisi kauhean mielenkiintoista, mutta kielet, joiden takia UNICODEEN alun perin mentiinkin (itämaiset kielet) vievät enemmän tilaa kuin sen 2 tavua. Siirrytään joko täyteen neljään tavuun tai kutistetaan se takaisin länsimaiseen yhteen tavuun.

6. Fix threads. Ei kommentteja
Niin, suurin osa kommenteista liittyi APIn putsaamiseen. Kannattaisin kaikkia ehdotettuja muutoksia.

5. Convert file formats to XML. Konfiguraatiotiedostojen osalta olen samaa mieltä, binääriolioiden tallentaminen XML-formaatissa taas kuulostaa turhalta työltä.
No XML nyt on taas niin trendikäs juttu. Sitä voidaan käyttää IPC:hen, viesteihin, tietokantoihin.. mutta miksi sitä pitäsi käyttää pickle-tyyliseen varastointiin tai konffistiedostoihin? Niitä konffiksiakaan harvemmin lukee kuin yksi ohjelma.
Re: Mielipiteitä eroteltuna kohdittain
mxmattil, 11.8.2002 11:47:50
Pisteet: 0
Vastaa
Kuten artikkelissa todetaan, Java on muutenkin hidasta, ja konetehon kasvaessa prosessiajasta yhä pienempi ja pienempi osa kuluu luokkiin pakattujen muuttujien käsittelyyn. Primitiivit hidastavat yhä vähemmän ja vähemmän prosentuaalisesti koneita. Itse olen samaa mieltä artikkelin kirjoittajan kanssa.
Java ei oikeasti ole kovin hidasta. Teimme joskus testin laskennallisista nopeuksista java versus c, valitettavasti minulla ei ole tuloksia tässä mutta loppujen lopuksi java ei ole varsinaisen koodin nopeudessa ole kovinkaan paljon c/c++:aa hitaampi. Nopeuseron harhaluulo on syntynyt suureksi osin hitaan käyttöliittymäkoodin takia.
Garbagecollector on toinen hitautta aiheuttava osa ja sen pahimmat ominaisuudet tulevat esiin juuri miljoonien olioiden kanssa. Tämän takia primitiivejä en nyt juuri lähtisi poistamaan ellei joku tosiaan pysty todistamaan minulle että nopeudenlasku ei olisi kokonaisvaikutuksiltaan merkittävä.

5. Convert file formats to XML. Konfiguraatiotiedostojen osalta olen samaa mieltä, binääriolioiden tallentaminen XML-formaatissa taas kuulostaa turhalta työltä.
No XML nyt on taas niin trendikäs juttu. Sitä voidaan käyttää IPC:hen, viesteihin, tietokantoihin.. mutta miksi sitä pitäsi käyttää pickle-tyyliseen varastointiin tai konffistiedostoihin? Niitä konffiksiakaan harvemmin lukee kuin yksi ohjelma.
Konfiguraatiotiedostot ovat usein hiearkisia puumaisia kokonaisuuksia joissa on sisäkkäistä sekä toistuvaa saman nimisen parametrin omaavaa tietoa. Tällöin puumainen tietorakenne on oikea ratkaisu, ei ainoastaan ohjelmaa vaan myös konfiguraatiotiedostojen kirjoittajaa ja lukijaa varten. XML-konfiguraatiot ovat yksinkertaisesti selkeämpiä lukea kuin esim. properties-muotoiset.
http://www.dvd.to - DVD hakukone
lussmu Re: Mielipiteitä eroteltuna kohdittain
lussmu, 12.8.2002 01:30:37
Pisteet: 0
Vastaa
XML-konfiguraatiot ovat yksinkertaisesti selkeämpiä lukea kuin esim. properties-muotoiset.
Tarkoitat varmaan koneita? Oletko ikinä konffannut Tomcatin XML-konfiguraatiota, verrattuna Apachen omaan httpd.conf-tiedostoon? :)
Re: Mielipiteitä eroteltuna kohdittain
mxmattil, 12.8.2002 10:30:35
Pisteet: 0
Vastaa
XML-konfiguraatiot ovat yksinkertaisesti selkeämpiä lukea kuin esim. properties-muotoiset.
Tarkoitat varmaan koneita? Oletko ikinä konffannut Tomcatin XML-konfiguraatiota, verrattuna Apachen omaan httpd.conf-tiedostoon? :)
Juu-u kyllä olen. Helppoa on ollut.

Toinen esimerkki, oletko konffannut log4j:n xml- sekä ascii-pohjaista versiota? Ascii häviää xml-formaatille (IMHO).
http://www.dvd.to - DVD hakukone
lussmu Re: Mielipiteitä eroteltuna kohdittain
lussmu, 15.8.2002 18:20:06
Pisteet: 0
Vastaa
Tarkoitat varmaan koneita? Oletko ikinä konffannut Tomcatin XML-konfiguraatiota, verrattuna Apachen omaan httpd.conf-tiedostoon? :)
Juu-u kyllä olen. Helppoa on ollut.
Et ole tosissaan
locke Ei se muutoksen sisältö, vaan kuka sen sanoo...
locke, 7.8.2002 10:20:17
Pisteet: +1
Vastaa
Kyllä tämä kirjoitus on varmaan kummonnut syvältä java-kehittäjien riveistä, sillä tulin muutama päivä sitten aivan sattumalta miettineeksi (okei, päiväunelmoin) saman kaltaista juttua. Tuskin kukaan olisi välittänyt (okei, joku olisi voinut sanoa hulluksi) jos minä olisin julkaissut samankaltaisen listan, mutta kun sama sisältö tulee "gurun" suusta niin monet kuuntelevat ja nyökyttelevät.

Mutta olisiko elämä yhtään sen parempaa kun ei tarvitsisi tehdä valintaa swingin ja awt:n välillä tai jos primitiivit olisivat olioita (C#:n tapaan). Niin ikävän tuntuista kuin se onkin, niin asiakkaan, tietohallinnon ja ohjelmoijan tiet vievät aina eri suuntaan. Se mistä "pieni ohjelmoija" sisälläni tykkää, ei välttämättä sovikaan enää päättäjän rooliini puhumatta asiakkaan roolista. Tietyllä tapaa on totta, että Javakin on siirrettävyydestään huolimatta kahlinnut itsensä tiiviisti menneisyyteen. Sen hyvyys tai pahuus riippuu aivan kokonaan siitä kuka hommaa katsoo.

Täydellistä ohjelmointikieltä kun ei vielä olekaan keksitty eikä varmaan tulla koskaan keksimäänkään. Sehän veisi riemun koko hommasta. Joka tapauksessa on hyvä, että joku aina väliin jaksaa provosoida porukkaa esittämällä enemmän tai vähemmän hulluja ideoita.