Caché Foundations Training

Classroom Information

4 days course. Classroom opens at 9 am and runs from 9.30am - 5.30pm.
Class size is limited to 10 students in order to provide an optimal learning environment which includes time for personal instruction.
Courses are held in our training facility in the Medialaan 32/1 in 1800 Vilvoorde, Belgium.

Next planned dates: August 16-19, 2011

For more information on dates and costs, send us an email.
You can also directly register.
Total cost price per person is 1400€.

Overview

The Caché Foundations course and labs teach programmers how to use the tools and techniques within the Caché development environment to build high-performance transactional applications. The course focuses on server-side programming, and the various labs focus on using advanced features as well as other languages that interact with Caché. Students master the important features of Caché by building a complete object-oriented application.

Prerequisites

Prerequisites Recommendation
Programming experience Absolutely essential
SQL Useful
Object-oriented design and programming Useful

Agenda

Modules 1-7: Introduction.
Modules 8-12: Properties and SQL.
Modules 13-14: Methods.
Modules 15-19: Applied Programming.

Post-Foundations Recommended Education

Module Descriptions

Module 1: Overview

Caché
Partners
Benefits
Platforms
Features
History

Module 2: Introduction to Classes

Classes
Methods
ObjectScript: First commands
Namespaces
Databases
Packages
Persistent classes
Properties
Instance methods
Objects
Tables
Data population
SQL: Class queries
Class documentation
Errors

Module 3: Development Setup

Development sandbox
Memory setup
Namespace and database setup
Resource and role setup
User setup
ODBC setup
Remote System Access setup
Developer’s Corner

Module 4: Architecture

Namespaces and databases
Globals and routines
System databases
Data integrity
Naming conventions

Module 5: Classes

OO/SQL Correspondence
Classes revisited
ObjectScript: Patterns, Dates, Times
Class compilation
Package mapping

Module 6: Properties

Properties
Object reference (OREF)
Reference properties
SQL: Embedded SQL

Module 7: Unit Testing

Unit testing
Benefits
Framework
Macros

Module 8: Simple Collections

Collections
List collections
Array collections
Object collections
Data population
ObjectScript: Delimited Strings, Lists, Random numbers

Module 9: Relationships

Relationships
Swizzling related objects
SQL: Implicit joins
Many-to-many relationships
Performance options

Module 10: Streams and Files

Streams
Files

Module 11: Queries

Sets of results
Collation
Cursor-based embedded SQL
Dynamic SQL
Command line shell
Views

Module 12: Indexes and Tuning

Indexes
Indexing options
Collation
Index types
ObjectScript: Bit Strings
Index methods
IDKEY index
Query performance tuning

Module 13: Methods

Inherited methods
Scripting languages
Signature
Arguments
ObjectScript: $data/$get functions
Private methods
Class/Instance methods
Macros
Pair programming
ProcedureBlock methods
Code mode
Special method syntax
Accessor methods

Module 14: Debugging

Debugging with Studio
Debugging with ZBreak

Module 15: Inheritance

Object-oriented programming
Encapsulation
Inheritance
Polymorphism
Abstraction
Multiple inheritance

Module 16: Objects

Object oriented design
Registered objects
Persistent and Serial objects
Cloning objects
Object concurrency
Object storage

Module 17: Common Business Logic

Computed properties
OOP callback methods
SQL: triggers
SQL: stored procedures
Transaction processing
SQL concurrency
Bulk operations
Non-registered classes

Module 18: Polymorphism

Persistent objects
Serial objects

Module 19: Datatype Classes

Datatype classes
Validation
Conversion
Custom datatype classes
Class attributes