mail unicampaniaunicampania webcerca

    Pasquale CANTIELLO

    Insegnamento di LABORATORIO DI SVILUPPO DI APPLICAZIONI PER DISPOSITIVI MOBILI

    Corso di laurea in INGEGNERIA ELETTRONICA E INFORMATICA

    SSD: ING-INF/05

    CFU: 3,00

    ORE PER UNITÀ DIDATTICA: 24,00

    Periodo di Erogazione: Secondo Semestre

    Italiano

    Lingua di insegnamento

    ITALIANO

    Contenuti

    Il corso è proposto tra quelli a scelta del terzo anno del Corso di Laurea in Ingegneria Elettronica e Informatica. L'insegnamento si propone come obiettivo quello di fornire allo studente gli elementi per la progettazione e lo sviluppo di applicazioni per dispositivi mobili. Saranno utilizzati gli strumenti e le tecniche più avanzate per il contesto ed in particolare gli strumenti lo sviluppo collaborativo.

    Testi di riferimento

    Slide fornite dal docente.
    Sito ufficiale per sviluppatori Android: developer.android.com

    Obiettivi formativi

    Lo studente deve essere in grado di progettare e realizzare un'applicazione funzionante in ambiente Android, utilizzando le peculiarità tipiche dei dispositivi mobili.

    Prerequisiti

    Allo studente sono richieste conoscenze di programmazione a oggetti. E' fortemente consigliato l'aver già sostenuto il relativo esame.

    Metodologie didattiche

    Tutte le lezioni prevederanno una parte teorica affiancata da una esercitativa.

    Metodi di valutazione

    Agli studenti sarà richiesto di realizzare. preferibilmente nel contesto di un piccolo gruppo un'applicazione funzionante. Il progetto dovrà essere concordato in precedenza con il docente.

    Programma del corso

    I sistemi operativi per dispositivi mobili e lo sviluppo di software per essi. L'architettura interna del sistema operativo Android, macchina virtuale. Evoluzione delle versioni e livello API.
    L'ambiente di sviluppo Android Studio: installazione e configurazione. Android Virtual Devices per ambiente di test. Activiy design. Constraint Layout.
    Programmazione event-driven. Android Event, Event Listner, Event Handler. Introduzione al linguaggio Kotlin.
    Strumenti per il controllo di versione e lo sviluppo collaborativo: Git e GitHub
    Tecniche di debugging: step execution, breakpoint. Controllo variabili locali. Utilizzo della console di sistema: Logcat.
    Componenti per la visualizzazione di liste: ListView. Interfacciamento con fonti dati. Data Model. Singleton pattern.
    ListView e Master-Detail. Avvio di activity: Intent, passaggio di parametri, interfaccia Serializable.
    Ciclo di vita delle activity. Request code e result codes.
    Custom Views. Paint object. Eventi Touch.
    Interfaccia utente: viewpager, toolbar, menu. Persistenza: SharedPreferences.
    Esecuzione di attività in modalità asincrona: gestione thread, AsyncTask, comunicazione tra thread. Database real-time: Firebase.

    English

    Teaching language

    Italian

    Contents

    The course belongs to the third year of the Computer Science and Electronic Engineering curriculum. The main objective of the course is to give the student the knowledge and tools to design and develop applications for mobile devices.
    The most advanced tools and techniques in the field will be used, and mostly tools for collaborative developing.

    Textbook and course materials

    Slides made by the teacher. Official Android developer site: developer.android.com

    Course objectives

    The student must be able to design and develop an application working on the Android OS, using the typical features of mobile devices.

    Prerequisites

    The student should have mastered object oriented programming. It is strongly recommended that the student has already passed the OOP exam.

    Teaching methods

    All lessons will contains a mix of a lecture and practice session.

    Evaluation methods

    The students are require to realize, preferably within a small group, a working application. The project must be agreed first with the teacher.

    Course Syllabus

    Operating systems for mobile devices and related software developing.
    Internal architecture of the Android operating system, virtual machine. OS versions evolution and API level.
    The Android studio developing environment: installation and configuration. Android Virtual Devices for testing environment.
    Activity design. Constraint Layout.
    Event-driven programming.
    Android Event, Event Listner, Event Handler.
    Kotlin language introduction.
    Tools for version control and group collaboration: Git and GitHub.
    Debugging techniques: step execution, breakpoint. Local variables checking. Console output: Logcat.
    List visualization components: ListView. Data source interfacing. Data Model, Singleton pattern. ListView and Master-Detail.
    Activity starting: Intent and parameter exchanging, serializable interface.
    Request code and result code.
    Custom Views. Paint object. Touch events.
    User interface: virepager, toolbar, menus. Persistance: SharedPreferences.
    Asynchronous work execution: threads, AsyncTask, communication between threads.
    Realtime database: Firebase

    facebook logoinstagram buttonyoutube logotypelinkedin logotype