Cet enseignement vise à poursuivre l'apprentissage de la programmation objet en langage Java grâce aux interfaces Homme-Machine (IHM) les interfaces homme-machine, ou comment concevoir des interfaces ergonomes ; la concurrence, ou comment utiliser plusieurs cœurs d'un microprocesseur pour faire un calcul en parallèle ; la programmation repartie, ou comment faire travailler ensemble des ordinateurs distants sur un réseau (un des principes du fonctionnement du cloud computing) ; la programmation mobile, ou comment programmer sous Android.