UML kui koodinikerdajate esperanto ??
Paabeli torni lugu
kordub ikka ja jälle erinevates valdades.
Koodinikerdamine
ongi suuremalt jaolt lingvistika ja ühise programmeerimiskeele
loomise ajalood suurelt jaolt on korranud Paabeli torni ehitamise
lugu.
Võimalik, et
programmeerimises oleme mingis mõttes sarnases faasis 19. sajandi
lõpu Euroopaga keelteoskuse mõttes.
Kes tollal tahtis olla haritud inimene, pidi kindlasti teadma ladina ja kreeka keelt. Lisandusid aga suuremad Euroopa keeled - inglise, prantsuse, saksa. Meie keeleruumis oli vaja veel ka vene keele oskust. Lihtne see ei olnud, võimatu aga ka mitte. Võimalik, et selline mitmete keelte valdamine võimaldas eelmise sajandivahetuse inimestel panna aluse 20. sajandi tehnoloogilisele revolutsioonile (koos kõige heaga ja kõige halvaga).
Tänapäeval laiutab keelte keskel häbenematult inglise keel, küsimata, kas ta ikka on piisavalt ilus või elegantne.
Igasuguse keelteküsimuse lahendab lõppukokkuvõttes hoopis keelteväline küsimus - praegu siis anglo-ameerika impeeriumi domineerimine, kunagi varem Rooma impeeriumi hiilgus.
Kes tollal tahtis olla haritud inimene, pidi kindlasti teadma ladina ja kreeka keelt. Lisandusid aga suuremad Euroopa keeled - inglise, prantsuse, saksa. Meie keeleruumis oli vaja veel ka vene keele oskust. Lihtne see ei olnud, võimatu aga ka mitte. Võimalik, et selline mitmete keelte valdamine võimaldas eelmise sajandivahetuse inimestel panna aluse 20. sajandi tehnoloogilisele revolutsioonile (koos kõige heaga ja kõige halvaga).
Tänapäeval laiutab keelte keskel häbenematult inglise keel, küsimata, kas ta ikka on piisavalt ilus või elegantne.
Igasuguse keelteküsimuse lahendab lõppukokkuvõttes hoopis keelteväline küsimus - praegu siis anglo-ameerika impeeriumi domineerimine, kunagi varem Rooma impeeriumi hiilgus.
19. sajandi keelte
Paabelis sündis aga üks ilus unistus ja puhtalt tehislik asi nimega
Esperanto - “lootev”.
Keele lõi Poola
silmaarast L.L. Zamenhof.
Erinevalt kõigist teistest keeltest ja nende grammatilistest õudustest ei ole esperantos (väidetavalt ) rohkem, kui 16 reeglit, mida peab teadma ja mitte ühtegi erandit.
Erinevalt kõigist teistest keeltest ja nende grammatilistest õudustest ei ole esperantos (väidetavalt ) rohkem, kui 16 reeglit, mida peab teadma ja mitte ühtegi erandit.
Segadusest sündinud
tarve kasvatas selle kummalise tehismoodustise oskajate arvu peaaegu
miljonini ja selle juures on see arv püsinud terve sajandi jagu.
Ei ole üldse välistatud, et 21. sajandil lõpuks saab see lootus teoks, panna terve inimkond õppima ja omavahel rääkima esperanto keeles. Ja ülejäänud Paabel jäägu fännidele! (Praegu muidugi on täpselt vastupidi)
Ei ole üldse välistatud, et 21. sajandil lõpuks saab see lootus teoks, panna terve inimkond õppima ja omavahel rääkima esperanto keeles. Ja ülejäänud Paabel jäägu fännidele! (Praegu muidugi on täpselt vastupidi)
Umbes samasugune
unistus vaevab praegu programmeerijaid ja üheks selliseks unistamise
vormiks on UML - Unified Modeling Language.
Ladina ja kreeka keele analoogideks ehk võiks meie maailmas olla bash ja C, inglise keeleks ehk Java, muud vajalikud keeled C++, C#, Objective C (romaani keelte analoogia), JavaScript, perl, python, ruby ... jpm (Scala, Eiffel, F# ...)
Praeguses vormis on
see unistus ühiskeelest juba ilmselgelt põrunud ja ka võrdluses esperantoga on UML üsna ebamäärane kogum reegleid ja kokkuleppeid.
Hoolimata sellest on vajadus mingise ühise keele järele nii terav, et UML on praegu üsna levinud kastide joonistamise dialekt. Umbes nii nagu demokraatiaga, et hetkel ei ole keegi midagi talutavamat välja mõelnud.
Hoolimata sellest on vajadus mingise ühise keele järele nii terav, et UML on praegu üsna levinud kastide joonistamise dialekt. Umbes nii nagu demokraatiaga, et hetkel ei ole keegi midagi talutavamat välja mõelnud.
Et asju lõplikult
sassi ajada, on vaja arvutit.
Et neid veel
lõplikumalt sassi ajada, on vaja UML-i.
Probleem on selles,
et ei ole mingit ühtset skeemi, on eri tüüpi skeemid ja juba nende
nimetuste hulk tõotab peavalu.
Hoolimata sellest on olemas koguni eestikeelne “UML kontsentraat”, autoriks tuntud guru Martin Fowler, tõenäoliselt parim, mis UML-st üldse saab kirjutada ja see peaks iga progeja laual/peas olema, tahab ta seda või mitte. Vähemalt objekt-orienteeritud maailmas sellest pääsu ei tundu olevat.
Hoolimata sellest on olemas koguni eestikeelne “UML kontsentraat”, autoriks tuntud guru Martin Fowler, tõenäoliselt parim, mis UML-st üldse saab kirjutada ja see peaks iga progeja laual/peas olema, tahab ta seda või mitte. Vähemalt objekt-orienteeritud maailmas sellest pääsu ei tundu olevat.
Mis kasu võiks UML
tuua?
Me räägime erinevates keeltes!
Me räägime erinevates keeltes!
oli üks natuke nukker tõdemus üle
laua minu kolleegilt A-lt.
Kui tuleb asju ajada
andmeanalüütikutega, projektijuhtidega, klientidega, peab laual
olema midagi, mille kohta on olemas võimalus, et asjaosalised
võib-olla saavad sellest midagi aru.
IMHO UML ei ole
selleks vist küll kõige paremini välja kukkunud, aga vt. ülalt
demokraatiaga võrdlust - ei ole paremat välja mõeldud. Ja ilma on
veel hullem.
Selle tõdemusega ma
praegu elan. Jõudsin järeldusele, et enne igasuguseid C#, delphi ja
Java peensusi on vaja saada selgeks üldised põhimõtted, s.h. UML
ja see, kuidas OO süsteeme kavandatakse ja siis tahvlile / paberile
joonistatakse.
"UML kontsentraat" muidugi õppimiseks ei sobi. Minule paistab praegu päris hästi sobivat selline OO disainist ja UML-st pajatav raamat -
"UML kontsentraat" muidugi õppimiseks ei sobi. Minule paistab praegu päris hästi sobivat selline OO disainist ja UML-st pajatav raamat -
Raamatuna siis:
Vaadake veel teisi
raamatuid sellelt
lingilt:
http://modeling-languages.com/list-uml-books/
http://modeling-languages.com/list-uml-books/
Nii nagu esperanto
keelega pidavat olema, võiks ehk UML oskus hiljem anda plusspunkte
mõne teise, reaalse keele õppimisel. Esperantoga on tehtud uurimus,
kus väidetakse, et 3 aastat prantsuse keelt ja 1 aasta esperantot
annab paremaid tulemusi, kui 4 aastat prantsuse keelt.
Esperanto on lihtne
ja seal ei saa teha vigu - UML ei ole (väga) lihtne, kuid seal võib
teha vigu ja neid eeldataksegi disaini algfaasis ning diagrammid
pigem peavad olema ebatäielikud, sest detailipuru pealekandmisel
kaoks UML joonestamisel ära igasugune mõte.
Koos disainimallidega (Design Patterns) peaks UML teadmine andma erinevatele progejatele mingi ühise keele lootuse. Lihtsalt sama projekti kallal töötamine seda ühist keelt ei pruugi anda - ühes projekti osises on ühed detailid, teises osas teised detailid. Nii et isegi konkreetses arendusmeeskonnas võiks skeemide joonistamine abi tuua.
....
Ühesõnaga, UML on
siis see kolmetäheline asi, millega praegu tegelen, et enda väärtust
koodinikerdajate keskel ülespoole upitada.
0 Comments:
Postita kommentaar
<< Home