Podle mě by byla příjemnější licence fajn. To, že vývoj má pod palcem Sun je asi dobře, protože kompatibilita je důležitá. (Každý může začít s vývojem nekompatibilní větve linuxového Kernelu, ale IMHO by neměl šanci na úspěch. Nicméně IBM má víc programátorů v Javě než Sun zaměstnanců, takže by si Javu forknout klidně mohli.)
Co je pro mě důležité je, že mě obtěžuje nepřítomnost Javy třeba v debianích repozitářích. Licenci, která by takovou distribuci umožnila, bych více než přivítal.
Skvely by to bylo pred deseti lety. Myslim si, ze Sun svym postojem uspesne zabranil rozsireni Javy do oblasti normalnich GUI aplikaci a ted uz to nezachrani. (Samozrejme zmenu licence vitam, ale IMHO prisla proste dost pozde.)
to je divne... zatim sem se o konkretni podobu licence javy nejak nezajimal a nevedel jsem ze neumoznuje sireni spolu s distribuci, ale Slackware je v sobe ma (to porusuje tu licenci???)
SUN by mel imho neco udelat s GUI, protoze Swing je to co vetsinu programatoru odrazuje od tvorby tlustych klientu v Jave. Jedina volba je SWT, coz zase neni optimalni vzhledem k podporovanym platformam. Jinak Java sama o sobe je rychla, ale to GUIcko :(
S tou efektivitou by na tom mel SUN opravdu zapracovat, neznam snad mene efektivni jazyk co do rychlosti vyvoje nez je Java. Java mi u mensich projektu prijde system typu kladivkem na komara.
Zejmena si myslim, ze vyvojari Javy by se mohli ucit od Pythonu. Automaticke konverze promenych, automaticka inicializace atd. Hodilo neco co by prepinalo mezi quirk a standard modem a na mensi projekty a pro vyukove ucely by se dal pouzit quirk mod :-D
Ehm, vyrobit z Javy další PHP, Python nebo VB doufám SUN naštěstí nikdy nenapadne.
Možná se budete divit, ale automatická konverze proměnných nepřijde všem lidem jako až tak úžasný nápad ;-)
Tedy srovnávat Python s PHPčkem či dokonce VB (no fuj), to mi přijde jako hodně na hlavu padlé tvrzení. Python je řekl bych víc objektový a hlavně rozhodně mnohem čistější (a přehlednější) než java
Jiste ze nenapadne. Na Jave pracuji inteligentni lide a tihle lide si uvedomuji, ze automaticka konverze (a podobne veci zname hlavne ze skriptovacich jazyku) je sice sikovna, kdyz pisu 2radkovy filtr nebo kalkulacku, ale soucasne taky vedi, ze tyto "projekty" nejsou zrovna typicke v oblasti pouziti Javy (a ze se za ne programator zrovna dobre nenaji).
Pokud nekdo ultimatne prohlasuje, ze Python je objektovejsi a cistejsi nez Java, musi predlozit dukazy, protoze jinak jen placa prazdna slova.
Dle svych zkusenosti s vyvojem slozitejsich Webu v PHP vs. Jave: zlata Java!!! Sice clovek musi mit aplikacni server, ale nedokazu si predstavit, jak by PHPckem nahradil siroke vlastnosti Javy - napr. Container-Managed Persistence pri akcich narocnejsich na databazi. Nemluve o "maintainability" kodu - nevim proc, ale kod v PHP mi pripada straslive neprehledny
Jo na začátku tohoto thredu jo, ale vy nereagujete na začátek threadu, ale na objektovost Pythonu versus javy. Jestli nejste schopen kliknout na správné Odpovědět, tak si to párkrát nacvičte nanečisto.
V jave neni trida objekt, v pythonu ano, proto je objektovejsi, ma podporu objektu na vyssi urovni. Neni to ciste objektovy jazyk, protoze podporuje i neobjektove konstrukce. Diky tomu je flexibilnejsi. Staci?
diky, to jsem chtel slyset, python neni objektovy jazyk (:
Přání otcem myšlenky. Slyšet jsi to určitě chtěl, ale nic takového jsem neřekl. :-)
Python je objektvý jazyk, ale ne čistě objektový. To samé se týká Javy. Čistě
objektových jazyků je málo a moc se neprosadily. A v míře a hloubce objektů do
jazyka je Python dál než Java a proto se o něm dá říct, že je objektovější.
objektovejsi mozna ano, ale ne objektovy (: porad nevim, proc jsou v nem naprosto neobjektove konstrukce jako funkce, ktere objektovy jazyk vubec nepotrebuje
tak ja mi tedy visvetlite tohle... jinak neivim jak by mohla fungovat v jave reflexe, kdyby kazdou tridu nereprezentoval objekt
http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Class.html
(dobrny vytah...)
Instances of the class Class represent classes and interfaces in a running Java application. An enum is a kind of class and an annotation is a kind of interface. Every array also belongs to a class that is reflected as a Class object that is shared by all arrays with the same element type and number of dimensions. The primitive Java types (boolean, byte, char, short, int, long, float, and double), and the keyword void are also represented as Class objects.
Zkus se zamyslet nad tímhle. V javě je objekt instance třídy, kde třída představuje komplexní datový typ. V javě datový typ není objekt, není instancí žádné třídy, tedy jiného datového typu. V Pythonu ale ano.
Aha, takze Integer.class neni instance tridy class, a proto na ni nejdou volat metody typu isAssignableFrom, getClassloader, getDeclaringClass a jiny uzitecny metody. To jsem nevedel a hodne mych programu tedy funguje uplne spatne. Muze mi nekdo vysvetlit jak je mozny, ze muzu pracovat s instancema objektu class, ackoli v Jave neni?
Je to tak, ze par metod na Integer ... a jinejch tridach je statickej. viz staticka metoda v dokumentaci javy.
Lidi, prosimvas, kam tahle diskuse speje???
Co je to za blbost ze v Jave neni objekt trida. A co asi tak dela metoda getClass() a celej Class objekt - ze by to ve vasi implementaci (tzn. mozku) chybelo?
Doporučuji ti vzít si učebnici javy pro začátečníky a nastudovat si co je v javě objekt a jakou funkci má třída a proč tedy třída není v javě objekt. Bude-li příště tvůj dotaz slušněji formulován, rád ti odpovím sám.
Jsem netusil ze muj dotaz byl neslusne formulovan. Takze sorry a ponizene prosim velky guru, muzete mi vysvetlit proc v Jave instance tridy Class nejsou objekty nebo jak to teda je. Podle vas napriklad na zaklade instance tridy class vytvorit konkretni instanci objektu jenz je definovany tou tridou? Pripade co teda v Jave konkretne chybi? Jeste jednou ponizene prosim, aby mi velky guru laskave odpovedel.
Python je OK a implicitní konverzi proměnnych neprovádí. Na malé věci, na které se nehodí Java je to to nejlepší, co může být. Já ho mám rád, dělá se v něm snadno a především rychle, takže to mé zákazníky moc nestojí. No ale je každého věc co používá, kdo chce používat horší prostředky, jeho věc, aspo%n mám slabší konkurenci :-).
Ja trebas mam rad oba - python hlavne doma na svy maly projektiky, v praci hlavne java, pokud nedelam nejaky maintenance veci, ale vetsi apikace pro klienta :-) Oba projekty maj svy pro a proti. Tak proc se hadat, co je lepsi a radsi nezapremyslet, co pouzit k cemu? ;-)
A co blackdown Java? Ja mam na Gentoo prave to, kvuli tomu, ze Sunovska se musi pri emerge stahnout napred rucne a nejak jsem nemohl najit ten spravny download. Chodi mi v tom zatim vsechno, akorat v nekterych formularich zobrazuje texty trochu posunute (tusim nahoru), coz nekdy pristrihne pismenka. Nevidel jsem ale zadne benchmarky a tak, takze nevim, zac stoji ve srovnani se Sunem. Ale treba kdyz jsem testoval AntsP2P, vyzralo to 512 MB pameti tak, ze to jeste upchalo swap. Muze za to Blackdown nebo AntsP2P?
Nevite nekdo o nejakem porovnani (eventuelne szirave kritice) ruznych Jav (IBM, Sun, Blackdown...) na Linuxu?
JA mam pouze empiricky porovnani, coz vam asi nepomuze. Z my zkusenosti je blackdovn ci IBM java podstatne vykonnejsi, nez java od Sunu. Ma nekdo jiny nazor?
Je téměř jedno jestli použáte Javu nebo Python. Podstatné je, jestli umíte opravdu využít OO vlastností tohoto jazyka. Pravdou je, že Python je díky syntaxi efektivnějším nástrojem.
Není to jedno, ty jazyky jsou odlišné a každý se hodí na něco jiného. Existuje tedy oblast úloh, kde se dají použít oba a tam pak je to skutčně jedno a záleží na osobní preferenci programátora, ale nelze to paušalizovat. Já dávám přednost Pythonu pro jeho snadnost použití, flexibilitu a mimořádnou rychlost vývoje, dále i kvůli menším systémovým nárokům na paměť, rychlost startu pythoní aplikace a rychlosti gui pythoních aplikací (oproti javě). Nejvíc rozhoduje ta rychlost vývoje aplikace, protože každý úkol by měl být splněn nejlépe už včera a když to můžu mít v Pythonu za týden, tak proč se s tím patlat měsíc v Javě.
Jistěže je každý jazyk vhodný na něco jiného, proto jich existuje tolik. Jen jsem chtěl poukázat na formu výuky, ktrá je mnohdy chybná a přitom zásadné ovlivňuje kvalitu kódu vzhledem k vlastnostem jazyka.
a uz jste slyseli o .net?
myslim, ze za par let bude java minulosti, ostatne podivne mimosoudni vyrovnani mezi firmou ms a firmou sun, jehoz soucasti byla platba 2mld $ sunu, je taky docela zajimave, ne? jako javista bych radsi ani nechtel znat podrobny obsah toho dokumentu :-)
Samozrejme o free softu atd. (ty vase flamy) se nechci bavit, jen vam doporucuji podivat se na neco o .netu, trebas na nejaka videa ze silicon hillu (cvut)...
rekl bych ze .net je klasicka odpoved microsoftu. proc asi microsoft prestal dodavat spolu s windows i javu?? aby ji BFUcka nemeli. co sem videl aplikace napsane pod .net tak hruza hrouzouci. snazi se to uzivatele presvedcit, ze ackoli se pohybuje na internetu, tak vlastne pracuje s aplikaci ktera bezi na desktopu. kazdicke kliknuti kamkoli je okamzite poslano na server a to mi prijde znacne neefektivni (podobne je na tom momentalni implementace JSF od sunu - tam zase zapomely co je to odkaz...)
protoze m$ si javu "lehce upravil" tak, jako si upravuje snad vsechny standardy, ke kterym se priblizi a nasledne prohral soudni spor se sunem, ktery se tykal toho, ze m$ java nebyla java (= nebyla 100% kompatibilni se sun javou - sun umoznuje oznacovat slovem java jen to, co je se sun javou 100% kompat. - viz. logo 100% pure java, jestli se to jeste pouziva :) )
Procpak chce Sun nahle Java Runtime ci SDK na kazde CD? Pac mu zacina funet za krk C# a mono. V soucasne dobe jsem si opet nainstaloval mono a od verze 0.30 je to bombovy skok. Uz jsem si zprovoznil par aplikaci, vyzkousel ASPX stranky, webove sluzby. Vse male, jednoduche a rychle. Jakmile si kazda distribuce hezky do zakladu prida nejakou novejsi stable verzi mona, tak pak to bude fujavec. :) Zadna prasiva licence, zadny nepovedeny GUI typu AWT ci Swing. Ano, jeste to potrva. Dokumentace zatim nic moc, monodevelop je oproti luxusnim IDEckum pro javu (jako NetBeans 4.1 nebo Eclipse 3) primitivni jako pumpa na mocuvku.
Ale David byl taky prcek a jak dopadl Golias, to vime vsichni. :)
PS.: K tomu flejmu kolem javy a pythonu a objektovosti pythonu, properties objektu byly nalepeny do pythonu az od verze 2.2, to ani nemluvim o tom ze private fields tam nejsou v podstate doposud, dve podtrzitka pred nazvem, to mi neprijde jako dostatecna implementace. A takove static metody tridy pomoci classmethod(), to je taky ehm. Python mam moc rad, ale srovnavat ho co se objektoveho programovani tyce s javou je trosku mimo misu. :)
No, s Monem bych byl taky opatrný, viz. např. zde. Ona jedna věc je standardizace jazyka, druhá věc jsou knihovny z Frameworku.
Navíc mám i nějaké ty zkušenosti z provozu Mona na WWW serveru a žádná slast to - vykonově ani co se údržby týče - není, zlatý Tomcat...