Java >> Java tutoriál >  >> Java

The Java Perspective:Cocoas Interface Builder

Příchod do programování kakaa společnosti Apple ze světa Java byl pro Marcuse Zarru obrovským otevřením očí. Kdykoli mluví s ostatními vývojáři, kteří spolupracovali s Cocoa, slyší chválu na vývojové nástroje společnosti Apple. Podívejte se, zda souhlasíte s jeho závěry o Apple Interface Builder z pohledu Java vývojáře.

Pro více informací o vývoji Java navštivte naši referenční příručku Java nebo se přihlaste k odběru našeho zpravodaje Java.

Dovolte mi začít tím, že jsem spíše „hard-core“, pokud jde o vývoj Java GUI. Pevně ​​věřím v Swing/JFC API a na toto téma jsem napsal několik článků. Celý svůj Swing GUI kód ​​píšu ručně. Při vývoji Swing nepoužívám žádné nástroje WYSIWYG a rád používám GridBagLayout (pravděpodobně nejtěžší správce rozložení).

Až donedávna jsem celý svůj vývoj prováděl pomocí vim a teprve nedávno jsem přešel na používání Intellij's IDEA. Tento přechod byl způsoben hlavně miagingovou pamětí a neschopností udržet 100 procent metod a balíčků přímo v mé hlavě. Nicméně i když používám toto IDE, stále se vyhýbám grafickým nástrojům Swingdevelopment, jako je mor, protože produkují pomalý a přebujelý kód a protože tyto nástroje nepíší kód stejným způsobem jako já (takže vytvářejí kód, který je obtížné udržovat).

Úvod do Tvůrce rozhraní

Když jsem se poprvé dostal k vývoji kakaa, začal jsem tím, že jsem si prošel výukové programy poskytované společností Apple na jejích webových stránkách pro vývojáře a pracoval jsem s každým výukovým programem ve skvělé knize Aarona Hillegasse Cocoa Programming for Mac OS X . Přiznávám určité obavy, když jsem oslovil Interface Builder. Používaly to všechny výukové programy – zkontroloval jsem to. Hledal jsem programové způsoby, jak vytvořit GUI v tutoriálech a nemohl jsem je najít. (Nakonec jsem je našel, ale to je jiný příběh.)

Takže se svou nechuť k WYSIWYG nástrojům v ruce jsem oslovil Interface Builder a začal pracovat na výukových programech. Můj první tutoriál byl triviální:Zahrnoval jednoduché GUI s jedním oknem, dvěma tlačítky a štítkem. Poté, co jsem dokončil tutoriál, jsem se na to s úžasem podíval.

V tomto malém projektu jsem se naučil následující:

  • Interface Builder není generátor kódu.
  • Interface Builder je nedílnou součástí vývojového procesu na Cocoa.
  • Projekty Cocoa můžete stavět bez Interface Builderu, ale bylo by to prostě hloupé.

Interface Builder přistupuje k návrhu GUI způsobem, který je vývojářům v Javě zcela cizí. Trvalo mi docela dlouho, než jsem to pořádně rozkousal. Jakmile jsem to udělal, uvědomil jsem si, že jeho řešení dává dokonalý smysl a rád jsem ho používal.

Interface Builder funguje tak, že vytváří skutečnou instanci GUI. Když přetáhnete tlačítko do okna v Interface Builderu, základní kód ve skutečnosti vytvoří instanci tohoto tlačítka a umístí ho do GUI. Když skončíte s grafickým uživatelským rozhraním a uložíte jej, bude toto grafické rozhraní serializováno na disk. Když se vaše aplikace spustí, soubor nib GUI se de-serializuje zpět do paměti, což vede k rychlejšímu spouštění, protože objekty nemusí být inicializovány ani není třeba vytvářet žádná připojení.


Java Tag