Java: vantaggi e applicazioni di un linguaggio moderno in contesti aziendali e produttivi. Presentazione a cura di: Andrea Bertolini

Documenti analoghi
Java: un linguaggio per applicazioni di rete

Lezione 2 Introduzione a Java (2)

Traduzione e interpretazione

Linguaggi di Programmazione

Java SE 7. Introduzione.

I Robot Mobili LD Omron cosa sono e come vengono impiegati

Macchine Astratte. Nicola Fanizzi Dipartimento di Informatica Università degli Studi di Bari. Linguaggi di Programmazione feb, 2016

INFOLOG Umberto Vescovini

Ambienti di Sviluppo. Linguaggi compilati

Software quale strumento per migliorare i prodotti/processi. Sergio Pugnetti

Prof. Pagani corrado JAVA

Linguaggi di programmazione e astrazione

Programmazione ad Oggetti. Java Parte I

SOFTWARE. Programmi e dati che indicano al computer come svolgere un determinato compito

Corso di Laurea Ingegneria Civile Fondamenti di Informatica. Dispensa 07. Oggetti e Java. Marzo Programmazione Java 1

Cosa è un programma. Informatica di Base -- R.Gaeta 18

Java il Corso Fondamentale

Architetture Client/Server e World Wide Web

LA NOSTRA STORIA, LE NOSTRE COMPETENZE

MATRICE TUNING competenze versus unità didattiche, Corso di Laurea in Informatica (classe L-31), Università degli Studi di Cagliari

Introduzione a Java A. FERRARI

Struttura dei Sistemi Operativi

A.P.System s.r.l. Terminal Services. sempre. ovunque. comunque

Informatica. Prof. A. Longheu. Introduzione a Java

Modelli di programmazione parallela

Applicazioni OCM LOGISTICA

oltre trenta anni specializzata nello sviluppo di prodotti per la gestione e il controllo della logistica di magazzino e dei trasporti soluzioni ERP

Concetti introduttivi

GRIMMY - presentazione prodotto

Allegato 1 Descrizione profili professionali

Comune di Venezia. Scheda descrittiva del programma

Programmazione Client-Server

ARCHITECTING AND DESIGNING J2EE APPLICATIONS

Progetto di Applicazioni Software

Informatica 1. 4 Programmazione e Sviluppo del software. ing. Luigi Puzone

STORIA E CARATTERISTICHE

Programmazione Orientata agli Oggetti in Linguaggio Java

Macchine astratte, linguaggi, interpretazione, compilazione

Linguaggi Object Oriented: Principi e Introduzione a Java

Corso Programmazione Java Standard

Progetto APILOG4.0 Application Program In LOGistics 4.0

Produzione e Logistica Integrati

Università di Bergamo Facoltà di Ingegneria INGEGNERIA DEL SOFTWARE. Paolo Salvaneschi A4_3 V2.1. Progettazione. Metodi e Linguaggi

I sistemi MES raccolgono i dati sulla produzione e li trasformano in informazioni a disposizione

Indice. Prefazione. 3 Oggetti e Java 53

Capitolo 6 Le infrastrutture SoftWare

Basi di Dati Architetture Client/Server

Indice generale Introduzione...vii Parte I Concetti e costrutti fondamentali... 1 Capitolo 1 Introduzione al linguaggio... 3

Architetture Client/Server. Un architettura è centralizzata quando i dati e le applicazioni (programmi) risiedono in un unico nodo elaborativo

Organizzazione strutturata

Basi di Dati. Prof. Alfredo Cuzzocrea Università degli Studi di Trieste. Basi di Dati e Web. Credits to: Prof. M. Di Felice UniBO

Sistemi Operativi: Concetti generali. Sistemi Operativi: Concetti generali

DESCRIZIONE PROFILI PROFESSIONALI

Analisi e comparazione dei Framework OpenSwing e Google Web Toolkit per lo sviluppo di interfacce utente con paradigma MVC.

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - D. Talia - UNICAL 1. Fondamenti di Informatica

INTRODUZIONE ALLA PROGRAMMAZIONE AD ALTO LIVELLO IL LINGUAGGIO JAVA. Fondamenti di Informatica - Programma

Replica Sistemi. 600 clienti WMS StockSystemEvolution. 150 clienti TMS ShowTrip di INVESTIMENTI in INNOVAZIONE. 17 milioni di FATTURATO

CMMS 3 MAINTENANCE MANAGEMENT SYSTEM

Principi di OOP con JAVA

Programmazione Orientata agli Oggetti in Linguaggio Java


Una piattaforma tecnologica per il processo di miglioramento dell efficienza energetica. Fabio Massimo Marchetti - ESA Automation

INTRODUZIONE INTEGRAZIONE CON I SISTEMI DI BACK END REALIZZAZIONE DI UN APP DI QUALITA SFRUTTAMENTO DELLE CARATTERISTICHE DEL DEVICE

INFORMATICA NOVITÀ IL LINGUAGGIO JAVA. Massimiliano Bigatti. Guida alla programmazione di base IN ALLEGATO AL VOLUME

Prefazione. Capitolo 1 Sistemi di elaborazione 1

Lezione 16. Il Software di base

Corso sul linguaggio Java

Tecnologie e sistemi per la business integration.

Il piano Industria 4.0

Sistema di reprocessing dello strumentario chirurgico interconnesso con soluzioni di monitoraggio e di tracciabilità La centrale 4.

Presentazione della società e dei servizi offerti

La luce si fa strada Streetlight 11.

A. Ferrari. informatica. introduzione a Java. Alberto Ferrari Informatica

Relatore Ing. Martinelli

Macchine astratte, linguaggi, interpretazione, compilazione

PROGRAMMAZIONE DIDATTICA DI DIPARTIMENTO A.S. 2017/2018

Architetture Client/Server. Un architettura è centralizzata quando i dati e le applicazioni (programmi) risiedono in un unico nodo elaborativo

UNIVERSITA' CA' FOSCARI DI VENEZIA. Facoltà di Scienze MM.FF.NN. - Dipartimento di Informatica Tesi di Laurea Triennale

Macchine astratte, linguaggi, interpretazione, compilazione

Progetto di un sistema di videosorveglianza basato su tecnologie multi-agente Corso di Laurea Magistrale in Ingegneria Informatica

Algoritmo. La programmazione. Algoritmo. Programmare. Procedimento di risoluzione di un problema

Una Roadmap per il Cloud Computing: Organizzazione e tecnologie per il modello as a Service

MDD Tools in CSI Piemonte: industrializzazione dello sviluppo e progetto open source

ADCstore MyPos. Una soluzione front-end nuova, frutto di un esperienza consolidata, per il punto cassa del Retail Italiano.

2G, a Delphi SOA/RIA Framework. ItDevCon ottobre 2016

Piattaforma di Sportello. Soluzione evoluta per l operatività di Sportello

L infrastruttura STIL. Presentazione dei risultati finali del progetto Alessandro Ricci Università di Bologna DEIS Bologna / Cesena

Traduzione ed Interpretazione

E il software applicativo che deve adattarsi alle esigenze dei processi aziendali. Non il contrario.

Università degli Studi di Parma Dipartimento di Fisica La sicurezza aziendale a 360 Il problema della sicurezza aziendale

Concetti introduttivi

Digital Transformation e Cloud. Stefano Inelli 22 Novembre 2017

Sistemi Di Elaborazione Dell informazione

Introduzione a Java. Riferimenti

Macchine Astratte. Definizione e tipi di implementazione

the best for best industry 4.0 Since 1995

Transcript:

Java: vantaggi e applicazioni di un linguaggio moderno in contesti aziendali e produttivi Presentazione a cura di: Andrea Bertolini

Obiettivi seminario Overview Java, origini Vantaggi e svantaggi Applicazioni reali

Origini (curiosità) Nato nel [A] 1990 [B] 1995 [C] 2000 [D] 2005 [E] 2015 Obiettivo primario del Java Project [A] Per comunicazioni universitarie [B] Per videogiochi [C] Per televisione interattiva [D] Per applicazioni governative [E] Per applicazioni su browser Origine del nome Java? Java Coffee Chi ha originariamente realizzato e distribuito Java? Sun Microsystem

Motivi del successo Write Once, Run Anywhere (WORA) Applet web interattivo Licenza GPL per JVM (2006/2007) Java Community Process (JCP) (1998)

Versioni Java SE (Standard Edition) Per ambienti Server e Desktop API di base per linguaggio Java Implementazione più conosciuta: JDK Java EE (Enterprise Edition) Per applicazioni web API per sviluppo di architetture multi-tier e scalabili, web services, Implementati Web Application Servers su questo standard Java ME (Micro Edition) Per sistemi Embedded IoT

Principi - Contesto Rapida ed esponenziale evoluzione di Internet e del world-wide web Sempre maggiore richiesta di Sicurezza (es. e-commerce) Performance Robustezza nelle applicazioni Flessibilità (multi-piattaforma)

Principi 1. Simple, Object Oriented, and Familiar Semplice da imparare da utilizzare da capire Orientato agli oggetti dalla base per applicazioni complesse per struttura logica ordinata, pulita ed efficiente Familiare mantenendo stessa struttura di C++ rimuovendo complessità non fondamentale per rapida migrazione a questo linguaggio

Principi 2. Robust and Secure Robusto controlli a più livelli (compilazione e runtime) gestione della memoria semplice e interna a JVM (non richiesta gestione manuale) per aumentare il numero di errori rilevati PRIMA Sicuro Ideato per ambienti distribuiti security features per controlli di sicurezza in runtime

Principi 3. Architecture Neutral and Portable Indipendente dall architettura ideato per Infrastruttura rete eterogenea Architetture hardware eterogenee Essere eseguito su differenti sistemi operativi Comunicare con interfacce di differenti linguaggi Genera bytecodes per astrarsi dall implementazione hardware Portabile Definisce convenzioni per dimensione dei dati primitivi e operatori aritmetici Programmi rimangono gli stessi ovunque Evita incompatibilità di dati tra architetture hardware o software differenti JVM: specifiche di macchina astratta per cui i compilatori generano i bytecodes

Principi 4. High Performance Performance Garbage Collector come thread continuo a bassa priorità Alta probabilità che memoria sia disponibile quando serve Componenti computazionalmente complessi possono essere scritti in linguaggio nativo e interfacciati con Java Alte performance nonostante sia linguaggio interpretato

Principi 5. Interpreted, Threaded, and Dynamic Interpretato Interprete può eseguire direttamente bytecodes sulla macchina Fase di linking è semplice, incrementale e leggera Permette rapidi cicli di sviluppo / prototipazione Threaded Necessità di eseguire più operazioni contemporaneamente Supporto a multi-threading per attività concorrenti Risulta in alti livello di interazione per l utente API per supporto a multi-threading con logiche thread-safe Dinamico Classi linkate solo quando necessario Moduli possono essere aggiunti in on-demand: servizi in costante evoluzione

Vantaggi Combinazione di tutti i principi elencati Basi solide: piattaforma evoluta e in costante miglioramento Produzione di software: Portabile con interfacce grafiche semplici da realizzare e utilizzare Sicuro con alte performance Possibilità di sviluppare software concentrandosi sull obiettivo

Svantaggi (critiche più comuni) Mancanza di distruttori espliciti Garbage collector costoso e sviluppato male in alcune implementazioni Forte impatto sulla memoria per JVM Molto diffuso da molti anni: librerie in circolazione non sempre buone Molto di alto livello

Applicazioni in contesti reali (Infolog)

Applicazioni Software proprietario per la logistica Ottimizza i flussi di magazzino evitando sprechi di risorse e una continua tracciabilità della merce Tramite il modulo di regia attiva permette massima efficienza Con l utilizzo di moduli tecnologici e innovativi rende la logistica un settore all avanguardia Ricerca & Sviluppo

Interfacce INTELLIMAG WMS Regia Attiva Integra e sfrutta tutte le tecnologie auto-id Terminali Wireless Voce RFId Sistemi FGS e RTLS Sistemi automatici

Tecnologia sistema GPS che rileva la posizione del mezzo e delle merci con un max di 2 cm di scarto terminale veicolare wireless sistema con videocamera e marker ottici; sensore di altezza; sensore di presenza carico; BlueBox INTELLIMAG

FGS

Prevenzione collisioni

Sicurezza

Sicurezza

RFID Localizzazione di merce in magazzino coperto Tracciamento continuo di elementi dalla dimensione limitata Analisi del percorso per valutare il passaggio della merce da gate predefiniti

Java e Mobile Realizzate applicazioni Android e ios per trasposizione di logiche di Intellimag Pannello di controllo per la situazione di magazzino Architettura snella e flessibile per operatività veloce

Grazie dell attenzione Modena 09 dicembre 2015 INFOLOG SpA via Pier Paolo Pasolini, 23 41123 Modena (Mo) info@infolog.it - www.infolog.it