Introduction to ECO - PowerPoint PPT Presentation

1 / 29
About This Presentation
Title:

Introduction to ECO

Description:

Other Resources. ECO Overview. Database-Driven ... Executes OCL and returns one or more values ... ECO can automatically generate a form based on the model ... – PowerPoint PPT presentation

Number of Views:35
Avg rating:3.0/5.0
Slides: 30
Provided by: malcolm55
Category:

less

Transcript and Presenter's Notes

Title: Introduction to ECO


1
Introduction to ECO
  • Malcolm Groves
  • mgroves_at_borland.com

2
Agenda
  • Overview
  • ECOSpace
  • Model
  • User Interface
  • ECO II
  • Other Resources

3
ECO Overview
4
Database-Driven Development
5
Database-Driven Development
  • Advantages
  • Familiar
  • Low barrier to entry
  • Disadvantages
  • Typically, low cohesion of business logic
  • Maintenance

6
Model-Driven Development
7
Model-Driven Development
  • Advantages
  • Maintenance
  • Documentation
  • Higher Cohesion of Business Logic
  • Disadvantages
  • Higher barrier to entry
  • Lots of plumbing code to be written
  • Objects lt-gt DB
  • UI lt-gt Objects
  • Collections

8
Enterprise Core Objects
  • ECO is still Model-Driven Development
  • More automation
  • Database Mapping
  • UI Mapping
  • Associations
  • OCL in your model
  • Derived Attributes, Associations
  • Constraints
  • Services
  • Undu/Redo, AutoForms, etc

9
ECO
  • Advantages
  • Maintenance
  • Productivity
  • Nice, clean separation of concerns
  • Disadvantages
  • Requires a little bit of a mindset change
  • Addictive ?

10
ECOSpace
11
EcoSpace
  • Runtime container for your objects
  • Manages
  • Object Lifecycle (ie. it creates, and destroys
    your objects)
  • Persistence
  • Executes OCL
  • Object Transactions
  • Etc

12
ECOSpace
Fred Person
Mary Person
ABC123 Invoice
Mary Person
ABC123 Invoice
ABC123 Invoice
Depends on the Datastore chosen
13
Services
  • Persistence
  • Relationships
  • Transactions
  • Subscriptions
  • Caching
  • Querying
  • Undo / Redo
  • Versioning

14
Model Basics
  • Example
  • Classes
  • Attributes
  • Operations
  • Associations
  • Generalization

15
More Advanced Model Features
  • Derived Attributes OCL and Code
  • Derived Associations
  • Association Classes
  • Constraints
  • Regions

16
User Interface
17
Handles
  • ReferenceHandle
  • Connection between your UI Controls and your
    ECOSpace
  • ExpressionHandle
  • Executes OCL and returns one or more values
  • Implements IList so can be used as a DataSource
    for Databinding

18
Handles
  • CurrencyManagerHandle
  • Acts as a cursor into a collection of Objects
  • Example
  • VariableHandle
  • Allows you to create dynamic OCL
  • Example

19
ECO From Sourcecode
  • Creating an Object
  • Getting a Reference To The Currently Selected
    Object
  • Creating Objects Part 2
  • Executing OCL from Code

20
Forms
  • AutoForms
  • ECO can automatically generate a form based on
    the model
  • Great during development, you probably wouldnt
    deploy them ?
  • Custom Forms
  • Custom Auto Forms

21
Extender Components
  • Delphi 8 ECO ships with a number of components to
    remove the need for common coding
  • ECOAutoFormExtender
  • ECOActionExtender
  • ECOListActionExtender
  • ECODragDropExtender
  • Like anything, use them once you know what they
    do for you.

22
Persistence
  • PersistenceMapper component
  • XML
  • BDP
  • SQLServer
  • ECOSpace.UpdateDatabase
  • Transient Objects
  • Example

23
Summary
  • Overview
  • ECOSpace
  • Model
  • User Interface
  • ECO II
  • Other Resources

24
But wait, theres more
  • This was a very brief introduction
  • Should be enough for you to start exploring
  • ECO is very rich, and there is plenty for you to
    get into
  • Constraints, Subscriptions, other Services,
    Optimistic Locking,
  • ECO II is even richer

25
ECO II
  • Ships in Diamondback
  • Everything you learned today is still applicable
  • Adds
  • ASP.NET Support (Web Forms and Web Services)
  • Legacy Database Support
  • Synchronization Server
  • Concurrency
  • Improved Designer

26
Other Resources
  • My Blog
  • http//blogs.borland.com/malcolmgroves
  • ECO Tutorials
  • http//www.borland.com/delphi_net/architect/eco/tu
    torial/
  • Christophe Flourys Technical Whitepaper
  • http//www.borland.com/products/white_papers/del_u
    nleashing_enterprise_models_with_delphi_for_dotnet
    .html

27
Other Resources
  • Newsgroups
  • borland.public.delphi.modeldrivenarchitecture.eco
  • borland.public.csharpbuilder.modeldrivenarchitectu
    re.eco 

28
Other Sessions
  • Tuesday 300pm
  • ECO for ASP.NET John Kaster
  • Wednesday 115pm
  • ECO for ASP.NET John Kaster

29
Thank you!
Write a Comment
User Comments (0)
About PowerShow.com