Re: Co jde v .NET a nejde v Jave?
No ja tedka prave jednu aplikaci pro MDA (ktere ma Windows CE pod kapotou) delam. Nemam pocit, ze bych je delal nerozumne, dokonce si myslim, ze ji delam velmi rozumne, vzhledem k tomu, ze mi jede i na moji Nokii se Simbianem :)) Podotykam, ze ted se bavime hlavne o GUI aplikacich a slozitych projektech na dlouhou dobu (tj. argument ze neco naklikam za pet minut 1. V Jave sa nedaju robit (rozumnym sposobom) aplikacie pre Windows Mobile platformu. 2. V Jave sa nedaju (jednoducho) robit niektore veci spojene s Windows OS - manipulacia s procesmi, services, tray-icon (myslim, ze toto uz ide v 1.6),
Re: Co jde v .NET a nejde v Jave?
Podotykam, ze ted se bavime hlavne o GUI aplikacich a slozitych projektech na dlouhou dobu (tj. argument ze neco naklikam za pet minut 1. V Jave sa nedaju robit (rozumnym sposobom) aplikacie pre Windows Mobile platformu. 2. V Jave sa nedaju (jednoducho) robit niektore veci spojene s Windows OS - manipulacia s procesmi, services, tray-icon (myslim, ze toto uz ide v 1.6),
Re: Co jde v .NET a nejde v Jave?
services pokud vim ano a uz nekdy od verze 1.3 nebo tak nejak. Uz jsem dlouho zadnou nedelal. Pet On Mon, 26 Feb 2007 11:56:38 +0100, Richard Malaschitz [EMAIL PROTECTED] wrote: Podotykam, ze ted se bavime hlavne o GUI aplikacich a slozitych projektech na dlouhou dobu (tj. argument ze neco naklikam za pet minut 1. V Jave sa nedaju robit (rozumnym sposobom) aplikacie pre Windows Mobile platformu. 2. V Jave sa nedaju (jednoducho) robit niektore veci spojene s Windows OS - manipulacia s procesmi, services, tray-icon (myslim, ze toto uz ide v 1.6), -- Using Opera's revolutionary e-mail client: http://www.opera.com/mail/
Re: Co jde v .NET a nejde v Jave?
SWT tray icon ma. Pokud neni rec jenom o Swing/AWT.
Re: Co jde v .NET a nejde v Jave?
Ahoj, odpovídám na zprávu ze čtvrtka, 2. listopadu 2006, kterou Rastislav Siekel napsal(a) v 9:13:03: To mi asi fakt příjde jako prasárna. Já top vždy řeším speciální třídou se statickými metodami, které takové služby řeší. Mám třídy jako StrinUtil, FileUtil, atd. Co jsem ale použil a co se mi líbí je cglib, která umí do existujících objektů něco doplnit za běhu. Používám třídu UIBeanEnhancer (lze najít na Netu), která do obyčejné POJO třídy, tedy Beanu, doplní za běhu notofikaci na změnu properties, tedy metody jako addPropertyChangeListener, removePropertyChangeListener, atd. Nemusím si tak zesložiťovat zdrojový kód a mylsím, že čitelnosti to taky nijak neublíží. --- Původní zpráva --- Odesilatel: Rastislav Siekel [EMAIL PROTECTED] Předmět: Co jde v .NET a nejde v Jave? Datum: 2. listopadu 2006, 09:13:03 (GMT +0100) Přílohy: none msgid:[EMAIL PROTECTED] R Samozrejme, že je to zlé, pretože keď sa pozriete na cudzí program, nikdy R neviete, čo za String tam je použitý. Nehľadiac na to, že definovať si R potomka String-u a doplniť mu tam tú metódu nie je problém a volanie sa R zmení na R new MyString(c:\data).getFiles() R čo mi nepríde príliš veľká obeť. R To už potom smrdí C-čkovým typedef (pri použití 2 knižníc v projekte máte R minimálne 3 názvy pre int - skúsenosť z praxe), alebo C-čkovými preťaženými R operátormi - nikdy neviete, čo vlstne to plus spraví. R Aby som nevyvolal flame - tieto možnosti sú naozaj mocné, ale ak potrebujete R urobiť rýchlo zmenu už staršieho projektu (t.j. asi v 90% času života R aplikácie) - nevyhovujú. R Rastislav Bedo Siekel -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Petr Fischer Sent: 1. novembra 2006 13:33 To: Java Subject: Re: Co jde v .NET a nejde v Jave? Petr Synek píše v St 01. 11. 2006 v 01:20 +0100: Co se tyce dokumentace, tak v .NET podle mne neni dokumentace zas o moc lepsi nez v Jave (kdyz se budeme bavit zejmena o core J2SE knihovnach). Snad jen je v MSDN o neco vic prikladu jak konkretni tridu pouzit, ale myslim ze ani Java 1.5 uz se nema za co stydet (oproti napr. 1.3. verzi). V .NETu mi ale dost chybi moznost si prohlednout zdrojaky knihoven frameworku. Takze opravdu nezbyva nic jineho nez se spolehnout pouze na dokumentaci (coz nebyva idealni) nebo na google (to ale zbytecne zdrzuje). V Jave lze primo nahlednout do zdrojaku (napr. podivat se co vlastne vraci ten zatraceny Boolean.getBoolean(...) ze? :-). Co se tyce core knihoven, tak ty mi prijdou .NET knihovny ponekud vic intuitivni. Napr. string.IsNullOrEmpty() je docela uzitecna staticka metoda tridy String. V Jave musime psat porad dokola if (s ==null || s.length() = 0) (i o dost podivnejsi ekvivalenty lze casto potkat) nebo si napsat vlastni externi utilitu (prip. stahnout neco hotoveho z Jakarta Commons). Dale napr. prace s datumem (DateTime) a casovym usekem (TimeSpan) a jakym zpusobem se tyto 2 tridy dokonale doplnuji (scitani, odcitani, staticke helper metody na vytvareni) je ukazka jak ma .NET dobre propracovane nektere knihovny. Kdyz se pak clovek podiva na java.util.Date a ty mraky deprecated constructoru a metod, tak si uvedomi, ze vlastne cely Date je uz dnes jen docela osklivy wrapper nad jednou long promennou a nic vic... Ale neni to rozhodne to co by clovek intuitivne od Date tridy cekal. Pokud chci napriklad vytisknout cas tedy v .NETu Console.WriteLine(DateTime.Now); tak v Jave (jsem pres google http://www.rgagnon.com/javadetails/java-0106.html) zjistil ze musim pouzit minimalne tridy Calendar a SimpleDateFormat a provadet s tim docela slusne harakiri. Bez googlu, je toto prace na min. 5 minut. To me pripomina jednu vec, i kdyz bych nerad mlzil. Neni v .NETu nahodou mozny rozsirovat existujici tridy o novy metody (muzete si dopsat svoji vlastni metodu do existujici String nebo Date tridy - tedy podobne jako treba ve Smalltalku)? Chapu, ze nekomu to pride jako prasarna, ale je to jen trosku jinej styl OO programovani. Muzete si pak do String tridy dopsat treba funkci getFiles() a pak staci: c:\data.getFiles() To neni zly ne? :) pf Konec původní zprávy -- - Tomáš Procházka E-mail: [EMAIL PROTECTED] WWW: http://atom.sf.cz ICQ: 87147320 -
RE: Co jde v .NET a nejde v Jave?
Já vidím propastný rozdíl v práci s odpojenými daty: V .NET máte DataSet, v němž žijí DataTables - tabulky, které se dají filtrovat, joinovat, dají se nad nimi vytvářet pohledy. Zkrátka jedna třída pro všechny operace. V Javě máte samostatný interface mj. pro každý případ užití: CachedRowSet, FilteredRowSet, JoinedRowSet, WebRowSet... Kamil
Re: Co jde v .NET a nejde v Jave?
Ahoj, odpovídám na zprávu z úterka, 31. října 2006, kterou Martin Kuba napsal(a) v 11:33:02: Javu jde zcela v pohodě rozběhnout i bez instalace, třeba s prezentačního CD. --- Původní zpráva --- Odesilatel: Martin Kuba [EMAIL PROTECTED] Předmět: Co jde v .NET a nejde v Jave? Datum: 31. října 2006, 11:33:02 (GMT +0100) Přílohy: none msgid:[EMAIL PROTECTED] M Cetl jsem nekde argument, ze .NET je vazany silne na IIS, a ten je M silne vazany na verzi Windows, takze se snadno muze stat, ze M kvuli upgradu .NET se musi upgradovat cely system. To se Jave nestava. Konec původní zprávy -- - Tomáš Procházka E-mail: [EMAIL PROTECTED] WWW: http://atom.sf.cz ICQ: 87147320 -
RE: Co jde v .NET a nejde v Jave?
Databinding v desktopových aplikacích. I když prý se v Netbeans 6.0 blýská na lepší časy ;-)) Petr -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Behalf Of Tomáš Procházka Sent: Saturday, February 24, 2007 11:47 AM To: Java Subject: Re: Co jde v .NET a nejde v Jave? Ahoj, odpovídám na zprávu z úterka, 31. října 2006, kterou Martin Kuba napsal(a) v 11:33:02: Javu jde zcela v pohodě rozběhnout i bez instalace, třeba s prezentačního CD. --- Původní zpráva --- Odesilatel: Martin Kuba [EMAIL PROTECTED] Předmět: Co jde v .NET a nejde v Jave? Datum: 31. října 2006, 11:33:02 (GMT +0100) Přílohy: none msgid:[EMAIL PROTECTED] M Cetl jsem nekde argument, ze .NET je vazany silne na IIS, a ten je M silne vazany na verzi Windows, takze se snadno muze stat, ze M kvuli upgradu .NET se musi upgradovat cely system. To se Jave nestava. Konec původní zprávy -- - Tomáš Procházka E-mail: [EMAIL PROTECTED] WWW: http://atom.sf.cz ICQ: 87147320 -
Re: Co jde v .NET a nejde v Jave?
Ahoj, no to ma tesi, podla mna ked sun nieco pridava do Jdk, je to ako torta, ked sa kraja. Osobne sa vdzy najviac tesim na zmeny v jazyku. No a k otazke, ano aj pre vlastne komponenty je to rovnako jednoduche. Funguje to tak, ze sa to vlastne specifikuje pomocou atributu [Bindable = true|false] a podla to sa viazat bud da alebo nie. priklad - viazat sa daju aj obycajne property nemusia to byt len kolekcie: [Bindable=true] public String/*to by mohol byt typ IList...*/ MenoAutora{ ... } Ono sa to lisi od klasickeho pouzitia setera len casom kedy sa to priradenie vykona - v case viazania Tomas Tomáš Procházka wrote: Ahoj, odpovídám na zprávu ze čtvrtka, 02. listopadu 2006, kterou Tomas Studva napsal(a) v 11:58:40: JDK7 bude mít Databinding v sobě, je to JSR 295. Sun si uvědomuje, že to v Javě chybí. Zde se tvoří implemenetace: https://databinding.dev.java.net/ Ale nic vám nebrání už dnes použít třeba JGoodies, kde je spojení Java Beanu a formulářového prvku otázkou jednoho příkazu. Ale asi je pravda, že .NETu to jde už dnes a velmi snado. Ale co když si třeba vytvořím vlastní komponentu? Je tohle pak taky jednoduché? -- - Tomáš Procházka E-mail: [EMAIL PROTECTED] WWW: http://atom.sf.cz ICQ: 87147320 -
Re: Co jde v .NET a nejde v Jave?
Ahoj, odpovídám na zprávu ze čtvrtka, 02. listopadu 2006, kterou Jiří Mareš napsal(a) v 9:26:13: Například: http://publicobject.com/glazedlists/ --- Původní zpráva --- Odesilatel: Jiří Mareš [EMAIL PROTECTED] Předmět: Co jde v .NET a nejde v Jave? Datum: 2. listopadu 2006, 09:26:13 (GMT +0100) Přílohy: none msgid:[EMAIL PROTECTED] J ad 1) A nebo si to na netu najit ... ja jsem si neco podobneho J udelal kdysi pred lety udelal ... , ale dneska verim to J naprogramovat nemusite, ze si to staci najit na netu. To ze to J mate v .NET primo, vcetne ADO.NET a v Jave si to musite J najit, to preci neni nic proti nicemu ... To pak muzeme rikat, ze J .NET je lepsi nez Java protoze ma ADO.NET a java nic J takoveho nema, protoze vse se dodava zvlast J ad 2) To ze to cini Seam je fajn, ale takovych projektu je vsude J fura ... podobne veci dela eclipse, sun ... Konec původní zprávy -- - Tomáš Procházka E-mail: [EMAIL PROTECTED] WWW: http://atom.sf.cz ICQ: 87147320 -
Re: Co jde v .NET a nejde v Jave?
Ahoj, odpovídám na zprávu ze čtvrtka, 02. listopadu 2006, kterou Tomas Studva napsal(a) v 11:58:40: JDK7 bude mít Databinding v sobě, je to JSR 295. Sun si uvědomuje, že to v Javě chybí. Zde se tvoří implemenetace: https://databinding.dev.java.net/ Ale nic vám nebrání už dnes použít třeba JGoodies, kde je spojení Java Beanu a formulářového prvku otázkou jednoho příkazu. Ale asi je pravda, že .NETu to jde už dnes a velmi snado. Ale co když si třeba vytvořím vlastní komponentu? Je tohle pak taky jednoduché? --- Původní zpráva --- Odesilatel: Tomas Studva [EMAIL PROTECTED] Předmět: Co jde v .NET a nejde v Jave? Datum: 2. listopadu 2006, 11:58:40 (GMT +0100) Přílohy: Zpráva.html msgid:[EMAIL PROTECTED] Zdravim, berte to trochu s rezervou, nemam s web aplikaciami privela skusenosti. S java web app vobec, ale s .NET ano. Ale inak robim v jave :). To o com sa bavime mi pride ako Data Binding v .NET. To je mozno jedna z vyhod .Net: ide o deklaraivne programovanie, kde sa deklaruje vazba gui na kolekcie(je to nejaky interface, cize kludne na hocico, co ho implementuje) z controlera.To teda nezarucuje viac vrstvovost, ale ani ju nevylucuje. Mna deklarativne programovanie zo zaciatku stvalo, lebo ked sa viazu data zlozitejsieho charakteru, je to o to zlozitejsie to napisat. Toto viazanie sa da robit aj klasicky, z kodu, a v mnohych pripadoch sa to tak aj robi. Konec původní zprávy -- - Tomáš Procházka E-mail:[EMAIL PROTECTED] WWW:http://atom.sf.cz ICQ: 87147320 -
RE: Co jde v .NET a nejde v Jave?
Samozrejme, že je to zlé, pretože keď sa pozriete na cudzí program, nikdy neviete, čo za String tam je použitý. Nehľadiac na to, že definovať si potomka String-u a doplniť mu tam tú metódu nie je problém a volanie sa zmení na new MyString(c:\data).getFiles() čo mi nepríde príliš veľká obeť. To už potom smrdí C-čkovým typedef (pri použití 2 knižníc v projekte máte minimálne 3 názvy pre int - skúsenosť z praxe), alebo C-čkovými preťaženými operátormi - nikdy neviete, čo vlstne to plus spraví. Aby som nevyvolal flame - tieto možnosti sú naozaj mocné, ale ak potrebujete urobiť rýchlo zmenu už staršieho projektu (t.j. asi v 90% času života aplikácie) - nevyhovujú. Rastislav Bedo Siekel -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Petr Fischer Sent: 1. novembra 2006 13:33 To: Java Subject: Re: Co jde v .NET a nejde v Jave? Petr Synek píše v St 01. 11. 2006 v 01:20 +0100: Co se tyce dokumentace, tak v .NET podle mne neni dokumentace zas o moc lepsi nez v Jave (kdyz se budeme bavit zejmena o core J2SE knihovnach). Snad jen je v MSDN o neco vic prikladu jak konkretni tridu pouzit, ale myslim ze ani Java 1.5 uz se nema za co stydet (oproti napr. 1.3. verzi). V .NETu mi ale dost chybi moznost si prohlednout zdrojaky knihoven frameworku. Takze opravdu nezbyva nic jineho nez se spolehnout pouze na dokumentaci (coz nebyva idealni) nebo na google (to ale zbytecne zdrzuje). V Jave lze primo nahlednout do zdrojaku (napr. podivat se co vlastne vraci ten zatraceny Boolean.getBoolean(...) ze? :-). Co se tyce core knihoven, tak ty mi prijdou .NET knihovny ponekud vic intuitivni. Napr. string.IsNullOrEmpty() je docela uzitecna staticka metoda tridy String. V Jave musime psat porad dokola if (s ==null || s.length() = 0) (i o dost podivnejsi ekvivalenty lze casto potkat) nebo si napsat vlastni externi utilitu (prip. stahnout neco hotoveho z Jakarta Commons). Dale napr. prace s datumem (DateTime) a casovym usekem (TimeSpan) a jakym zpusobem se tyto 2 tridy dokonale doplnuji (scitani, odcitani, staticke helper metody na vytvareni) je ukazka jak ma .NET dobre propracovane nektere knihovny. Kdyz se pak clovek podiva na java.util.Date a ty mraky deprecated constructoru a metod, tak si uvedomi, ze vlastne cely Date je uz dnes jen docela osklivy wrapper nad jednou long promennou a nic vic... Ale neni to rozhodne to co by clovek intuitivne od Date tridy cekal. Pokud chci napriklad vytisknout cas tedy v .NETu Console.WriteLine(DateTime.Now); tak v Jave (jsem pres google http://www.rgagnon.com/javadetails/java-0106.html) zjistil ze musim pouzit minimalne tridy Calendar a SimpleDateFormat a provadet s tim docela slusne harakiri. Bez googlu, je toto prace na min. 5 minut. To me pripomina jednu vec, i kdyz bych nerad mlzil. Neni v .NETu nahodou mozny rozsirovat existujici tridy o novy metody (muzete si dopsat svoji vlastni metodu do existujici String nebo Date tridy - tedy podobne jako treba ve Smalltalku)? Chapu, ze nekomu to pride jako prasarna, ale je to jen trosku jinej styl OO programovani. Muzete si pak do String tridy dopsat treba funkci getFiles() a pak staci: c:\data.getFiles() To neni zly ne? :) pf
Re: Co jde v .NET a nejde v Jave?
On Thursday 02 November 2006 09:21, Petr Synek wrote: bylo pekne, kdybych mohl vytvorit jen Hib. Entity a JTable nejak rict ze ma rovnou pouzivat tyto entity (a tudiz bych uz se nemusel starat o prekladku dat z Entit do TableModelu). A takhle by snad nejak mohl fungovat JBoss Seam. No to je prave trosku potiz. V pripade automatickeho update dat musite osetrit par veci, jako je napriklad kvalita dat, konzistence dat paralelne upravovanych ruznymi lidmi, pristupova prava,... Neco podobneho delaly sveho casu Delphi, ze primo zobrazovaly data z DB a umoznovaly je primo v te DB menit. Pak se ale programator musel hookovat vsude mozne, jenom aby zmeny prosly opravdu jenom tam, kde mely. Kvalitne navrzeny model neco takoveho krasne a jednoduse osetri... -- Oto 'tapik' Buchta, [EMAIL PROTECTED] http://www.buchtovi.cz __ This email has been scanned by the MessageLabs Email Security System. For more information please visit http://www.messagelabs.com/email __
RE: Co jde v .NET a nejde v Jave?
Nastesti nic takoveho v Jave ani v .NETu udelat nejde. petr __ Od: [EMAIL PROTECTED] Komu: 'Java' konference@java.cz Datum: 02.11.2006 09:13 Předmět: RE: Co jde v .NET a nejde v Jave? Samozrejme, že je to zlé, pretože keď sa pozriete na cudzí program, nikdy neviete, čo za String tam je použitý. Nehľadiac na to, že definovať si potomka String-u a doplniť mu tam tú metódu nie je problém a volanie sa zmení na new MyString(c:\data).getFiles() čo mi nepríde príliš veľká obeť. To už potom smrdí C-čkovým typedef (pri použití 2 knižníc v projekte máte minimálne 3 názvy pre int - skúsenosť z praxe), alebo C-čkovými preťaženými operátormi - nikdy neviete, čo vlstne to plus spraví. Aby som nevyvolal flame - tieto možnosti sú naozaj mocné, ale ak potrebujete urobiť rýchlo zmenu už staršieho projektu (t.j. asi v 90% času života aplikácie) - nevyhovujú. Rastislav Bedo Siekel -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Petr Fischer Sent: 1. novembra 2006 13:33 To: Java Subject: Re: Co jde v .NET a nejde v Jave? Petr Synek píše v St 01. 11. 2006 v 01:20 +0100: Co se tyce dokumentace, tak v .NET podle mne neni dokumentace zas o moc lepsi nez v Jave (kdyz se budeme bavit zejmena o core J2SE knihovnach). Snad jen je v MSDN o neco vic prikladu jak konkretni tridu pouzit, ale myslim ze ani Java 1.5 uz se nema za co stydet (oproti napr. 1.3. verzi). V .NETu mi ale dost chybi moznost si prohlednout zdrojaky knihoven frameworku. Takze opravdu nezbyva nic jineho nez se spolehnout pouze na dokumentaci (coz nebyva idealni) nebo na google (to ale zbytecne zdrzuje). V Jave lze primo nahlednout do zdrojaku (napr. podivat se co vlastne vraci ten zatraceny Boolean.getBoolean(...) ze? :-). Co se tyce core knihoven, tak ty mi prijdou .NET knihovny ponekud vic intuitivni. Napr. string.IsNullOrEmpty() je docela uzitecna staticka metoda tridy String. V Jave musime psat porad dokola if (s ==null || s.length() = 0) (i o dost podivnejsi ekvivalenty lze casto potkat) nebo si napsat vlastni externi utilitu (prip. stahnout neco hotoveho z Jakarta Commons). Dale napr. prace s datumem (DateTime) a casovym usekem (TimeSpan) a jakym zpusobem se tyto 2 tridy dokonale doplnuji (scitani, odcitani, staticke helper metody na vytvareni) je ukazka jak ma .NET dobre propracovane nektere knihovny. Kdyz se pak clovek podiva na java.util.Date a ty mraky deprecated constructoru a metod, tak si uvedomi, ze vlastne cely Date je uz dnes jen docela osklivy wrapper nad jednou long promennou a nic vic... Ale neni to rozhodne to co by clovek intuitivne od Date tridy cekal. Pokud chci napriklad vytisknout cas tedy v .NETu Console.WriteLine(DateTime.Now); tak v Jave (jsem pres google http://www.rgagnon.com/javadetails/java-0106.html) zjistil ze musim pouzit minimalne tridy Calendar a SimpleDateFormat a provadet s tim docela slusne harakiri. Bez googlu, je toto prace na min. 5 minut. To me pripomina jednu vec, i kdyz bych nerad mlzil. Neni v .NETu nahodou mozny rozsirovat existujici tridy o novy metody (muzete si dopsat svoji vlastni metodu do existujici String nebo Date tridy - tedy podobne jako treba ve Smalltalku)? Chapu, ze nekomu to pride jako prasarna, ale je to jen trosku jinej styl OO programovani. Muzete si pak do String tridy dopsat treba funkci getFiles() a pak staci: c:\data.getFiles() To neni zly ne? :) pf
Re: Co jde v .NET a nejde v Jave?
On Thursday 02 November 2006 09:13, Rastislav Siekel wrote: Samozrejme, že je to zlé, pretože keď sa pozriete na cudzí program, nikdy neviete, čo za String tam je použitý. Nehľadiac na to, že definovať si potomka String-u a doplniť mu tam tú metódu nie je problém a volanie sa zmení na No to prave ze problem je, kdyz String je final class ;-) Samozrejme ze udelat si fasadu nad Stringem neni problem, ale zase z toho neni String. Proste za runtime rozsirit final tridu je jedinym resenim. Ale priznam se, ze milerat se teto moznosti vzdam ve prospech citelnosti kodu. new MyString(c:\data).getFiles() čo mi nepríde príliš veľká obeť. To už potom smrdí C-čkovým typedef (pri použití 2 knižníc v projekte máte minimálne 3 názvy pre int - skúsenosť z praxe), alebo C-čkovými preťaženými operátormi - nikdy neviete, čo vlstne to plus spraví. Aby som nevyvolal flame - tieto možnosti sú naozaj mocné, ale ak potrebujete urobiť rýchlo zmenu už staršieho projektu (t.j. asi v 90% času života aplikácie) - nevyhovujú. Naprosty souhlas. -- Oto 'tapik' Buchta, [EMAIL PROTECTED] http://www.buchtovi.cz __ This email has been scanned by the MessageLabs Email Security System. For more information please visit http://www.messagelabs.com/email __
Re: Co jde v .NET a nejde v Jave?
Oto 'tapik' Buchta napsal(a): On Thursday 02 November 2006 09:21, Petr Synek wrote: bylo pekne, kdybych mohl vytvorit jen Hib. Entity a JTable nejak rict ze ma rovnou pouzivat tyto entity (a tudiz bych uz se nemusel starat o prekladku dat z Entit do TableModelu). A takhle by snad nejak mohl fungovat JBoss Seam. No to je prave trosku potiz. V pripade automatickeho update dat musite osetrit par veci, jako je napriklad kvalita dat, konzistence dat paralelne upravovanych ruznymi lidmi, pristupova prava,... To je o necem jinem, Seam te odsitini od nutnosti psani controlleru. To ze mas nad databazi porad nejakou objektovou vrstvu entit (domain model) plati. Stejne tak plati, ze mas business service vrstvu tvorenou session beanami. Jednou z vlastnosti Seamu je, ze tyhle session beany umi vystavit do JSF kontextu. Vsechny problemy, ktere jsi vyjmenoval tak muzes v pohode resit na urovni business vrstvy... -- S pozdravem Roman Dagi Pichlik /* http://www.sweb.cz/pichlik/ Blog pro kodery */ __ This email has been scanned by the MessageLabs Email Security System. For more information please visit http://www.messagelabs.com/email __
Re: Co jde v .NET a nejde v Jave?
Myslim, ze JAVA znamena programovaci jazyk, zakladni API a komunitu kolem toho. Stejen tak jako ostatni programovaci jazyky. Takze tak se na to divejte. Ja programuji v Delphi a JAVA. Ceska komunita kolem Delphi je silnejsi nez JAVA, Delphi jako nastroj je daleko vyspelejsi, nez napr. Eclipse, ale protoze Delphi je placene i komunita kolem neho vydava prevazne placene komponenty a frameworky. To byl duvod proc jsem nakonec presel na JAVA, api je daleko mensi a kompaktnejsi, tudiz lepe pruhledne. K frameworkum mam zdrojove kody ve kterych se da (narozdil od tech Delphovych) dobre vyznat. Nesnazte se tedy odtrhavat komunitu od programovaciho jazyka jako takoveho. P.S.: To o cem mluvite s tim propojenim dat s tabulkou to je prace RCP Spring RCP to resi presne tak jak si prejete, ale jde v tom o trochu dal. Pouziva Formularovi Model, ktery automaticky generuje (kdez chcete), nebo vas necha si ho nagenerovat sam, kdyz chcete v nem provest upravy. Tudiz do ruky dostavate silu obou pristupu, ne jen jednoho. Lukas benzin Benda ([EMAIL PROTECTED]; http://benzin.bloguje.cz) Java a Delphi programator PHP a JavaScript skrypter Tvurce databazovych aplikaci A cestinarsky ignorant ad 1) Ano TableModel si muze tahat veci i od nekud jinud, ale toto vy musite rucne nejak osetrit, musite to proste naprogramovat. ad 2) Prave by bylo pekne, kdybych mohl vytvorit jen Hib. Entity a JTable nejak rict ze ma rovnou pouzivat tyto entity (a tudiz bych uz se nemusel starat o prekladku dat z Entit do TableModelu). A takhle by snad nejak mohl fungovat JBoss Seam. petr __ Od: [EMAIL PROTECTED] Komu: Java konference@java.cz Datum: 02.11.2006 08:59 Předmět: Re: Co jde v .NET a nejde v Jave? 1. Table model neni nutne plnit, ten si veci muze jenom pretahovat od nekud jinud, od sveho modelu. To jste to mozna jenom nepouzil spravne. 2. Neni mi jasne proc je to vyhoda .NET, kdyz naprogramuju model, ktery si bude data tahat primo z Hibernate entit, pak mam to same co v .NET, ne? 3. Nehledal jsem, ale nedivil bych se, kdyby to uz nekdo udelal za me ... :-)) To je vyhoda Javy ... Petr Synek napsal(a): Myslim ze to neni nic proti MVC. Je to jen zjednoduseni ve smyslu jako by JTable mohl pouzivat primo Hibernate entity aniz by bylo nutne predtim rucne plnit javax.swing.table.TableModel z Entit. S tim ze se zaroven automaticky zjisti jmena a typy sloupcu (a samozrejme ze je take mozne dodatecne toto implicitni mapovani sloupcu upravit, pokud nevyhovuje). Podobne jednoduse by snad mohl fungovat JBoss Seam pro JSF (viz. http://www.onjava.com/pub/a/onjava/2006/03/15/jboss-seam.html), ale jeste jsem si to cele nestihl precist. petr __ Od: [EMAIL PROTECTED] Komu: Java konference@java.cz Datum: 01.11.2006 10:13 Předmět: Re: Co jde v .NET a nejde v Jave? Napr. GUI nebo Web prvky pracuji primo s datovmi objekty (ADO.NET), takze vetsinou odpada rucni plneni Model objektu z Entit, tedy vice mene odpada rucni prehazovani kupy dat tam a zase zpet (i kdyz napr. Jakarta BeanUtils lrecos v tomhle smeu v Jave take zjednodusuji, ale v .NETu tohle funguje implicitne a automaticky). No to bych zrovna jako vyhodu moc nepovazoval. To je pak o tom, ze se vsechno toci okolo GUI, ktere zobrazuje i drzi data, coz neni dobry pristup (rozhodne to neni podle MVC, ale on Microsoft nikdy MVC moc nebral vazne). Pokud MVC chci pouzit, pak musim data z modelu kopirovat do GUI :-(( Me se naopak i u desktopovych aplikaci striktni pouziti MVC vzdy vyplatilo, i kdyz i trivialni aplikace to znamena vic prace, ale prehlednost kodu a jeho rozsiritelnost jednoznacne hovori ve prospech tohoto reseni. (pravda nikdy jsem si GUI neklikal, protoze me to prislo hrozne omezujici ) Abych se ale vyjadril k tematu, vse je to o tom, ktera platforma vyhraje. To je ta spravna volba Navic jde i o filosofickou otazku, ktera podle me trochu zanikla ... chcete mit volnost a nebo jasne danou cestu, podle toho si vyberte. P.S. Uz je .NET dostatecne stabilni, aby jej Microsoft nemenil pod rukama jako se stalo mezi verzi 1.X a 2.0 ... to je argument pro Javu, mozna ... -- Jiří Mareš (mailto:[EMAIL PROTECTED]) ČSAD SVT Praha, s.r.o. (http://www.svt.cz) Czech Republic -- Jiří Mareš (mailto:[EMAIL PROTECTED]) ČSAD SVT Praha, s.r.o. (http://www.svt.cz) Czech Republic
Re: Co jde v .NET a nejde v Jave?
P.S.: To o cem mluvite s tim propojenim dat s tabulkou to je prace RCP Spring RCP to resi presne tak jak si prejete, ale jde v tom o trochu dal. Pouziva Formularovi Model, ktery automaticky generuje (kdez chcete), nebo vas necha si ho nagenerovat sam, kdyz chcete v nem provest upravy. Tudiz do ruky dostavate silu obou pristupu, ne jen jednoho. Jasne, ale Spring RCP je pro desktopove aplikace. Ve Spring MVC si musite controller napsat sam. Jinak jsem chtel rici, ze MVC urcite neni bullshit, jenom jde o to, jakym zpusobem psat bezbolestne ten controller ;-) -- S pozdravem Roman Dagi Pichlik /* http://www.sweb.cz/pichlik/ Blog pro kodery */ __ This email has been scanned by the MessageLabs Email Security System. For more information please visit http://www.messagelabs.com/email __
Re: Co jde v .NET a nejde v Jave?
Eclipse ma 1000x vice pluginu (i kdyz o tom by se dalo polemizovat), ale kolik z nich skutecne funguje s vasi verzi eclipsu?? Prave pluginy jsou podle mne nejvetsi kamen urazu u eclipsu. Jednoduse upgradovat eclipse kvuli tomu, ze dany plugin je jen pro 3.2 a ja mam 3.1.3? Dekuju nechci...bohuzel musim:-( Zabundlovane reseni ala NetBeans, Visual Studio alespon funguji. Ja osobne nemam zadny cas nazbyt, ktery bych mohl venovat rozchazeni pluginu:o) P. - Original Message - From: Tomas Studva To: Java Sent: Thursday, November 02, 2006 11:58 AM Subject: Re: Co jde v .NET a nejde v Jave? Zdravim,berte to trochu s rezervou, nemam s web aplikaciami privela skusenosti. S java web app vobec, ale s .NET ano. Ale inak robim v jave :). To o com sa bavime mi pride ako Data Binding v .NET. To je mozno jedna z vyhod .Net: ide o deklaraivne programovanie, kde sa deklaruje vazba gui na kolekcie(je to nejaky interface, cize kludne na hocico, co ho implementuje) z controlera.To teda nezarucuje viac vrstvovost, ale ani ju nevylucuje. Mna deklarativne programovanie zo zaciatku stvalo, lebo ked sa viazu data zlozitejsieho charakteru, je to o to zlozitejsie to napisat. Toto viazanie sa da robit aj klasicky, z kodu, a v mnohych pripadoch sa to tak aj robi. V tomto deklarativnom style sa da pracovat s objektami. Vo viste je viazanie prepracovanejsie, hlavne ho podporuje viacej nastrojov, napr. dizajner aplikacie(nie len web) dizajnuje GUI, konkretnu obrazovku pre konkretne data, ktore sa budu cucat z DB, nezavisle na ostatnych, staci ze vie signaturu dat, a editr mu plne pomaha. Potom sa to uz iba zviaze s logiko, ktoru kodili programatori = oddelenie dizajnerskej a programatorskej prace(uz vobec nerobi GUI) Ak chcem MVC, tak si mozem architekturu vybudovat sam, nic ine nepotrebujem, proste 3 alebo 4 vrstvy. Mne ako jedna z vyhod pride hlavne atributove(typ deklarativneho) programovanie, co ma byt buducnost, tu sa mi zda ze je to o inom ako AOP, totiz ja iba hovorim ake vlastnosti chcem a zvysok sa vygeneruje za mna frameworkom A teraz este nieco k C# vs Java C# je vyspelejsi jazyk + udalosti su riesene lepsie, netreba ziaden design pattern napr, viac classov v jednom subore + out specifikacia argumentov metody - pretazovanie operatorov properties namiesto getterov - no neviem, toto ma tiez stvalo, problem je ze ked getter ma inu visibility ako setter, to sa v property neda Structs - struktury, lightweight not object struktura + indexovanie poli a kolekcii - velke plus, ide napr: children[5] + je to menej ukecany jazykIDE eclipse vs Visual Studio v oblasti pisania kodu jednoznacne vyhrava eclipse, proste som si este stale nezvykol na vs eclipse ma 1000 krat viac pluginov vs pluginy az tak moc nepotrebuje, uz ma skoro vsetko co trebaTomasOto 'tapik' Buchta wrote: On Thursday 02 November 2006 09:21, Petr Synek wrote: bylo pekne, kdybych mohl vytvorit jen Hib. Entity a JTable nejak rict ze ma rovnou pouzivat tyto entity (a tudiz bych uz se nemusel starat o prekladku dat z Entit do TableModelu). A takhle by snad nejak mohl fungovat JBoss Seam. No to je prave trosku potiz. V pripade automatickeho update dat musite osetrit par veci, jako je napriklad kvalita dat, konzistence dat paralelne upravovanych ruznymi lidmi, pristupova prava,... Neco podobneho delaly sveho casu Delphi, ze primo zobrazovaly data z DB a umoznovaly je primo v te DB menit. Pak se ale programator musel hookovat vsude mozne, jenom aby zmeny prosly opravdu jenom tam, kde mely. Kvalitne navrzeny model neco takoveho krasne a jednoduse osetri... !DSPAM:4549d00218389035412915!
Re: Co jde v .NET a nejde v Jave?
Pavel Kubal wrote: Eclipse ma 1000x vice pluginu (i kdyz o tom by se dalo polemizovat), ale kolik z nich skutecne funguje s vasi verzi eclipsu?? Prave pluginy jsou podle mne nejvetsi kamen urazu u eclipsu. Jednoduse upgradovat eclipse kvuli tomu, ze dany plugin je jen pro 3.2 a ja mam 3.1.3? Dekuju nechci...bohuzel musim:-( Zabundlovane reseni ala NetBeans, Visual Studio alespon funguji. Ja osobne nemam zadny cas nazbyt, ktery bych mohl venovat rozchazeni pluginu:o) Tak si kupte Bundle od IBM ;-) Jinak s projektem Calisto se i "ciste" Eclipse zlepsilo. A Calisto + JBoss IDE + Spring IDE vetsine lidi staci. Lukas
Re: Co jde v .NET a nejde v Jave?
Ako som uz spominal, viazat sa da na hocico aj na kolekcie, nie len na datasety. Na kolekcie je to vhodnejsie aj pohodlnejsie, lebo to mozu byt kolekcie biznis objektov. DataSet je vsak mozno rychlejsia volba, neviem. Tomas Petr Synek wrote: Ono to funguje trosku jinak. V .NETu se pouziva DataSet objekt (neco co vzdalene pripomina offline Java 5.0 WebRowSet) a tento objekt muze poskytovat business vrstva a delat centralne prislusne validace. Nic se automaticky do DB nezapisuje, modifikovany offline DataSet je treba nechat explicitne ulozit do DB (a to se muze dit v business vrstve). petr
Re: Co jde v .NET a nejde v Jave?
No hrůza, většina navržených tříd má jasnou zodpovědnost. Konkrétně rozšířit třídu String na to, aby listovala adresář, je prasárna :-). Ovšem některým programátorům se tento způsob vývoje líbí, nebožák který převezme takový kód. Jakub Petr Fischer wrote: Petr Synek píše v St 01. 11. 2006 v 01:20 +0100: Co se tyce dokumentace, tak v .NET podle mne neni dokumentace zas o moc lepsi nez v Jave (kdyz se budeme bavit zejmena o core J2SE knihovnach). Snad jen je v MSDN o neco vic prikladu jak konkretni tridu pouzit, ale myslim ze ani Java 1.5 uz se nema za co stydet (oproti napr. 1.3. verzi). V .NETu mi ale dost chybi moznost si prohlednout zdrojaky knihoven frameworku. Takze opravdu nezbyva nic jineho nez se spolehnout pouze na dokumentaci (coz nebyva idealni) nebo na google (to ale zbytecne zdrzuje). V Jave lze primo nahlednout do zdrojaku (napr. podivat se co vlastne vraci ten zatraceny Boolean.getBoolean(...) ze? :-). Co se tyce core knihoven, tak ty mi prijdou .NET knihovny ponekud vic intuitivni. Napr. string.IsNullOrEmpty() je docela uzitecna staticka metoda tridy String. V Jave musime psat porad dokola "if (s ==null || s.length() = 0)" (i o dost podivnejsi ekvivalenty lze casto potkat) nebo si napsat vlastni externi utilitu (prip. stahnout neco hotoveho z Jakarta Commons). Dale napr. prace s datumem (DateTime) a casovym usekem (TimeSpan) a jakym zpusobem se tyto 2 tridy dokonale doplnuji (scitani, odcitani, staticke helper metody na vytvareni) je ukazka jak ma .NET dobre propracovane nektere knihovny. Kdyz se pak clovek podiva na java.util.Date a ty mraky deprecated constructoru a metod, tak si uvedomi, ze vlastne cely Date je uz dnes jen docela osklivy wrapper nad jednou long promennou a nic vic... Ale neni to rozhodne to co by clovek intuitivne od Date tridy cekal. Pokud chci napriklad vytisknout cas tedy v .NETu "Console.WriteLine(DateTime.Now);" tak v Jave (jsem pres google http://www.rgagnon.com/javadetails/java-0106.html) zjistil ze musim pouzit minimalne tridy Calendar a SimpleDateFormat a provadet s tim docela slusne harakiri. Bez googlu, je toto prace na min. 5 minut. To me pripomina jednu vec, i kdyz bych nerad mlzil. Neni v .NETu nahodou mozny rozsirovat existujici tridy o novy metody (muzete si dopsat svoji vlastni metodu do existujici String nebo Date tridy - tedy podobne jako treba ve Smalltalku)? Chapu, ze nekomu to pride jako prasarna, ale je to jen trosku jinej styl OO programovani. Muzete si pak do String tridy dopsat treba funkci getFiles() a pak staci: "c:\data".getFiles() To neni zly ne? :) pf
Re: Co jde v .NET a nejde v Jave?
Vlastimil Eliáš wrote: No protoze kalendar muze byt Gregoriansky, Juliansky, Hebrejsky, Klingonsky, ... Kdyz se pak clovek podiva na java.util.Date a ty mraky deprecated constructoru a metod, tak si uvedomi, ze vlastne cely Date je uz No to me taky stve. Moc mi nedochazi proc to vydelili do toho java.util.Calendar. Mne to prijde logicke. Date je cas jako takovy (jeho bytostna esencialni podstata :-)), ruzne Calendar-e predstavuji zpusoby pocitani casu v ruznych kulturach a DateFormat-y predstavuji zpusoby, jak cas zobrazit v ruznych kulturach a casovych pasmech. Programatorovi desktopovych aplikaci to muze pripadat zbytecne, protoze desktopova aplikace bezi vzdycky v konkretnim locale a casove zone. Ale kdyz delate webovou aplikaci, ke ktere pristupuji lide z celeho sveta, tak ma tohle oddeleni jasny smysl. Makub -- ~~ Supercomputing Center Brno Martin Kuba Institute of Computer Scienceemail: [EMAIL PROTECTED] Masaryk University http://www.ics.muni.cz/~makub/ Botanicka 68a, 60200 Brno, CZ mobil: +420-603-533775 -- smime.p7s Description: S/MIME Cryptographic Signature
Re: Co jde v .NET a nejde v Jave?
On Wednesday 01 November 2006 09:54, Martin Kuba wrote: Programatorovi desktopovych aplikaci to muze pripadat zbytecne, protoze desktopova aplikace bezi vzdycky v konkretnim locale a casove zone. Ale kdyz delate webovou aplikaci, ke ktere pristupuji lide z celeho sveta, tak ma tohle oddeleni jasny smysl. A rekl bych, ze toto je presne ten rozdil mezi Javou a .NET. .NET je staven (a to vcetne knihoven, viz jiz drive zmineny ADO.NET) na desktopove aplikace. Na druhou stranu je Java daleko univerzalnejsi (ikdyz mnohdy ukecanejsi). Co se tyce serverove strany, tak bych spomenul napriklad radikalni architektonicky rozdil mezi .NET remoting a .NET web services, ktere vypadaji, jako kdyby je delaly dve ruzne firmy... Dale je u .NET problem s tim, ze co se tyka featur, je .NET hodne konzervativni, co se tyka serverove casti, alena desktopu, hlavne v UI, se hned vsude cpou nova tlacitka,... -- Oto 'tapik' Buchta, [EMAIL PROTECTED] http://www.buchtovi.cz __ This email has been scanned by the MessageLabs Email Security System. For more information please visit http://www.messagelabs.com/email __
Re: Co jde v .NET a nejde v Jave?
Myslim ze to neni nic proti MVC. Je to jen zjednoduseni ve smyslu jako by JTable mohl pouzivat primo Hibernate entity aniz by bylo nutne predtim rucne plnit javax.swing.table.TableModel z Entit. S tim ze se zaroven automaticky zjisti jmena a typy sloupcu (a samozrejme ze je take mozne dodatecne toto implicitni mapovani sloupcu upravit, pokud nevyhovuje). Podobne jednoduse by snad mohl fungovat JBoss Seam pro JSF (viz. http://www.onjava.com/pub/a/onjava/2006/03/15/jboss-seam.html), ale jeste jsem si to cele nestihl precist. petr __ Od: [EMAIL PROTECTED] Komu: Java konference@java.cz Datum: 01.11.2006 10:13 Předmět: Re: Co jde v .NET a nejde v Jave? Napr. GUI nebo Web prvky pracuji primo s datovmi objekty (ADO.NET), takze vetsinou odpada rucni plneni Model objektu z Entit, tedy vice mene odpada rucni prehazovani kupy dat tam a zase zpet (i kdyz napr. Jakarta BeanUtils lrecos v tomhle smeu v Jave take zjednodusuji, ale v .NETu tohle funguje implicitne a automaticky). No to bych zrovna jako vyhodu moc nepovazoval. To je pak o tom, ze se vsechno toci okolo GUI, ktere zobrazuje i drzi data, coz neni dobry pristup (rozhodne to neni podle MVC, ale on Microsoft nikdy MVC moc nebral vazne). Pokud MVC chci pouzit, pak musim data z modelu kopirovat do GUI :-(( Me se naopak i u desktopovych aplikaci striktni pouziti MVC vzdy vyplatilo, i kdyz i trivialni aplikace to znamena vic prace, ale prehlednost kodu a jeho rozsiritelnost jednoznacne hovori ve prospech tohoto reseni. (pravda nikdy jsem si GUI neklikal, protoze me to prislo hrozne omezujici ) Abych se ale vyjadril k tematu, vse je to o tom, ktera platforma vyhraje. To je ta spravna volba Navic jde i o filosofickou otazku, ktera podle me trochu zanikla ... chcete mit volnost a nebo jasne danou cestu, podle toho si vyberte. P.S. Uz je .NET dostatecne stabilni, aby jej Microsoft nemenil pod rukama jako se stalo mezi verzi 1.X a 2.0 ... to je argument pro Javu, mozna ... -- Jiří Mareš (mailto:[EMAIL PROTECTED]) ČSAD SVT Praha, s.r.o. (http://www.svt.cz) Czech Republic
Re: Co jde v .NET a nejde v Jave?
1. Table model neni nutne plnit, ten si veci muze jenom pretahovat od nekud jinud, od sveho modelu. To jste to mozna jenom nepouzil spravne. 2. Neni mi jasne proc je to vyhoda .NET, kdyz naprogramuju model, ktery si bude data tahat primo z Hibernate entit, pak mam to same co v .NET, ne? 3. Nehledal jsem, ale nedivil bych se, kdyby to uz nekdo udelal za me ... :-)) To je vyhoda Javy ... Petr Synek napsal(a): Myslim ze to neni nic proti MVC. Je to jen zjednoduseni ve smyslu jako by JTable mohl pouzivat primo Hibernate entity aniz by bylo nutne predtim rucne plnit javax.swing.table.TableModel z Entit. S tim ze se zaroven automaticky zjisti jmena a typy sloupcu (a samozrejme ze je take mozne dodatecne toto implicitni mapovani sloupcu upravit, pokud nevyhovuje). Podobne jednoduse by snad mohl fungovat JBoss Seam pro JSF (viz. http://www.onjava.com/pub/a/onjava/2006/03/15/jboss-seam.html), ale jeste jsem si to cele nestihl precist. petr __ Od: [EMAIL PROTECTED] Komu: Java konference@java.cz Datum: 01.11.2006 10:13 Předmět: Re: Co jde v .NET a nejde v Jave? Napr. GUI nebo Web prvky pracuji primo s datovmi objekty (ADO.NET), takze vetsinou odpada rucni plneni Model objektu z Entit, tedy vice mene odpada rucni prehazovani kupy dat tam a zase zpet (i kdyz napr. Jakarta BeanUtils lrecos v tomhle smeu v Jave take zjednodusuji, ale v .NETu tohle funguje implicitne a automaticky). No to bych zrovna jako vyhodu moc nepovazoval. To je pak o tom, ze se vsechno toci okolo GUI, ktere zobrazuje i drzi data, coz neni dobry pristup (rozhodne to neni podle MVC, ale on Microsoft nikdy MVC moc nebral vazne). Pokud MVC chci pouzit, pak musim data z modelu kopirovat do GUI :-(( Me se naopak i u desktopovych aplikaci striktni pouziti MVC vzdy vyplatilo, i kdyz i trivialni aplikace to znamena vic prace, ale prehlednost kodu a jeho rozsiritelnost jednoznacne hovori ve prospech tohoto reseni. (pravda nikdy jsem si GUI neklikal, protoze me to prislo hrozne omezujici ) Abych se ale vyjadril k tematu, vse je to o tom, ktera platforma vyhraje. To je ta spravna volba Navic jde i o filosofickou otazku, ktera podle me trochu zanikla ... chcete mit volnost a nebo jasne danou cestu, podle toho si vyberte. P.S. Uz je .NET dostatecne stabilni, aby jej Microsoft nemenil pod rukama jako se stalo mezi verzi 1.X a 2.0 ... to je argument pro Javu, mozna ... -- Jiří Mareš (mailto:[EMAIL PROTECTED]) ČSAD SVT Praha, s.r.o. (http://www.svt.cz) Czech Republic -- Jiří Mareš (mailto:[EMAIL PROTECTED]) ČSAD SVT Praha, s.r.o. (http://www.svt.cz) Czech Republic
Co jde v .NET a nejde v Jave?
Zdar, mame tu takove pnuti v teamu a cast teamu chce dezertovat k .NET s tim, ze .NET je pro ne vhodnejsi. Ted zrovna me nenapadaji nejake priklady toho, co v .NET jde a v Jave ne (bohuzel ani odpadliky ne ;-)) . Nemate nejake priklady? Pripadne v cem je .NET lepsi nez Java a v cem horsi. Podotykam, ze ted se bavime hlavne o GUI aplikacich a slozitych projektech na dlouhou dobu (tj. argument ze neco naklikam za pet minut tu ztraci vahu, protoze podstatna vaha projektu bude ve sberu a cisteni dat z ruzne (ne)konzistentnich zdroju a pomerne slozite business logice (polovodicovy prumysl)). Nechci rozpoutat zadnou flamewar, jen bych chtel znat argumenty protistrany driv, nez na ne dojde v diskusi. Dik za jakoukoliv poznamku nebo odkaz k tomuto tematu Tom
Re: Co jde v .NET a nejde v Jave?
Dobry den, ja programujem v Jave, manzel v C#.NET (pred tym programoval par rokov v Jave). Mozem Vam napisat zopar postrehov z nasich rozhovorov. C#.NET je vyzrelejsi jazyk, pretoze bol zostaveny neskor, na principoch Javy, a vyvaroval sa jej chyb a nedostatkov. Napr. anotacie tam existovali uz davno. Vsetky funkcie su pekne dokumentovane, Microsoft proste staval na svojich skusenostiach a rozsiroval iba bazu, ktoru uz mal. V .NET mozete pouzivat viacero jazykov, napr. Visual Basic, J# a pod. A teraz k nevyhodam. Ked sa dostanete k .NET projektu, ktory je napisany vo viacerych jazykoch, tak je to zvacsa horor, zlepenec. Dalsim problem je, ked sa v nejakej .NET kniznici vyskytne chyba alebo Vam nejakym sposobom, tak k nej vacsinou nemate ekvivalent. Manzel si raz cast jednej Microsoft kniznice napisal nanovo. Pre Javu existuje mnozstvo open-source projektov. Ked sa Vam jedna kniznica nepaci, najdete si inu. V .NET tuto moznost velmi nemate. Vyhoda Javy je aj v bezproblemovom nasadeni na Linuxe. Viem, ze uz bol napisany aj VM pre .NET pod Linuxom, ale o nejakom sirsom nasadeni som este nepocula. Ked sa clovek rozhodne pre .NET, takze sa v podstate rozhodol pre Windows. Myslim, ze zalezi aj na type programatora. Cloveku, ktory ma rad veci jasne nalinkovane, by viac vyhovoval .NET, lebo tam mate standardne kniznice a standardne postupy. Ak ste viac experimentatorsky typ a bavi vas hladat rozne projekty po Internete, tak by Vam asi viac vyhovala Java. Ale to je samozrejme len moj subjektivny nazor. S pozdravom Radovana Straube --- Tomas Hubalek [EMAIL PROTECTED] wrote: Zdar, mame tu takove pnuti v teamu a cast teamu chce dezertovat k .NET s tim, ze .NET je pro ne vhodnejsi. Ted zrovna me nenapadaji nejake priklady toho, co v .NET jde a v Jave ne (bohuzel ani odpadliky ne ;-)) . Nemate nejake priklady? Pripadne v cem je .NET lepsi nez Java a v cem horsi. Podotykam, ze ted se bavime hlavne o GUI aplikacich a slozitych projektech na dlouhou dobu (tj. argument ze neco naklikam za pet minut tu ztraci vahu, protoze podstatna vaha projektu bude ve sberu a cisteni dat z ruzne (ne)konzistentnich zdroju a pomerne slozite business logice (polovodicovy prumysl)). Nechci rozpoutat zadnou flamewar, jen bych chtel znat argumenty protistrany driv, nez na ne dojde v diskusi. Dik za jakoukoliv poznamku nebo odkaz k tomuto tematu Tom Access over 1 million songs - Yahoo! Music Unlimited (http://music.yahoo.com/unlimited)
Re: Co jde v .NET a nejde v Jave?
On Tuesday 31 October 2006 09:30, Tomas Hubalek wrote: Zdar, mame tu takove pnuti v teamu a cast teamu chce dezertovat k .NET s tim, ze .NET je pro ne vhodnejsi. Ted zrovna me nenapadaji nejake priklady toho, co v .NET jde a v Jave ne (bohuzel ani odpadliky ne ;-)) . Nemate nejake priklady? Pripadne v cem je .NET lepsi nez Java a v cem horsi. Oboje ma silu turingova stroje, takze to, co jde v jednom, jde algoritmicky i v tom druhem. Takze je treba rozlisit ctyri roviny: * C# oproti Java * CLR oproti JVM * .NET Framework oproti J2SE * .NET oproti J2EE Nejdriv je treba rict, ze CLR/C# je novejsi nez JVM/Java a zasadne z ni vychazel. Prestoze JVM i CLR podoruji AOP, tak C# jde mnohem dal nez Java, viz flamewar o properties na atributech. Co se tyka porovnani zakladnich frameworku, nedokazu presne rict. Co se tyka .NET oproti J2EE, tak tady je hlavni rozdil v pristupu. .NET neni specifikace, ale produkt. J2EE je specka. Produkt ma sve mouchy i sve zajimave featury, specka je oklestena, aby kazdy produkt, ktery ji implementuje, si mohl dodat par svych vlastnich featur a aby byla splnitelna vice dodavateli. Jinak byt vami tak prejdu na WebServisy, pouzivam .NET jako pohodove klikatko GUI aplikaci (preci jen je to rychlejsi a nativnejsi pro Wokenni aplikace) a na serveru si v pohode implementuju J2EE pres JAXM nebo pres featury SOAP stacku, ktery nabizi konkretni J2EE server. Jinak vysvetlovat argumenty proc .NET ano je na tech, kteri ho chteji. Proc Java je na vas. Ja jako hlavni vyhodu vidim prenositelnost J2EE oproti zavislosti na MS forever u .NETu. -- Oto 'tapik' Buchta, [EMAIL PROTECTED] http://www.buchtovi.cz __ This email has been scanned by the MessageLabs Email Security System. For more information please visit http://www.messagelabs.com/email __
Re: Co jde v .NET a nejde v Jave?
On Tuesday 31 October 2006 10:13, Radovana Straube wrote: Dobry den, ja programujem v Jave, manzel v C#.NET (pred tym programoval par rokov v Jave). Zajimava kombinace pro dlouhe rodinne zimni vecery ;-) C#.NET je vyzrelejsi jazyk, pretoze bol zostaveny neskor, na principoch Javy, a vyvaroval sa jej chyb a nedostatkov. Napr. anotacie tam existovali uz davno. Vsetky funkcie su pekne dokumentovane, Microsoft proste staval na svojich skusenostiach a rozsiroval iba bazu, ktoru uz mal. V .NET mozete pouzivat viacero jazykov, napr. Visual Basic, J# a pod. Omyl, a to zasadni. Viz http://www.robert-tolksdorf.de/vmlanguages.html Ja osobne jsem pouzival s uspechem Jython. Musim rict, ze je uz velmi vyzraly... Vyhoda Javy je aj v bezproblemovom nasadeni na Linuxe. Viem, ze uz bol napisany aj VM pre .NET pod Linuxom, ale o nejakom sirsom nasadeni som este nepocula. Ked sa clovek rozhodne pre .NET, takze sa v podstate rozhodol pre Windows. Pokud vim, tak Novell plne podporuje vyvoj Mono a v SuSE existuje spousta zajimavych projektu, jako napriklad Banshee, OpenSource prehravac multimedii, ktery jako jediny nema potize s licenci, protoze prave Novell licencoval co slo a co bylo treba (treba MP3). Dalsim prikladem je Beagle, desktop search engine. A cely ZEN Networks, jeden z nejpropracovanejsich nastroju pro management aplikaci, bezi prave v CLR/Mono. Myslim, ze zalezi aj na type programatora. Cloveku, ktory ma rad veci jasne nalinkovane, by viac vyhovoval .NET, lebo tam mate standardne kniznice a standardne postupy. Ak ste viac experimentatorsky typ a bavi vas hladat rozne projekty po Internete, tak by Vam asi viac vyhovala Java. Ale to je samozrejme len moj subjektivny nazor. Ve sve podstate je to tak. Chcete-li plne vyuzit .NET, MUSITE mit Visual Studio, MSSQL, MS Windows, IIS, ... -- Oto 'tapik' Buchta, [EMAIL PROTECTED] http://www.buchtovi.cz __ This email has been scanned by the MessageLabs Email Security System. For more information please visit http://www.messagelabs.com/email __
Re: Co jde v .NET a nejde v Jave?
Oto 'tapik' Buchta wrote: Omyl, a to zasadni. Viz http://www.robert-tolksdorf.de/vmlanguages.html Ja osobne jsem pouzival s uspechem Jython. Musim rict, ze je uz velmi vyzraly... Zrovna si hraju s Java Scripting, coz je nova ficura v JDK 1.6.0, spolecne s JRuby (0.9.1), a docela mne to nadchlo. Pokud vim, .NET zatim takovou vazbu na skriptovaci jazyky nema, coz je bod pro Javu. Od JDK 1.7 ma do virtulaniho stroje pribyt nova instrukce pro efektivnejsi volani dynamicky typovanych metod, cimz tyhle jazyky jeste zrychli. Pokud vim, tak Novell plne podporuje vyvoj Mono a v SuSE existuje spousta zajimavych projektu, jako napriklad Banshee, OpenSource prehravac multimedii, ktery jako jediny nema potize s licenci, protoze prave Novell licencoval co slo a co bylo treba (treba MP3). Dalsim prikladem je Beagle, desktop search engine. A cely ZEN Networks, jeden z nejpropracovanejsich nastroju pro management aplikaci, bezi prave v CLR/Mono. I tak je jsou ale jen dve volby - MS .NET nebo Mono. V Jave jsou na vyber implementace JRE od SUN, IBM, BEA, gcj, Blackdown, a spousty dalsich, pricemz pokud clovek potrebuje nejake specialni ficurky, jako real-time odezvy, nejaky superskalovatelny vlaknovy model ci skalovatelnost na desitky procesoru, ma velkou sanci najit vhodnou implementaci. Cetl jsem nekde argument, ze .NET je vazany silne na IIS, a ten je silne vazany na verzi Windows, takze se snadno muze stat, ze kvuli upgradu .NET se musi upgradovat cely system. To se Jave nestava. Makub -- ~~ Supercomputing Center Brno Martin Kuba Institute of Computer Scienceemail: [EMAIL PROTECTED] Masaryk University http://www.ics.muni.cz/~makub/ Botanicka 68a, 60200 Brno, CZ mobil: +420-603-533775 -- smime.p7s Description: S/MIME Cryptographic Signature
Re: Co jde v .NET a nejde v Jave?
Marketingove podporit produkt.
Re: Co jde v .NET a nejde v Jave?
__ Od: [EMAIL PROTECTED] Komu: Java konference@java.cz Datum: 31.10.2006 10:53 Předmět: Re: Co jde v .NET a nejde v Jave? On Tuesday 31 October 2006 10:13, Radovana Straube wrote: Dobry den, C#.NET je vyzrelejsi jazyk, pretoze bol zostaveny neskor, na principoch Javy, a vyvaroval sa jej chyb a nedostatkov. Napr. anotacie tam existovali uz davno. Vsetky funkcie su pekne dokumentovane, Microsoft proste staval na svojich skusenostiach a rozsiroval iba bazu, ktoru uz mal. V .NET mozete pouzivat viacero jazykov, napr. Visual Basic, J# a pod. Co se tyce dokumentace, tak v .NET podle mne neni dokumentace zas o moc lepsi nez v Jave (kdyz se budeme bavit zejmena o core J2SE knihovnach). Snad jen je v MSDN o neco vic prikladu jak konkretni tridu pouzit, ale myslim ze ani Java 1.5 uz se nema za co stydet (oproti napr. 1.3. verzi). V .NETu mi ale dost chybi moznost si prohlednout zdrojaky knihoven frameworku. Takze opravdu nezbyva nic jineho nez se spolehnout pouze na dokumentaci (coz nebyva idealni) nebo na google (to ale zbytecne zdrzuje). V Jave lze primo nahlednout do zdrojaku (napr. podivat se co vlastne vraci ten zatraceny Boolean.getBoolean(...) ze? :-). Co se tyce core knihoven, tak ty mi prijdou .NET knihovny ponekud vic intuitivni. Napr. string.IsNullOrEmpty() je docela uzitecna staticka metoda tridy String. V Jave musime psat porad dokola if (s ==null || s.length() = 0) (i o dost podivnejsi ekvivalenty lze casto potkat) nebo si napsat vlastni externi utilitu (prip. stahnout neco hotoveho z Jakarta Commons). Dale napr. prace s datumem (DateTime) a casovym usekem (TimeSpan) a jakym zpusobem se tyto 2 tridy dokonale doplnuji (scitani, odcitani, staticke helper metody na vytvareni) je ukazka jak ma .NET dobre propracovane nektere knihovny. Kdyz se pak clovek podiva na java.util.Date a ty mraky deprecated constructoru a metod, tak si uvedomi, ze vlastne cely Date je uz dnes jen docela osklivy wrapper nad jednou long promennou a nic vic... Ale neni to rozhodne to co by clovek intuitivne od Date tridy cekal. Pokud chci napriklad vytisknout cas tedy v .NETu Console.WriteLine(DateTime.Now); tak v Jave (jsem pres google http://www.rgagnon.com/javadetails/java-0106.html) zjistil ze musim pouzit minimalne tridy Calendar a SimpleDateFormat a provadet s tim docela slusne harakiri. Bez googlu, je toto prace na min. 5 minut. Dale nechapu proc napr. jinak velmi dobre propracovane java collections nemaji svuj vlastni package a motaji se do java.util kde se dneska nachazi uz kde co. Atd. ale to nema cenu dal rozebirat. Pokud se tyce podpory vice jazyku v .NETu, tak to mi prijde jako snad ta nejmensi vyhoda nebo argument. Nevim, ale asi malokdo v .NETu dneska pise v C++ nebo v J#. Udajne se v USA pise hlavne ve VB.NET a ve zbytku sveta vetsinou v C#. Jak uz Tapik psal, pro Javu VM existuje taky spousta jazyku, ale drtiva vetsina lidi je IMHO nikdy nebude mit potrebu pouzivat (aspon v nejblizsi dobe ne). Vyhoda Javy je aj v bezproblemovom nasadeni na Linuxe. Viem, ze uz bol napisany aj VM pre .NET pod Linuxom, ale o nejakom sirsom nasadeni som este nepocula. Ked sa clovek rozhodne pre .NET, takze sa v podstate rozhodol pre Windows. Mono nepodporuje vse co .NET od MS (napr. udajne GUI WinForms nic moc). Takze o dokonale prenositelnosti z windows na Unix (jako u Javy) nemuze byt asi rec. Mono vzniklo tusim tak, ze MS kdysi castecne naimplementoval verzi .NETu 1.0 na FreeBSD a dal od toho brzo ruce pryc (spis to byl marketingovy tah nez vazny umysl podporovat UNIX). A od te doby uz Mono s .NETem (1.1, 2.0, 3.0) IMHO nestaci prilis drzet krok (ale mozna se mylim). Myslim, ze zalezi aj na type programatora. Cloveku, ktory ma rad veci jasne nalinkovane, by viac vyhovoval .NET, lebo tam mate standardne kniznice a standardne postupy. Ak ste viac experimentatorsky typ a bavi vas hladat rozne projekty po Internete, tak by Vam asi viac vyhovala Java. Ale to je samozrejme len moj subjektivny nazor. To je pravda. V .NETu lze vetsinu veci delat jedinym zpusobem a ale vetsinou i snaze s mensim poctem vrstev, ktere je nutno rucne psat. Napr. GUI nebo Web prvky pracuji primo s datovmi objekty (ADO.NET), takze vetsinou odpada rucni plneni Model objektu z Entit, tedy vice mene odpada rucni prehazovani kupy dat tam a zase zpet (i kdyz napr. Jakarta BeanUtils lecos v tomhle smeru v Jave take zjednodusuji, ale v .NETu tohle funguje implicitne a automaticky). V Jave je urcite mnohem vetsi volnost vyberu knihoven to je fakt. Ale take je tim padem treba vybirat z ruznych variant, ktere se nabizi a to take stoji nejake usili. Napr. jaky persistentni framework (jen JDBC, Hibernate, JDO, Entity EJB...), jake MVC: (Struts, JSF, Tapestry nebo snad dokonce WebWork,...). Jestli vubec pouzit EJB container. Ale hlavne je pak treba doresit jak tyto (vetsinou nezavisle) frameworky navzajem zintegrovat v ramci
Re: Co jde v .NET a nejde v Jave?
Hlavně je pro práci s daty určená třída java.util.Calendar, která má vámi požadované schopnosti :-) Kdyz se pak clovek podiva na java.util.Date a ty mraky deprecated constructoru a metod, tak si uvedomi, ze vlastne cely Date je uz dnes jen docela osklivy wrapper nad jednou long promennou a nic vic... Ale neni to rozhodne to co by clovek intuitivne od Date tridy cekal. Filip Jirsák
Re: Co jde v .NET a nejde v Jave?
Filip Jirsák wrote: Hlavně je pro práci s daty určená třída java.util.Calendar, která má vámi požadované schopnosti :-) Kdyz se pak clovek podiva na java.util.Date a ty mraky deprecated constructoru a metod, tak si uvedomi, ze vlastne cely Date je uz dnes jen docela osklivy wrapper nad jednou long promennou a nic vic... Ale neni to rozhodne to co by clovek intuitivne od Date tridy cekal. Filip Jirsák No to me taky stve. Moc mi nedochazi proc to vydelili do toho java.util.Calendar. Pet
Re: Co jde v .NET a nejde v Jave?
No protoze kalendar muze byt Gregoriansky, Juliansky, Hebrejsky, Klingonsky, ... Sice si nejsem uplne jist ze by java.util.Calendar mohl byt plne vyhovujicim abstraktnim predkem uplne vsech, ale nekterych urcite ;-) Vl. Burdik Petr napsal(a): Filip Jirsák wrote: Hlavně je pro práci s daty určená třída java.util.Calendar, která má vámi požadované schopnosti :-) Kdyz se pak clovek podiva na java.util.Date a ty mraky deprecated constructoru a metod, tak si uvedomi, ze vlastne cely Date je uz dnes jen docela osklivy wrapper nad jednou long promennou a nic vic... Ale neni to rozhodne to co by clovek intuitivne od Date tridy cekal. Filip Jirsák No to me taky stve. Moc mi nedochazi proc to vydelili do toho java.util.Calendar. Pet -- Ing. Vlastimil EliasQbizm technologies, a.s. vedouci analytik... the art of software. www.qbizm-technologies.czwww.qbizm.cz www.qbizm-services.cz