Introduzione
Al corso di Ingegneria e Scienze Informatiche dell’Università di Bologna, è presente un esame facoltativo di Sviluppo Mobile.
Da usufruitore dell'ecosistema Apple e appassionato di sviluppo mobile, mi sono iscritto al corso e ho deciso di portare un rifacimento dell'applicazione MyVet User, applicazione che ho co-prodotto in qualità socio e programmatore di MyVet S.r.l.
Scopo
Lo scopo e' quello di presentare un'applicazione MVP per l'esame, garantendo la compatibilità con l'app originale, con anche l'intento di presentarla come demo al resto dei soci di MyVet, dove al tempo era oggetto di discussione la possibilità di ricostruire l'app con una nuova tecnologia.
Struttura
Dato che l'esame consiste nella presentazione del solo frontend nativo, come backend ho usato le API ufficiali aziendali rimanendo nell'ambiente di Development.
Nel momento della presentazione, il software permette di:
registrarsi e accedere tramite credenziali, negoziando un Token JWT;
registrarsi e accedere con il proprio account Apple;
CRUD completo dei propri animali;
ricerca fuzzy e geolocalizzata dei veterinari su mappa nativa, attraverso il motore di ricerca Elasticsearch;
salvare i professionisti trovati;
prenotare un appuntamento;
Architetturalmente parlando, l'applicazione e' progettata totalmente seguendo il pattern MVVM e utilizza una logica a servizi per condividere lo stato delle entità applicative.
Peculiarità
In questo progetto e' stato utilizzato lo stile Liquid Glass, iniziando il progetto con le versioni Beta Sviluppatore, rilasciate dopo la presentazione alla WWDC25. Cio' mi ha permesso di essere il primo in assoluto a portare un progetto con il nuovo linguaggio visivo. A dimostrazione della capacità personale di adattarsi velocemente alle nuove tecnologie e novità nel mondo dello sviluppo software.
Tra le altre unicità, per via della pesantezza di XCode, il mio povero MacBook M2 da 8GB non era in grado di reggere l'IDE e l'Emulatore iOS contemporaneamente. Quindi, per impedimenti tecnologici, l'applicazione é stata totalmente sviluppata in versione desktop e compilata al termine dello sviluppo delle singole feature nella versione mobile. Questo mi ha garantito anche il primato di prima app Desktop presentata al corso.
Conclusione
Il mio progetto ha rispettato appieno tutte le richieste minime applicative, presentando anche tutte le feature opzionali, superando ampiamente i punti massimi possibili.
Questo più tutte le esclusività come Liquid Glass e la versione Desktop, ho ricevuto la splendida valutazione di 30 e Lode.
