© 2005 Ethea Introduzione a InstantObjects Per chi conosce altri OPF Per chi non conosce altri OPF A cura di Nando Dessena

Slides:



Advertisements
Presentazioni simili
…Global Gest Deca S.r.l. 24/01/ Global gest – Deca S.r.l.
Advertisements

VIA GIULIO RATTI, CREMONA – Tel. 0372/27524
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA
Elaborazione di Franco Grivet Chin
TESINA DI INFORMATICA Nome e cognome: Giorgio Zoccoli
DBMS (DataBase Management System)
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità B1 Introduzione alle basi di dati.
Database MySql.
Miglioramento della protezione dei dati mediante SQL Server 2005 Utilizzo della crittografia di SQL Server 2005 per agevolare la protezione dei dati Pubblicato:
Training Microsoft Visio Marzo, 2006
Strumenti di sviluppo Microsoft Campagna incentivi per Software Assurance Opportunità di vendita.
Java Enterprise Edition (JEE)
OUTLINE Riprogettazione del database del portale Web della Facoltà di Ingegneria Sviluppo di una applicazione WEB DB : HOMEPAGE DOCENTI Architettura multilivello.
Prima Lezione: Costruire una mappa I tipi di informazione geografica disponibili Navigazione nella mappa Coordinate e scala Vista panoramica.
Analisi dettagliata e design B. Pernici M.G. Fugini AA
Dott. Nicola Ciraulo CMS Dott. Nicola Ciraulo
IL PATRIMONIO DI DATI - LE BASI DI DATI. Il patrimonio dei dati Il valore del patrimonio di dati: –Capacità di rispondere alle esigenze informative di.
Architettura Three Tier
Basi di dati. Vantaggi degli archivi digitali Risparmio di spazio: sono facilmente trasferibili e duplicabili Risparmio di tempo: si può accedere ai dati.
Modello Relazionale Definisce tipi attraverso il costruttore relazione, che organizza i dati secondo record a struttura fissa, rappresentabili attraverso.
1 Linux day /11/2003 ADA. Dai requisiti al progetto Come nasce il progetto di una piattaforma e-learning Open Source.
Cos’è un CMS? Content Management System
1 Titolo Presentazione / Data / Confidenziale / Elaborazione di... ASP. Net Web Part e controlli di login Elaborazione di Franco Grivet Chin.
Introduzione ad ASP.net
Struts. Framework open source per lo sviluppo di applicazioni web su piattaforma J2EE. Progetto inizialmente sviluppato come sotto-progetto di Apache.
Architettura Java/J2EE
Chinosi Michele – matr.: La seconda release di Virtuose basata su database XML La seconda release di Virtuose basata su.
Benvenuti a Un incontro informativo di grande valore ed alto contenuto sulla Virtualizzazione e sistemi ad alta disponibiltà per le PMI.
Crystal Reports COPYRIGHT © 2007 BUSINESS OBJECTS SA. TUTTI I DIRITTI RISERVATI. DIAPOSITIVA 2 Positioning statement - IT Crystal Reports 2008 offre.
Kerio Workspace Un unico spazio per condividere files e collaborare a grandi idee Marino Vigliotti Sales Engineer Kerio Technologies.
Gestimp IV Il pacchetto software GESTIMP© di Isea S.r.l., di seguito indicato con GESTIMP©, permette di gestire la supervisione e la telegestione di impianti.
Fare clic per modificare lo stile del titolo Fare clic per modificare stili del testo dello schema – Secondo livello Terzo livello – Quarto livello » Quinto.
Introduzione alla programmazione Object Oriented
VIRTUALIZZAZIONE Docente: Marco Sechi Modulo 1.
Docente: Roberto Basili Fond Inf (a.a ) Introduzione alla Progettazione Concettuale R. Basili.
Progetto DATA - Seminario 25 Novembre DED (Data Entry Designer) Applicativo WEB Free & Open Source A disposizione di tutti: Utilizzabile sul server.
Firenze – Festival della Creatività 2009 Comm.it s.r.l. – Ing. Davide Rogai, Ph.D. – Software >> fast on demand software.
1 w w w. g a t 4. c o m WI GAT WebIngelligence rappresenta una piattaforma funzionale e tecnologica per la creazione e gestione di un datawarehouse che.
© 2004 CiBiSoft.com – Carlo Barazzetta Delphi Day 2004 Piacenza 9 giugno 2004 InstantObjects Un Object Persistence Framework Open Source per Delphi 5,6,7.
1 Titolo Presentazione / Data / Confidenziale / Elaborazione di... Data Access Layer.
Introduzione alla programmazione web
14/06/2008 – Matteo Baglini Mail: Blog:
IMPLEMENTAZIONE TECNOLOGIE:HIBERNATE & JAVA RMI.
FASTVID RENTALS: CONCLUSIONI I PUNTI DI FORZA DEL PROGETTO, GLI SVILUPPI FUTURI 1.
Design Goals Definiamo le fondamenta dello sviluppo del sistema.
© 2005 Ethea Le novità di InstantObjects 2.0 Per chi già conosce InstantObjects A cura di Nando Dessena
Corso di Visual Basic 6.0 OBBIETTIVI
Progettazione concettuale di SI basati su Web
ITCG “V. De Franchis” - PON FSE Modulo G/1 l’informatica”
1 Progettazione Architetturale. 2 Obiettivo: stabilire la struttura globale di un sistema software Descriveremo diversi tipi di modello di architettura,
I DATABASE.
EDIFACT Framework Architecture Acceleratore di soluzioni basate su EDIFACT
N4N Platform Architecture PA Inside outlook.
I DBMS BASI DI DATI (DATABASE) Insieme organizzato di dati utilizzati
Nemesi Creazione e pubblicazione di una rivista online tramite l’utilizzo di Java Message Service.
Analisi dettagliata e design
Real World data access layers DataSet vs. Custom entities Pierre Greborio Software Architect – PEWay SrL Microsoft MVP – Solutions Architect.
TW Asp - Active Server Pages Nicola Gessa. TW Nicola Gessa Introduzione n Con l’acronimo ASP (Active Server Pages) si identifica NON un linguaggio di.
Relazione su Access Database
Joomlahost.it1 Presentato da Fustini Alessandro Myslq DBA e Developer certified Joomlahost.it.
PROGETTAZIONE DI BASE DI DATI Metodologie e modelli.
Tecnologie lato Server: i Server Web © 2005 Stefano Clemente I lucidi sono in parte realizzati con materiale tratto dal libro di testo adottato tradotto.
Sviluppo ed implementazione di un software per il car pooling
ICT e Sistemi informativi Aziendali Materiale di supporto alla didattica.
Architetture software
PROGETTO GIS Autocad Map 3D 2013 Tipi di dati gestibili e connessione ai dati Lezione 2 Università degli Studi di Napoli Federico II DIPARTIMENTO DI ARCHITETTURA.
Modulo 5 – Database ACCESS LICEO SCIENTIFICO “ B. RESCIGNO COMPUTER SCUOLA PIANO INTEGRATO 2008/09 ESPERTO prof.ssa Rita Montella.
I DONEITÀ DI C ONOSCENZE E C OMPETENZE I NFORMATICHE ( A – D ) Un database è un insieme di record (registrazioni) e di file (archivi) organizzati per uno.
Il sito WEB CMS Italia oggi: domani: ? NOhttp://cms.infn.it M. Biasini, M. Diemoz, P.
Delphi Day 2004 Piacenza 9 giugno 2004 InstantObjects
Transcript della presentazione:

© 2005 Ethea Introduzione a InstantObjects Per chi conosce altri OPF Per chi non conosce altri OPF A cura di Nando Dessena

© 2005 Ethea Sommario 1: Mappatura object/relational e OPF 2: InstantObjects come OPF 3: Usare InstantObjects 4: Partecipare allo sviluppo 5: InstantObjects Q&A

© 2005 Ethea 1: Mappatura object/relational e OPF (1) Per ridurre le distanze tra il modello OO e il modello relazionale Per memorizzare oggetti in strutture relazionali (tabelle/record) Per sviluppare applicazioni OO senza database ad oggetti Un simile meccanismo di mappatura è detto OPF (Object Persistence Framework)

© 2005 Ethea 1: Mappatura object/relational e OPF (2) Cosa è un OPF Un layer software che consente la persistenza degli oggetti del modello su vari mezzi di salvataggio (database, file di testo, file XML...). Che scopo ha un OPF Disaccoppia le classi del modello dal modo in cui verranno salvate le istanze, permettendo di variare quest'ultimo senza toccare le prime.

© 2005 Ethea 1: Mappatura object/relational e OPF (3) OPF: Vantaggi... Indipendenza dal motore e dalla struttura del DB Possibilità di sfruttare la metodologia OO Significativa riduzione delle ridondanze nel codice...e svantaggi Curva di apprendimento più ripida e necessità di maggiori skill nei programmatori Minor sfruttamento delle caratteristiche dei server Programmazione lato server, locking, transazioni... Prestazioni in taluni casi inferiori

© 2005 Ethea 1: Mappatura object/relational e OPF (4) Creare un OPF personalizzato Concettualmente non è difficile OPF general-purpose per Delphi Prima Bold (BoldSoft), poi ECO (Borland) Più di un OPF; classe Enterprise; disponibile solo in.NET InstantObjects Open source; curva d'apprendimento morbida TechInsite OPF (tiOPF) Open source; curva d'apprendimento ripida; progetto molto attivo Altri (Obiwan, DePO) Open source, mai decollati

© 2005 Ethea 2: InstantObjects come OPF (1) I pregi principali di InstantObjects... Molto facile e molto RAD Buona integrazione nell'IDE di Delphi Molto flessibile a livello di programmazione BOM Supporto per i controlli data-aware Tramite TInstantSelector e TInstantExposer Una solida base di utenti/sviluppatori...compresi noi di Ethea!

© 2005 Ethea 2: InstantObjects come OPF (2)...E i difetti attuali: Quelli comuni a molti progetti open source Documentazione talvolta incompleta Un pizzico di organizzazione in più non guasterebbe Può porre limitazioni sulla struttura del database Struttura delle chiavi, riferimenti in campi Memo Problemi risolti o attenuati nella versione 2 e successive. Prestazioni non sempre all'altezza Ma migliorate nella versione 2 grazie a nuovi broker e nuove ottimizzazioni

© 2005 Ethea 3: Usare InstantObjects (1) Un esempio con InstantObjects Intro Definire il modello Il Model Explorer Attributi semplici, riferimenti e container Generare il codice Uno sguardo al codice generato Il file MDR Modificando il codice il modello è aggiornato Introdurre semplici business rules

© 2005 Ethea 3: Usare InstantObjects (2) Creare il database Panoramica sui broker Uno sguardo alla struttura Una semplice interfaccia utente Lo strato di presentazione data-aware Esempi di tecniche comuni Creare o modificare un oggetto Fare una copia di un oggetto Ricerche e filtri tramite i selector

© 2005 Ethea 3: Usare InstantObjects (3) Caratteristiche avanzate Definire e applicare regole personalizzate Property setter, BeforeStore Gli attributi BeforeCreateAttributes Input/Output in XML InstantReadObject, InstantWriteObject TInstantXMLProducer, TInstantXMLProcessor La unit InstantUtils

© 2005 Ethea 3: Usare InstantObjects (4): Il Persistence Layer TInstantObject Classe base per tutti gli oggetti Tip: crearne sempre una propria TInstantAttribute Base per tutti gli attributi Oggetti di classi derivate da TInstantAttribute, ed esposti come proprietà da TInstantObject TInstantQuery Accesso ai dati tramite IQL TInstantConnector e i Broker Un broker isola le specificità di un back-end e/o di una libreria di accesso ai dati

© 2005 Ethea 3: Usare InstantObjects (5): Il Presentation Layer TInstantExposer Un dataset con i campi mappati sugli attributi di un oggetto ( ObjectClassName e FieldOptions ) Può mostrare un solo record/oggetto ( amObject ) o un elenco di oggetti ( amContent ) Per usare i componenti data-aware Supporta lettura e scrittura Permette il filtraggio lato client (a valle) TInstantSelector Un InstantExposer con una TInstantQuery interna Per leggere dal DB elenchi di oggetti I DataSetField per le strutture master/detail

© 2005 Ethea 3: Usare InstantObjects (6) In sintesi... Un OPF come IO è indispensabile: Per creare applicazioni DB OO senza DB OO Per supportare database di vari tipi nella stessa applicazione È utile: Per tutte le applicazioni database È rischioso: Per applicazioni multi-utente ad elevato tasso di concorrenza Usare un OPF richiede maggior preparazione Anche se IO è tra i più facili

© 2005 Ethea 4: Sviluppo di InstantObjects L'organizzazione del progetto e il ruolo di Ethea e Delphi&Dintorni Le risorse a disposizione del progetto I newsgroup su D&D Roadmap Rilascio versione 2.0 Ristrutturazione e miglioramento documentazione Sia per utenti che per sviluppatori Reclutamento e stabilizzazione del team di sviluppo Lavoro sulle nuove funzionalità Come partecipare allo sviluppo di InstantObjects

© 2005 Ethea 5: InstantObjects Q&A news://news.delphiedintorni.it Domande?