Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!
Zadejte Vaši e-mailovou adresu:
Kamarád fotí rád?
Přihlas ho k odběru fotomagazínu!
Zadejte e-mailovou adresu kamaráda:
Informace
Softwarové zprávy: SproutCore – Cocoa pro Web a PopChar X 4.0. (17.6.08)
17. června 2008, 05.00 | SproutCore je vývojový javascriptový rámec pro tvorbu webových aplikací na způsob prostředí Cocoa. A PopChar X 4.0 vylepšuje možnosti vyhledávání a vkládání zvláštních znaků.
Dnes bude novinek trochu méně, zde najdete dvě zprávy související se softwarem pro Macy, druhý dnešní článek se věnuje novinkám spojeným s iPhonem 3G.
Nejprve se podíváme na odhalené „veřejné tajemství“ Applu:
SproutCore umožňuje vytvářet webové aplikace podobné aplikacím prostředí Cocoa
V pátek v San Franciscu skončila vývojářská konference WWDC. Apple sice po účastnících konference vyžaduje utajení většiny informací, jež se tam probírají, ale nemohl zatajit jednu významnou novinku odhalenou právě v pátek.
Jde o SproutCore, otevřený, na JavaScriptu postavený, prostředím Cocoa inspirovaný vývojový rámec pro tvorbu webových aplikací, jež vypadají a fungují jako vlastní aplikace osobních počítačů. Právě kvůli tomu, že se jedná o otevřený projekt, nemohl Apple zabránit zveřejnění informací o něm. Na konferenci WWDC se probíralo, jak při tvorbě webových aplikací spojit SproutCore s technologiemi lokálního ukládaní dat definovanými standardem HTML5.
Původ SproutCore
První informace o SproutCore se objevily již loni na podzim, kdy se ukázalo, že webová galerie (Web Gallery) služby .Mac byla vytvořena s pomocí tohoto vývojového rámce. Základ SproutCore položil Charles Jolley z firmy SproutIt, kdy ho užil pro svého webového správce pošty Mailroom, dalším vývojem se z něj stal rámec převyšující všechny ostatní javascriptové vývojové rámce v tom, že je navržen pro sestavování celých rozsáhlých bohatých webových aplikací.
JavaScript versus Flash
JavaScript, jehož podpora se nachází ve všech moderních webových prohlížečích, toho umožňuje docela hodně, přesto to ne vždy stačí, a tak vývojáři sahají po jiných prostředcích, například po Flashi od Adobe.
Apple a konkrétně Steve Jobs ovšem Flash zrovna v oblibě nemá (i kvůli tomu, že Adobe dlouho upřednostňovala potřebný zásuvný modul ve verzi pro Windows a s mobilní verzí Flashe není Jobs vůbec spokojen, podporu Flashe pro iPhone přímo odmítl).
Apple proto začal pracovat na náhradě Flashe pro svůj web, využíval řadu otevřených skriptovacích rámců jako jsou třeba Prototype a Script.aculo.us. Tyto rámce nabízejí prefabrikovaný kód odladěný pro fungování ve všech prohlížečích, designér stránky se tak může soustředit hlavně na to, co má stránka dělat, aniž by musel znovu vymýšlet potřebný kód. Takto lze nahradit Flash, přičemž není potřebný žádný dodatečný zásuvný modul, protože JavaScript prohlížeče podporují přímo.
Architektura a přednosti SproutCore
SproutIt se rozhodla jít ještě dále a počala vyvíjet rámec pro vývoj celé aplikace postavený na architektuře MVC ( Model View Controller – model, zobrazení, řadič). V této architektuře oddělená data modelu a zobrazení uživatelského rozhraní spojuje logika samostatného řadiče. Tím se liší od obvyklých webových nástrojů směšujících logiku, data a prezentaci, což vede k nepřehlednému a těžko udržovatelnému kódu.
SproutCore díky tomu dovoluje sestavovat javascriptové aplikace pozoruhodně malým množstvím programového kódu. Dají se takto vytvářet aplikace typu „tlustého“ klienta, jež běží v prohlížeči, se serverem komunikují prostřednictvím technologie AJAX jen tehdy, když potřebují nahrávat nebo ukládat data. Oproti AJAX aplikacím tak aplikace vytvořené pomocí SprutCore běží rychleji, snáze se používají a mnohem snáz se píšou.
SproutCore tedy přenáší větší část aplikace do samotného prohlížeče, ta se pak chová více jako skutečná vlastní aplikace počítače, protože skutečně běží na lokálním počítači, v mnohem menší míře čeká na odezvy vzdáleného serveru. Tvorba takovýchto „tlustých“ klientů se však stala praktickou až v poslední době, díky rozvoji webových prohlížečů v oblasti podpory JavaScriptu.
Apple začal SproutCore nejenom využívat, ale též přispěl významnými aktualizacemi ke zvýšení výkonu a přidal mnoho nových funkcí. Příspěvky Applu učinily ze SproutCore ideální prostředek tvorby webových aplikací fungujících podobně jako aplikace prostředí Cocoa. Sdílejí mnohé programovací konvence, například vazby (bindings). Vazby ve SproutCore umožňují psát skripty, které se automaticky spustí vždy, když se změní hodnota vlastnosti. Takto lze psát složité aplikace se stabilním chováním s pomocí velmi malého objemu „spojovacího“ kódu.
Dění na klientské straně
Samozřejmě, čím rychleji bude webový prohlížeč zpracovávat JavaScript, tím výkonnější budou také aplikace napsané s pomocí SproutCore. Není tedy divu, že se Apple snaží vylepšit javascriptové jádro v Safari. V tomto směru by velké zlepšení mělo přinést nové jádro SquirrelFish, nedávno integrované do WebKitu, to by se mělo stát součástí Safari 4.
S pomocí SproutCore se tak dají vyvíjet na platformě nezávislé aplikace podobné těm vyvíjeným v prostředí Cocoa. Vlastně se tak vrací plány na přenos Cocoa na jiné platformy (typu Cocoa pro Windows), nyní ovšem namísto běhového prostředí Cocoa bude stačit webový prohlížeč s odpovídající podporou JavaScriptu, tedy Safari, Mobile Safari na iPhonu, Firefox a Internet Explorer 6 či 7.
SproutCore a MobileMe
Prostřednictvím SproutCore byly vytvořeny webové aplikace služby MobileMe, představené na zahájení konference WWDC. Lze předpokládat, že Apple časem přidá ke službě další podobné aplikace, například obdoby programů kancelářského balíku iWork. SproutCore se ovšem nabízí pod otevřenou licencí MIT, takže takovéto webové aplikace může vyvíjet každý, Apple by tedy teoreticky mohl dovolit vývoj aplikací MobileMe i třetím stranám, podobně jako brzy umožní vývoj aplikací pro iPhone.
To jsou však jenom spekulace, zatím Apple službu MobileMe představuje hlavně jako „Exchange pro nás ostatní“, důraz klade na podporu push technologií, podpora pro MobileMe se objeví jak ve firmwaru 2.0 pro iPhone, tak v chystané nové verzi Mac OS X 10.6 „Snow Leopard“ (a Snow Leopard Server by měl do značné míry nahrazovat Exchange Server).
V každém případě představuje SproutCore zajímavý prostředek tvorby účinných, dobře ovladatelných webových aplikací nezávislých na platformě, pro něž Apple nepochybně najde vhodné využití.
Bližší podrobnosti o rámci SproutCore se nacházejí na jeho oficiálním webu, ten je však momentálně bohužel dočasně nedostupný.
PopChar X 4.0 nabízí nový zobrazovací režim
Potřebujete-li pracovat se zvláštními znaky nepřístupnými z klávesnice, přijde vhod utilita umožňující výběr takovýchto znaků. Mac OS X sice nabízí Character Palette, ale ta každému nevyhovuje. Asi nejpohodlnější řešení nabízí utilita PopChar (X), musíte si za ni ovšem připlatit.
A včera byla oznámena její nová verze PopChar X 4.0.
Verze 4.0 usnadňuje nalezení zvláštních znaků bez ohledu na písmo pomocí nového zobrazovacího režimu „All“, kde nejste omezeni znaky dostupnými v určitém písmu. Nově v této verzi rovněž přibyl příkaz pro zkopírování Unicode názvu zvoleného znaku, byla doplněna podpora pro Unicode 5.1 a vzhled uživatelského rozhraní se více přizpůsobil Leopardovi. Úplný přehled vlastností programu shrnuje tato stránka.
PopChar X 4.0 je shareware, licence pro jednoho uživatele stojí 30 EUR, ti, kdo si program již zakoupili během minulých dvou let, mohou na verzi 4.0 přejít zdarma. PopChar X 4.0 vyžaduje Mac OS X 10.4 nebo vyšší, přímo podporuje jak procesory Intel, tak PowerPC.
Zkušební verzi programu lze stáhnout odtud (má velikost 1.8 MB), zakoupením licence se změní v plnou verzi.