Noi tutti amiamo i dispositivi. È un dato di fatto, una delle prime persone fanno le cose con un telefono PC o tablet è di personalizzarlo. Cambiamo sfondi, installare applicazioni, cambiare la suoneria, il tutto per rendere "personalmente la mia." Nel corso dell'ultimo anno, come l'ecosistema applicazione è cresciuta, come pure il numero di applicazioni disponibili. Anche se gli strumenti di sviluppo per la piattaforma Windows Phone sono i migliori del settore per la costruzione di applicazioni mobili, la gamma qualità delle applicazioni sviluppate per Windows Phone è simile ad altre piattaforme. In questo articolo, esploreremo alcuni "trucchi" di sviluppo e capire perché alcune applicazioni (a parte i contenuti) ottenere la risposta dei clienti maggiore di altri. Alcuni problemi sono relativi al codice, mentre altri sono di design-based.
Regola n. 1: Embrace Metro
Per la maggior parte degli smartphone - escluso Windows Phone - la realtà è che al di là di qualche magia stile, sono, in generale, lo stesso. Ognuno ha cromo, indicatori di stato, l'impaginazione, icone delle applicazioni e così via. Questa comunanza a volte porta alla domanda: "Cosa dovrebbe apparire come la mia domanda?" Che cos'è una decisione apparentemente semplice per alcuni è estremamente difficile per gli altri. Alcuni editori per scontato che tutti gli utenti su tutte le piattaforme vuole, o necessità, l'applicazione per lo stesso aspetto. Ciò è comprensibile, ma un presupposto non corretto nella maggior parte dei casi.
Per la maggior parte degli smartphone - escluso Windows Phone - la realtà è che al di là di qualche magia stile, sono, in generale, lo stesso. Ognuno ha cromo, indicatori di stato, l'impaginazione, icone delle applicazioni e così via. Questa comunanza a volte porta alla domanda: "Cosa dovrebbe apparire come la mia domanda?" Che cos'è una decisione apparentemente semplice per alcuni è estremamente difficile per gli altri. Alcuni editori per scontato che tutti gli utenti su tutte le piattaforme vuole, o necessità, l'applicazione per lo stesso aspetto. Ciò è comprensibile, ma un presupposto non corretto nella maggior parte dei casi.
Come Phone Microsoft ha progettato Windows, ci sono voluti un approccio diverso da altri smartphone. L'idea di un'applicazione mobile con la sensazione sguardo, e la funzionalità di una applicazione per iPhone di essere utilizzato su Windows Phone sembra innaturale. Allo stesso modo, un'applicazione Windows Phone sarebbe del tutto fuori luogo su un iPhone. Questo porta alla nostra prima regola di sviluppo Windows Phone: Embrace, piuttosto che combattere, l'interfaccia in stile Metro. La vostra applicazione si sentirà naturale a qualsiasi consumatore che usa Windows Phone.
Regola n. 2: lasciare dello spazio
differenza di altre piattaforme di telefono, il design Windows Phone dà piena applicazione edge-to-edge controllo sul layout design. Questo approccio consente al progettista di sentirsi al comando completo. Il cromo e condimenti tipici come il pulsante Indietro, chevron (>) su liste e linee di separazione elemento sono tutti elementi che riempiono lo schermo, senza migliorare l'usabilità complessiva.
differenza di altre piattaforme di telefono, il design Windows Phone dà piena applicazione edge-to-edge controllo sul layout design. Questo approccio consente al progettista di sentirsi al comando completo. Il cromo e condimenti tipici come il pulsante Indietro, chevron (>) su liste e linee di separazione elemento sono tutti elementi che riempiono lo schermo, senza migliorare l'usabilità complessiva.
Ecco perché la mancanza di questi elementi in Windows Phone non è una svista, invece, è uno sforzo per gli utenti condizione di aspettarsi che quasi ogni pezzo di informazioni in un elenco è perseguibile. Questo è vero per tutte le applicazioni di base che nave come parte del sistema operativo: per le impostazioni, Outlook o hub People, dovrebbe essere chiaro che viste di dettaglio sono disponibili per ogni elemento rappresentato.
Ci vuole un minimo di 24 pixel tra le voci di elenco per l'utente di differenziarli, così, non c'è bisogno di linee (vedi Figura 1). Ulteriori accorgimenti può essere fatto utilizzando diverse dimensioni dei caratteri o colori, ma niente di più di spazio aperto tra gli elementi è abbastanza potente.
[Clicca sull'immagine per ingrandirla.] |
Figura 1. Questi elementi sono fortemente differenziate, anche se non ci sono linee di separazione tra gli elementi. |
Regola n. 3: Margini Rispettare
Le applicazioni non sono statiche: l'evoluzione nel tempo. Sono nato a corto di idee su un tovagliolo o una conversazione che hai avuto con un amico. Poi passare attraverso le fasi di prototipazione, prototipi di design, prototipazione di sviluppo e, infine, un design formale.
Le applicazioni non sono statiche: l'evoluzione nel tempo. Sono nato a corto di idee su un tovagliolo o una conversazione che hai avuto con un amico. Poi passare attraverso le fasi di prototipazione, prototipi di design, prototipazione di sviluppo e, infine, un design formale.
In pochissimi casi questo significa che diverse persone stanno facendo il lavoro, soprattutto nelle piccole imprese. A volte sei il proprietario, sviluppatore, designer - anche il bidello - facendo tutto da soli.
A causa di questi fattori, la pressione e il desiderio irresistibile di spedire a volte si mette di mezzo per produrre quello che sarebbe stato una perfetta applicazione. Che cosa gli impedisce di essere perfetto? Spesso sono i dettagli apparentemente piccoli, ma possono rivelarsi non così piccolo nel competitivo mercato delle applicazioni mobili. Questo vale per il tema della nostra terza regola: Come roba di allineare correttamente.
Questa semplice regola - i margini di corretta - è per qualche motivo persi quando si cerca di ottenere controlli sullo schermo. Se c'era una sola cosa che potrebbe imprimere sviluppatori, sarebbe questa: un margine per tutti i contenuti funziona meglio, ne fanno 24 pixel da sinistra.
Regola n. 4: Get Controlli fuori della Via
controlli all'interno della casella degli strumenti Windows Phone sviluppatore vi permettono di creare infinite combinazioni di stili visivi e disegni artistici. La capacità di uno di questi strumenti, Silverlight, ai controlli stile fornisce un sacco di potenza. Ma questa flessibilità porta con sé alcune sfide potenziali.
controlli all'interno della casella degli strumenti Windows Phone sviluppatore vi permettono di creare infinite combinazioni di stili visivi e disegni artistici. La capacità di uno di questi strumenti, Silverlight, ai controlli stile fornisce un sacco di potenza. Ma questa flessibilità porta con sé alcune sfide potenziali.
Si consideri un esempio di utilizzo di un panorama o una pagina con un perno di controllo mappa. Questi due controlli nella pagina non rappresentano un problema. Tuttavia, quando si effettua il controllo all'interno del PanoramaItem Map, la mappa direttamente interferire con il gesto "swipe" Panorama del controllo, perché questo gesto è applicabile a entrambi i controlli. Questo può essere visto in Figura 2.
[Clicca sull'immagine per ingrandirla.] | ||||
Figura 2. Il risultato finale, quando due controlli interferire. Non è abbastanza. Problemi simili esistono con altri controlli, quando una vasta gamma di gesti è supportato. Come regola generale, non controlli nido che richiedono da lato a lato gesti. Linea di fondo: Rendere evidente per l'utente come utilizzare l'applicazione. Regola n. 5: Navigazione prevedibile Una domanda è una strada, la tua esperienza avanti e indietro attraverso la funzionalità è il percorso. Proprio come facciamo con i nostri punti di riferimento di navigazione nella nostra vita quotidiana, l'applicazione di navigazione è qualcosa che dovrebbe rimanere lo stesso. Il pulsante Windows Phone casa otterrà molti sviluppatori nei guai. Un pulsante Home all'interno di una applicazione è necessario sui telefoni che non dispongono di un pulsante dedicato Indietro; un iPhone è un buon esempio. Tutti i dispositivi Windows Phone hanno invece un pulsante hardware dedicato, eliminando la necessità di avere un tasto Home incorporato. Questo è un luogo dove la religione di progettazione è disponibile in: Perché iPhone, Android e Symbian tutte le applicazioni sono integrati i pulsanti Home, la convinzione è che un'applicazione Windows Phone ha bisogno di una, anche. A differenza di altre piattaforme, applicazioni Windows Phone mantenere uno stack pagina nel modello di navigazione.Questo modello si adatta l'aspettativa per un utente normale pulsante Indietro: torna alla vista precedente. In questo ambiente, un pulsante Home causerebbe un disegno imprevedibile di navigazione. Se l'utente naviga in profondità l'interfaccia e ad un certo punto casa presse, prosegue la navigazione in tutta l'applicazione, il numero di fotogrammi di navigazione continuerà a crescere, quindi il pulsante Indietro dovrà rilassarsi l'intero percorso. In un'applicazione Windows Phone senza pulsante Home, la navigazione è chiara e semplice: il pulsante Indietro restituirà sempre l'utente torna alla pagina precedente. In Windows Phone 7.1 SDK, una nuova API è stato aggiunto che permette agli sviluppatori di accedere e modificare lo stack pagina prima di tornare alla pagina precedente. Ciò ha dato una grande quantità di nuova flessibilità agli sviluppatori. Il cambiamento è stato fatto per sostenere una serie di non-lineare scenari di navigazione come carrelli e di pagamento e abbonamenti al servizio. Questi non-lineare scenari richiedono una procedura guidata da completare da parte dell'utente, ma il pulsante Indietro non lo stack di spostamento attraverso sette passi della procedura guidata di pagamento. In questo caso lo sviluppatore dovrebbe utilizzare la nuova API per modificare lo stack e tornare l'utente alla shopping experience, una volta una pagina di conferma è mostrato, per esempio. Anche se questa flessibilità l'API è ora disponibile, gli sviluppatori ancora devono garantire che l'esperienza complessiva di applicazione è altamente prevedibile. Ciò significa che l'utente deve sempre sapere cosa succede quando si fa clic sul pulsante Indietro. Regola 6: Imparare a Pin Tiles Una delle caratteristiche più abbracciata dagli sviluppatori è stato il supporto per le piastrelle più. La possibilità di pin tessere singole o multiple alla schermata iniziale è molto simile a un segnalibro in un libro. Quando appuntato, la tessera viene aggiunta alla schermata iniziale, e quando viene premuto, la tessera deve portare l'utente direttamente al contenuto o funzione. Ci sono stati numerosi dibattiti su come questa funzione dovrebbe essere usato. Dovrebbe essere un link ad un luogo specifico in un app, pur conservando la piena esperienza app? O dovrebbe limitare l'applicazione di un insieme ridotto di funzionalità, come un mini-app? Un certo numero di articoli sono stati scritti, ma questioni di l'intento originale continuano ad emergere sui forum e in vari eventi. Il concetto di una piastrella appuntato, mostrato in Figura 3, è stato come un segnalibro profonda che espone un sottoinsieme di funzionalità all'interno dell'applicazione. Per esempio, il tempo di una sola città, o una categoria di notizie, o una scheda sola, simile a quello fatto nella Hub Persona.
Detto in altro modo: una piastrella appuntato deve essere una scorciatoia per informazioni in genere si trova nel profondo l'applicazione - non è un segnalibro che continua a fornire l'accesso a tutta l'applicazione. Regola numero 7: Risultati limite relativo controllo mappa per cosa l'utente può vedere sulla Viewport Come Casella di testo e l'elenco, il Windows Phone SDK 7.1 comprende Mappa controllo. Questa è integrato con la mappatura Bing. Questo controllo versatile, supporta una serie di caratteristiche che consentono agli sviluppatori di creare esperienze di grande nativo mappatura Bing. Gli sviluppatori problema più comune imbattersi in cerca di mappa del mondo nel controllo. Mappa di Controllo ha buone prestazioni, ma non si può mai dimenticare che si sta eseguendo l'applicazione su un telefono. Ci sono alcune regole da ricordare quando si utilizza il controllo. In primo luogo, gli sviluppatori dovrebbero controllare se il punto è visibile nella zona della mappa, in altre parole, nel viewport. Un metodo banale per il controllo dovrebbe essere simile a questa: protetto bool CheckPinInViewport (doppia larghezza, doppia altezza, coordinate Point) { if (coords.X> 0 & & coords.Y> 0) { ritorno coords.Y <altezza e larghezza e coords.X <; } return false; } Non ha senso nel mostrare qualcosa al di fuori della finestra. L'esempio di codice si applica ai pin, ma il problema è più ampio, come il controllo Map supporta più tipi di elementi come le piastrelle, i livelli, forme e dei controlli. Ogni aggiunge complessità quando la visualizzazione della mappa viene spostato o riposizionato, aggiungendo calcoli che riguardano la CPU. La seconda questione è un po 'più complessa: cosa succede se un grande insieme di risultati viene restituito; condomini di Manhattan, per esempio? I risultati anche in una risoluzione della mappa relativamente basso grado di produrre un elevato numero di pin. In questo caso è necessario capire come i risultati raggruppare insieme, in un numero molto elevato di risultati, a parte pin sovrapposti sono di scarsa utilità per l'utente. Alla fine, ciò causa frustrazione e insoddisfazione. Una volta raggiunto un punto in cui la quantità di dati è più che sia l'utente sia in grado di gestire telefono, ci sono alcune opzioni da considerare. I dati possono essere filtrati, oi risultati dei perni adiacenti possono essere raggruppati. Ecco un esempio di clustering in un scenario reale. La vostra applicazione sta mostrando un elenco immobiliare, e ci sono 50 risultati allo stesso indirizzo (con numeri di unità diverse). Una visione tradizionale dei risultati avrebbe tutti i 50 pin impilati uno sopra l'altro. In una vista cluster, questi perni possono essere rappresentati da un singolo pin. Allo stesso modo, si può prendere un livello più alto e rappresentano un intero isolato o una sezione di blocchi da un singolo risultato, se la densità dei pin in quella posizione è più alto. La mappatura è generalmente un'esperienza coinvolgente; tutti si aspettano di essere entusiasmato dai vostri piedini modello personalizzato. L'input tocco dovrebbe attivare la spilla con sufficiente precisione per permettere all'utente di interagire con i dati senza essere frustrato. Regola n. 8: rimozione definitiva dovrebbe essere trasparente Questo è tutto su come l'applicazione risponde al segnale del telefono cellulare che ha bisogno di più memoria.Cominciamo con una descrizione del modo in cui il telefono alloca la memoria e gestisce lo stato dell'applicazione. Nel aggiornamento Mango del sistema operativo, le applicazioni non in vista non sono sfrattati dalla memoria: sono letteralmente in pausa e permesso di rimanere residente in memoria. Il resto della gestione della memoria segue la pre-Mango regole: applicazioni che richiedono memoria sono concessi la richiesta se è disponibile memoria sufficiente. Non succede nulla di fatto meno che l'applicazione attiva è esercitare più pressione sul pool di memoria attualmente disponibili. Se l'applicazione attiva ha bisogno di più memoria, il sistema operativo sfrattano l'applicazione in quelli meno utilizzati di recente (LRU) ordine. Come mostrato nella Figura 4, l'applicazione in primo piano - è il più lanciato di recente - potrebbero sfrattare la domanda non nella vista, basato sulla regola LRU.
Nel processo di rimozione definitiva, Memory Manager OS segnali della domanda; che l'applicazione viene data una quantità finita di tempo di chiudere (è ucciso con forza se il tempo si esaurisce). Si noti che c'è una grande variabilità tra ciò che gli sviluppatori pensano dovrebbe accadere rispetto a ciò che effettivamente accade quando l'applicazione è riattivato. Gli utenti si aspettano che l'applicazione sia nello stesso stato in cui è stato lasciato. In particolare, vogliono sapere che un CheckBox è ancora spuntato, un TextBox contiene lo stesso testo, e un elenco è nella stessa posizione. Il modello di visualizzazione all'interno di Windows Phone aiuta con questa sfida, è possibile utilizzare un'associazione bidirezionale in Silverlight dal modello al fine di proprietà appropriate all'interno del modello durante la rimozione definitiva. Questo approccio risolve tutti i problemi tranne una: lista. Lista non possono essere gestiti nello stesso modo perché è un controllo complesso con una struttura profonda, ma contiene anche una serie di elementi a cui non è possibile associare direttamente. In questo caso, si sta cercando la posizione della proprietà VerticalOffset del ScrollViewer. Ecco come trovarlo: ScrollViewer visualizzatore = ((VisualTreeHelper.GetChild (myList, 0) come . FrameworkElement) FindName ("ScrollViewer") come ScrollViewer); _viewModel.ListBoxPosition = viewer.VerticalOffset; In questo caso, il codice salva il valore nella proprietà di base che possono poi essere salvati nella raccolta Stato della pagina. In sintesi: gli utenti non dovrebbero essere a conoscenza di qualsiasi cosa accade tra i rimozione definitiva delle app e quando si riprende. Regola n. 9: Gestire correttamente errori di rete Ci piace il costante stato collegato su desktop, ma non hanno questo lusso su dispositivi mobili. E in generale, la più mobile del dispositivo, il più imprevedibile lo stato della rete. Anche per un computer portatile, passando da una stanza all'altra può causare cambiamenti nel profilo delle prestazioni della rete. I telefoni cellulari sono peggio: sono dispositivi altamente sensibili, e la quantità di potenza applicata all'antenna deve essere bilanciata con le prestazioni della batteria. Gli utenti finali ben pochi avrebbero godere di un telefono cellulare che dispone di reception fantastico, ma dura solo 30 minuti. L'inverso è vero anche: prestazioni di rete molto poveri non fa felici gli utenti, anche se la batteria dura una settimana. Queste situazioni richiedono che gli sviluppatori di testare scenari aggiuntivi. Qui ci sono alcuni problemi relativi alla rete che influiscono sulla qualità complessiva di un'applicazione: 1. Stato disconnesso l'app. Se l'applicazione richiede l'accesso ai dati attraverso la rete, cosa succede quando la rete non è disponibile? In questo caso, tutte le chiamate di rete un'eccezione. Anche se può sembrare banale, questo è spesso mancato, basta mostrare un messaggio di errore non è utile alla maggior parte degli utenti. Ci sono alcuni modi l'applicazione può mettere in guardia su un problema di rete, compresi gli indicatori verde o rosso-luce, oscuramento l'intera interfaccia utente o qualcosa di semplice come un messaggio utile. Nel corso del tempo, gli sviluppatori hanno imparato modi per verificare la connettività. listato 1 , mostra un metodo di esempio. Ecco la versione XAML: <Griglia di sfondo = "# CC000000" Margine = "0,0,0, -32" Grid.RowSpan = "2" DataContext = "{origine di associazione = {StaticResource Locator}}" Visibilità = "{Binding Environment.IsNetworkAvailable, Mode = OneWay}"> <TextBlock HorizontalAlignment TextWrapping = "Center" = Testo "Wrap" = "Non Collegato ... "VerticalAlignment =" center "/> </ Grid>
Corso Visual Studio - Corsi Visual Studio
Corso .Net- Corso Dot.Net - Corso Vb.net
Corso C# - Corso PHP - Corso Joomla |
Nessun commento:
Posta un commento