Kde je problém se server objekty? MS Word i Outlook je na serveru naprosto bez problémů. Stejně nakonec nepoužíváte front-end, ale jen pár jejich objektů. Nebo si představujete, že jde o monolitickou aplikaci? Když jsme u Outlooku, říká vám něco MAPI, CDO?
Samozřejmě, že mi to něco říká. Problémy jsou v zásadě dva: výkonnostní - nastartovat a incializovat objekty wordu, outlooku, excelu nějakou tu ms zabere a něco paměti a v případě většího zatížení šel server do kytek (nad 200 uživatelů, když se to sešlo), provozní - dost často se stávalo, že po security fixech takto postavené aplikace přestaly fungovat. Já se ani nedivím. Jde o to, že v pojetí Microsoftu je server zvláštní variantou desktopu, což je špatně, a dost lidí a firem na to naletělo a rozbilo si na tom nos. Relativně snadno se napsal server, s využitím objektů (jak jinak), nicméně velice bolestivě a nákladně se pak tento server ladil s tím, že se neustále objevovali nové a nové problémy. Což souviselo i s problémem COM platformy. Obtížná udržitelnost, v případě nabouraných registrů minimální šance na opravu, nepřehlednost, chybějící verzování, základní funkcionalita (přístup na síť, přístup k IO) byla v několika různých COM knihovnách přičemž některé se distribuovaly se systémem, některé z Office, některé z určitou jinou berličkou .. prostě neskutečný bordel .. celá devadesátá léta jednotlivé týmy Microsoftu živelně generovali stovky objektů (životnost knihovny byla ani ne 2 roky). Minimální - skoro nulová možnost skriptování (velice dobře znám vbscript). To je hlavní nevýhoda COMu. Java už byla navržena právě na základě zkušeností s COMem, kdy kromě jazyka (který není až tak podstatný) přišla s velice jednoduchým ale funkčním modelem uložení a distribuce objektů a hlavně dostatečně bohatou základní knihovnou. To, co přebral .NET
Java a .NET jsou částečně srovnatelné. Java byla především pěkný jazyk. Jde o managed prostředí, což také není špatné. Bohužel jako platforma je oproti .NETu velmi holá.
Těžko soudit. Tady neexistuje jasné kritérium. A použiji jiný příklad než Sun a Microsoft, abych neprovokoval. Typickým monstrem je CPAN, kde se najde prakticky všechno a v různé kvalitě (knihovna CPANu je bohatší než to, co je dostupné pro Javu a .NET dohromady). Což je pro programátora výhodné, ale tak trochu noční můrou pro admina a pro provozovatele vůbec. Je tam miliarda závislostí. Naopak bez závislostí (nebo s minimálními závislostmi) je kód postavený pouze na clib. Což třeba i pro mne je zpátečnictví. Nicméně musím přiznat, že je to kód, který bežel v roce 90, v roce 2000 a pravděpodobně poběží bezproblémově i za 20 let. Jde jen o to, co na co použít, tak aby vývoj byl efektivní a stabilní. Nedovolil bych si říci o Javě, že je velmi holá vůči .NETu, co vím, tak základ .NETu dost reflektuje Javu s přihlédnutím na specificky microsoft desktop věci, což v Javě ani být nemůže, jinak řada komerčních knihoven existuje jak pro javu, tak pro .NET, řada knihoven existuje pro Javu a neexistuje pro .NET a naopak. .NET má určitě větší drive, což je docela pochopitelné. Java má tuhle etapu už za sebou a už je stabilní, a používá se tam, kde se stabilita preferuje. Kdežto Microsoft .NET aktuálně extenzivně rozšiřuje a zkouší, co vše s .NETem lze.

