La modularizzazione nello sviluppo di applicazioni è un metodo efficiente per organizzare i componenti dell'applicazione e favorire la collaborazione all'interno dei team di sviluppo. Un approccio modulare facilita inoltre le attività di test, debug...e semplifica la manutenzione dell'applicazione o della soluzione aziendale, rendendola più agevole.
MobileTogether implementa strumenti di sviluppo modulare in diversi modi, migliorando sia l'efficienza che la collaborazione. I moduli ben organizzati facilitano la comunicazione, rendendo la configurazione dell'applicazione più comprensibile per i team di sviluppo, anche per quelli che lavorano su progetti esistenti. Il riutilizzo dei componenti in diversi progetti consente di risparmiare tempo e ridurre il rischio di errori, poiché non è necessario riscrivere la stessa funzionalità per ogni nuovo progetto.
Le funzionalità di sviluppo di applicazioni modulari sono inoltre importanti per la scalabilità. Dividere le applicazioni in componenti più piccoli e gestibili riduce la complessità e rende più semplice espandere o modificare l'applicazione in base alle esigenze.
MobileTogether supporta componenti di progettazione software chiamati "Modelli di controllo", che consentono di specificare e raggruppare elementi di interfaccia utente in modo da renderli facilmente riutilizzabili. Questi modelli incapsulano elementi di progettazione e le relative azioni, facilitando il mantenimento della coerenza in un progetto. I Modelli di controllo supportano parametri, e ogni modello può essere personalizzato in base ai valori dei parametri durante l'esecuzione.
I modelli di controllo di MobileTogether semplificano lo sviluppo di applicazioni, consentendo di definire componenti dell'interfaccia utente riutilizzabili che possono essere applicati a diverse pagine — oppure per più progetti. L'utilizzo di un modello semplifica anche le revisioni e gli aggiornamenti, poiché una modifica apportata al modello può essere applicata a un intero progetto.
I modelli di controllo sono progettati definendo un insieme di controlli e il loro comportamento all'interno di un contenitore di modello. Successivamente, è possibile riutilizzare il modello di controllo in diverse parti del progetto (o dei progetti). Ogni istanza del modello viene inserita in una pagina tramite un controllo segnaposto, il che garantisce che i modelli possano essere facilmente personalizzati per diversi contesti, mantenendo al contempo la struttura e il comportamento di base.
Sebbene il comportamento predefinito di un modello di controllo possa essere definito a livello globale, è possibile sovrascrivere eventi specifici per singole istanze in cui il modello viene utilizzato, offrendo flessibilità per situazioni particolari.
I moduli in MobileTogether consentono di raggruppare elementi di progettazione e applicare proprietà comuni a tutti gli elementi del gruppo.
Una volta assegnato un nome a un modulo, tutti i componenti associati a quel modulo verranno automaticamente raggruppati con esso, in base al nome, seguendo la convenzione di denominazione definita (modulo.sottomodulo.componente). MobileTogether raggruppa automaticamente tutti gli elementi correlati per nome nel pannello dei moduli, e si può persino specificare un colore di sfondo per ciascun modulo. Questo facilita la comprensione delle associazioni e delle funzionalità.
Gli elementi possono essere spostati tra i moduli trascinandoli e rilasciandoli, oppure rinominandoli. È inoltre possibile spostare gli elementi tramite il menu contestuale che si apre con il tasto destro del mouse, e questo menu fornirà anche un elenco di tutti gli utilizzi di un elemento all'interno del progetto. Facendo doppio clic su un elemento, si accederà alla sua definizione nel progetto.
Come i modelli di controllo, i moduli possono essere esportati e riutilizzati in diversi progetti.
Il refactoring è il processo di ristrutturazione del codice sorgente di un'applicazione esistente, senza modificarne il comportamento esterno. Gli strumenti di refactoring sono importanti per migliorare la struttura interna del codice, aumentando la sua efficienza, la sua manutenibilità e la sua capacità di essere esteso, preservandone al contempo la funzionalità. Il refactoring è spesso motivato dalla necessità di semplificare il codice complesso, ridurre il debito tecnico e preparare il codice sorgente per futuri miglioramenti o modifiche.
MobileTogether Designer offre strumenti di refactoring avanzati che aiutano a identificare e gestire le risorse inutilizzate, rinominare i componenti ed estrarre porzioni del progetto in sottoprogetti o moduli riutilizzabili. Ad esempio, è possibile utilizzare il menu "Refactoring" per elencare l'utilizzo di variabili globali in tutto il progetto, al fine di gestire le dipendenze ed evitare conflitti. È inoltre possibile elencare le variabili, le funzioni e altri componenti inutilizzati per mantenere il progetto efficiente. È persino possibile utilizzare il menu "Refactoring" per sostituire istantaneamente le sorgenti del database in tutto il progetto.
Il menu "Refactoring" di MobileTogether include anche funzionalità per lavorare con i sottoprogetti, che rappresentano un altro aspetto importante dello sviluppo di applicazioni modulari, in quanto consentono di suddividere progetti complessi in unità più piccole e gestibili. Le opzioni includono l'estrazione di una parte di un progetto esistente come un nuovo sottoprogetto, l'inserimento di un sottoprogetto nel progetto corrente e l'apertura di un sottoprogetto specifico. Questo permette di riutilizzare una vasta gamma di componenti definiti in un progetto in diversi progetti.
È possibile includere altri progetti MobileTogether come sottoprogetti del progetto corrente. Il progetto corrente può quindi utilizzare i componenti dei sottoprogetti inclusi. Al contrario, i componenti di un sottoprogetto possono essere riutilizzati in diversi progetti "principali", eliminando la necessità di ridefinire le funzionalità in più progetti. Inoltre, un sottoprogetto può contenere altri sottoprogetti.
MobileTogether visualizza i sotto-progetti inclusi nel progetto corrente nel pannello "File", che funge da interfaccia di controllo per la visualizzazione, l'inclusione, l'importazione e la rimozione di questi elementi. La gestione delle dipendenze tra i sotto-progetti garantisce che le modifiche apportate a uno non influiscano involontariamente sugli altri.
Un altro strumento per una modularizzazione efficiente nelle soluzioni MobileTogether sono le Librerie Server. Le Librerie Server sono raccolte di azioni lato server che possono essere riutilizzate in diversi progetti. Tra le funzionalità particolarmente adatte alle Librerie Server troviamo le operazioni sui database, le notifiche via email o i processi di autenticazione degli utenti, che possono essere richiamate da qualsiasi progetto. Queste possono essere aggiornate e condivise in qualsiasi momento sul server MobileTogether che ospita la vostra applicazione – senza dover ridistribuire l'applicazione stessa.
Questo approccio innovativo consente di implementare aggiornamenti e modifiche alle applicazioni in modo molto più rapido, soprattutto per le applicazioni conformi, che non devono più essere ricompilate e sottoposte al processo di approvazione dell'app store.
Una libreria server è un file di progettazione MobileTogether che contiene uno o più gruppi di azioni, e la sua funzionalità è limitata all'elaborazione di questi gruppi di azioni. Durante l'esecuzione, un'applicazione può inviare una richiesta a una libreria server, con o senza parametri. La libreria server elabora il gruppo di azioni specificato e restituisce il risultato all'applicazione mobile o alla soluzione aziendale che ha effettuato la richiesta.



