do more with less
news, esperienze, esempi da condividere e qualcosa su di me

giovedì 7 febbraio 2013

Kona Guidance for developing Windows Store LOB apps

imageKona è una guida per lo sviluppo di line of business (LOB) apps per Windows 8. Il progetto inizialmente aveva assunto il nome Prism for WinRT per poi cambiare in Windows 8 LOB in quanto più coerente con gli obiettivi di questo progetto.

Obiettivi del progetto
Questo progetto si pone l’obiettivo di scrivere una guida e un implementazione di esempio che descrivano le pratiche raccomandate per costruire applicazioni LOB per Windows 8 utilizzando WinRT e .NET. La guida si focalizzerà in come creare applicazioni (apps) che siano manutenibili e testabili.

Approccio
Il team del progetto sta adottando un approccio simile a quello che hanno seguito quando iniziarono Prism dopo CAB che è quello di fornire una guida sulla nuova piattaforma. In entrambi i casi la piattaforma principale è cambiata in modo significativo rispetto alla precedente e la loro conoscenza delle best practices è evoluta da quando è stata inizialmente creata la guida. Hanno quindi deciso che sarebbe più vantaggioso per gli sviluppatori avere a disposizione una guida per la realizzazione di Windows Store apps.
Come parte del progetto, stanno valutando quali funzionalità di Prism abbiano senso per un’applicazione Windows store. Per esempio, MVVM e delegate commands hanno senso ma il rilascio modulare no. Di conseguenza il team credere che si possa ottenere la UI Composition utilizzando una gerachia di ViewModels invece di eseguire il porting delle region.

Scenario
Per Kona, è stato selezionato uno scenario basato su un catalogo prodotti e un carrello che permette di visualizzare il contenuto (catalogo prodotti) e creare form che richiedano l'immissione di dati (processo di checkout). Il team è orientato a creare un’implementazione di riferimento basata su AdventureWorks che dimostrerà come implementare questo scenario. L’esempio soddisferà i seguenti product backlog item (gli elementi sotto la linea, in ogni sezione, potrebbero non essere inclusi nella prima release):

Windows Features

  • Camera, GPS, e altri device sensors
    Suspend, Terminate, e Resume
    Snap
    Live Tile
    Search
    Navigation
    Setting
    ------------------------------------------------------
    Share

Line of business

  • Local data management
    Usually connected
    Interact with services
    Validation
    ------------------------------------------------------
    Deployment – side loading
    Security

Patterns & practices

  • MVVM e unit testing
    UI composition (uttilizzando la composizione di ViewModels)
    Delegate commands
    ------------------------------------------------------
    Loose coupling pub/sub
    Modular development e team indipendence

Attualmente il progetto, in beta, è scaricabile da qui.