pátek 28. března 2008

Tak trochu schizofrenní

Dobře jsem se "bavil" při čtení článku Adama Biena s názvem Why some of the Java EE / J2EE projects are inefficient ...or at least suboptimal, ve kterém je předloženo dvanáct důvodů proč jsou některé J2EE projekty neefektivní. Já jsem vypíchnul, některé z nich se kterými jsem se setkal a nebo jsem je sám způsobil.

  • "The thrill is gone..." many developers, architects and managers just lost they enthusiasm and passion. This is one of the main reasons, why many projects are just so inefficient...
  • The architects love layers and tiers - several mapping procedures are needed just to pass a persistent entity from the persistent layer to the presentation
  • Everything is configurable, replaceable and mockable. The XML overhead is huge. The question is: When did you really needed to replace something in your passed projects?
  • Developers are sometimes too extreme: either everything is overengineered with millions of patterns or best practices, or hacked down in "go to spaghetti" fashion
  • HA, Clustering, etc. is used even for "guestbook-like" applications. Complexity rules!
  • Some popular servers take several minutes to start and deploy - you have to repeat this procedure several times a day
  • It takes longer to open a case (and reproduce a problem) for a bug of the appserver, than fix it by yourself (of course if you had the source :-))

Odrážky dva, tři a čtyři jsou tak trochu schizofrenní. Na jednu stranu chceme, aby náš kód, produkt byl robustní, rozšiřitelný, aby malá změna vstupních parametrů neznamenala přepis půlky věcí stávajících, ale na druhou stranu proklínáme prostředky, které nám k tomu pomáhají viz ony zmiňované vrstvy, rozhraní, návrhové vzory a hromady XML konfigurací. Myslím, že ty odrážky jsou dovedeny ad absurdum. Nicméně to klíčové nám poskytují a to, že se musíme vždy snažit najít a vybalancovat hranici, kdy náš kód a všechny věci kolem (konfigurace, deployment) budou maximálně tak komplexní jak situace žádá, ale ani o chlup více.

Související články

úterý 25. března 2008

SWT aplikace - ještě lepší L&F na Windows Vista

Sam Ramji oznámil novou iniciativu v rámci Microsoft Open Source Software Lab na poli interoperability SWT a Windows Vista, tak aby java aplikace postavene na SWT mohly plně využít možnosti Windows Presentation Foundation (WPF) systému. Chování a vzhled těchto aplikací by se měl z pohledu koncového uživatele opět blíže přiblížit "nativním" Windows aplikacím.

Ramji přímo prohlásil:

...Among a range of other opportunities (which we’re still working on), we discovered that Steve Northover (the SWT team lead) had gotten requests to make it easy for Java developers to write applications that look and feel like native Windows Vista. He and a small group of developers built out a prototype that enables SWT to use Windows Presentation Foundation (WPF). We’re committing to improve this technology with direct support from our engineering teams and the Open Source Software Lab, with the goal of a first-class authoring experience for Java developers.

Toto oznámení v sobě několik dvě poselství v jednom.

  • Microsoft se rozhodl větší mírou podporovat open source iniciativu.
  • Microsoft se minimálně pro tento okamžik rozhodl přímo podpořit SWT framework oproti konkurenčnímu Swingu.
  • Java pro desktop nemusí být mrtvá

Je to sice jenom kapka v moři, ale docela by mě zajímalo co na to Sun. Spolupracuje více s Microsoftem, aby se Swing více přiblížil nativnímu L&F a nebo na větší investice do desktopu rezignoval? Uvidíme. Zatím totiž vždy platilo, že každá novější verze Javy přinesla posun k nativnímu L&F.

Zdroje