<div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Myslím, že začínající programátor by se měl učit na programovacím<br>
jazyce, který přímo dělá to co potřebuje. Kde slovo X je prostě X, a<br>
není to emulation by class.</blockquote><div><br>treba tohle?<br>marekp@omicron:~$ python<br>>>> "ahoj".__class__<br><type 'str'><br><br>python jen "dela", ze string je class <br>
<br>>>> dir("")<br>['__add__', '__class__', '__contains__', '__delattr__', '__doc__', '__eq__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__getslice__', '__gt__', '__hash__', '__init__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__str__', 'capitalize', 'center', 'count', 'decode', 'encode', 'endswith', 'expandtabs', 'find', 'index', 'isalnum', 'isalpha', 'isdigit', 'islower', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill']<br>
<br>ale pritom ta implementace trochu pokulhava:<br><br> >>> class str(str):<br>... def zzzmojefce(self):<br>... return "blabla"<br>... <br>>>> str().zzzmojefce()<br>'blabla'<br>
>>> "xxx".zzzmojefce()<br>Traceback (most recent call last):<br> File "<stdin>", line 1, in <module><br>AttributeError: 'str' object has no attribute 'zzzmojefce'<br>
<br>Protoze standardni chovani by samozrejme bylo:<br><br>>>> class nakatrida():<br>... def fce1(self):<br>... return "nazdar1"<br>... <br>>>> class nakatrida(nakatrida):<br>... def fce2(self):<br>
... return "nazdar2"<br>... <br>>>> nakatrida().fce1()<br>'nazdar1'<br>>>> nakatrida().fce2()<br>'nazdar2'<br><br>Nebylo by tedy lepsi, aby vsechno byla class a programator alespon mohl predpokladat, ze se vsechno chova stejne? ;)<br>
<br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="Ih2E3d"> >Vzhledem k tomu, ze se bavime o uceni, tak souhlasim, ze Javu ne. Ale<br>
co treba Groovy, zejo? :-)<br>
<br>
</div>A proč?<br><div class="Ih2E3d"></div></blockquote><div><br>Argumenty pro Groovy (python-like jazyk v enterprise prostredi) jsem uz psal v jednom z prvnich mailu, tady jsem si jen chtel rypnout :).<br> <br></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Globální proměnné nejsou prasení v rozumném počtu. Stejně tak jako<br>
leccos dalšího.</blockquote><div><br>V tomhle si dovolim nesouhlasit. Pokud programator potrebuje pouzit globalni promennou, udelal v navrhu datovych struktur chybu.<br></div></div><br><br><br><br>Chapu vsechny Vase argumenty, jen se snazim delat opozici. Kazdopadne to zacina byt OT, takze pokud nebude nejaka podnetna myslenka, hlasuji pro ukonceni flamu o jazycich. Minimalne do te doby, nez po zkouskovem poradne nastuduju Groovy + JBoss Seam :-).<br>
<br>Marek<br>