SlideShare a Scribd company logo
SQLite in Adobe AIR
Peter Elst | May 23th 2008 - 2M08
Why SQLite in Adobe AIR?
Why SQLite in Adobe AIR?
Why Koen?
Why Koen?
Why SQLite in Adobe AIR?
Why SQLite in Adobe AIR?

Embedded SQL Database Engine
Why SQLite in Adobe AIR?

Embedded SQL Database Engine
Implements most of SQL92
Why SQLite in Adobe AIR?

Embedded SQL Database Engine
Implements most of SQL92
Light-weight, cross-platform, open source
Why SQLite in Adobe AIR?

Embedded SQL Database Engine
Implements most of SQL92
Light-weight, cross-platform, open source
No setup, configuration or server required
Why SQLite in Adobe AIR?

Embedded SQL Database Engine
Implements most of SQL92
Light-weight, cross-platform, open source
No setup, configuration or server required
Each database is contained within a single file
How do you use it?
How do you use it?

1.Create a File reference
How do you use it?

1.Create a File reference
2.Create an instance of flash.data.SQLConnection and
  flash.data.SQLStatement
How do you use it?

1.Create a File reference
2.Create an instance of flash.data.SQLConnection and
  flash.data.SQLStatement
3.Open the database connection
How do you use it?

1.Create a File reference
2.Create an instance of flash.data.SQLConnection and
  flash.data.SQLStatement
3.Open the database connection
4.Specify the connection and SQL query to run
How do you use it?

1.Create a File reference
2.Create an instance of flash.data.SQLConnection and
  flash.data.SQLStatement
3.Open the database connection
4.Specify the connection and SQL query to run
5.Run SQLStatement.execute()
How do you use it?
How do you use it?
import flash.filesystem.File;
import flash.data.*;

var dbFile:File = File.applicationStorageDirectory. ↵
resolvePath(quot;contacts.dbquot;);
How do you use it?
import flash.filesystem.File;
import flash.data.*;

var dbFile:File = File.applicationStorageDirectory. ↵
resolvePath(quot;contacts.dbquot;);

var sqlConn:SQLConnection = new SQLConnection();
var sqlStatement:SQLStatement = new SQLStatement();
How do you use it?
import flash.filesystem.File;
import flash.data.*;

var dbFile:File = File.applicationStorageDirectory. ↵
resolvePath(quot;contacts.dbquot;);

var sqlConn:SQLConnection = new SQLConnection();
var sqlStatement:SQLStatement = new SQLStatement();

sqlConn.open(dbFile);
How do you use it?
import flash.filesystem.File;
import flash.data.*;

var dbFile:File = File.applicationStorageDirectory. ↵
resolvePath(quot;contacts.dbquot;);

var sqlConn:SQLConnection = new SQLConnection();
var sqlStatement:SQLStatement = new SQLStatement();

sqlConn.open(dbFile);

sqlStatement.sqlConnection = sqlConn;
sqlStatement.text = quot;SELECT * FROM contactsquot;;
How do you use it?
import flash.filesystem.File;
import flash.data.*;

var dbFile:File = File.applicationStorageDirectory. ↵
resolvePath(quot;contacts.dbquot;);

var sqlConn:SQLConnection = new SQLConnection();
var sqlStatement:SQLStatement = new SQLStatement();

sqlConn.open(dbFile);

sqlStatement.sqlConnection = sqlConn;
sqlStatement.text = quot;SELECT * FROM contactsquot;;
sqlStatement.execute();

var result:Array = sqlStatement.getResult().data;
Synchronous versus Async
Synchronous versus Async

Synchronous - blocks application until result is available

var sqlConn:SQLConnection = new SQLConnection();
sqlConn.open(dbFile);

var result:SQLResult = sqlConn.getResult().result;
Synchronous versus Async

Synchronous - blocks application until result is available

var sqlConn:SQLConnection = new SQLConnection();
sqlConn.open(dbFile);

var result:SQLResult = sqlConn.getResult().result;

Asynchronous - uses events and event listeners

var sqlConn:SQLConnection = new SQLConnection();
sqlConn.addEventListener(SQLResultEvent.RESULT, onSQLResult);
sqlConn.addEventListener(SQLResultEvent.ERROR,onSQLError);


sqlConn.openAsync(dbFile);
flash.data.SQLConnection
flash.data.SQLConnection

Connects to the database file
flash.data.SQLConnection

Connects to the database file
Provides events for asynchronous use
flash.data.SQLConnection

Connects to the database file
Provides events for asynchronous use
Schema access
flash.data.SQLStatement
flash.data.SQLStatement

Executes a SQL query on the specified database
connection
flash.data.SQLStatement

Executes a SQL query on the specified database
connection
Provides events for asynchronous use
flash.data.SQLStatement

Executes a SQL query on the specified database
connection
Provides events for asynchronous use
Supports result paging
Storage types
Storage types

NULL - NULL value (null)
Storage types

NULL - NULL value (null)
INTEGER - signed integer (int)
Storage types

NULL - NULL value (null)
INTEGER - signed integer (int)
REAL - floating point (Number)
Storage types

NULL - NULL value (null)
INTEGER - signed integer (int)
REAL - floating point (Number)
TEXT - UTF16 text string (String)
Storage types

NULL - NULL value (null)
INTEGER - signed integer (int)
REAL - floating point (Number)
TEXT - UTF16 text string (String)
BLOB - blob of data
SQLStatement Parameters
SQLStatement Parameters

The parameters feature protects your SQL statements
from SQL injection

var sqlStatement:SQLStatement = new SQLStatement();
sqlStatement.sqlConnection = sqlConn;
sqlStatement.text = quot;SELECT * FROM contacts WHERE id = @IDquot;;
sqlStatement.parameters[quot;@IDquot;] = someVariable;
sqlStatement.execute();
SQLStatement Parameters

The parameters feature protects your SQL statements
from SQL injection

var sqlStatement:SQLStatement = new SQLStatement();
sqlStatement.sqlConnection = sqlConn;
sqlStatement.text = quot;SELECT * FROM contacts WHERE id = @IDquot;;
sqlStatement.parameters[quot;@IDquot;] = someVariable;
sqlStatement.execute();

You can use the @ or : character to denote a
parameter to be replaced

sqlStatement.parameters[quot;:NAMEquot;] = someVariable;
SQLStatement Parameters
SQLStatement Parameters

Using the ? character you can have unnamed
parameters and an index based array

var sqlStatement:SQLStatement = new SQLStatement();
sqlStatement.sqlConnection = sqlConn;
sqlStatement.text = quot;SELECT * FROM contacts WHERE name = ? ↵
AND lastname = ?quot;;
sqlStatement.parameters[0] = quot;Peterquot;;
sqlStatement.parameters[1] = quot;Elstquot;;
sqlStatement.execute();
Result Paging
Result Paging

Paging allows you to limit the amount of rows you get
returned when doing a select operation

var sqlStatement:SQLStatement = new SQLStatement();
sqlStatement.sqlConnection = sqlConn;
sqlStatement.text = quot;SELECT * FROM contactsquot;;
sqlStatement.execute(10);
Result Paging

Paging allows you to limit the amount of rows you get
returned when doing a select operation

var sqlStatement:SQLStatement = new SQLStatement();
sqlStatement.sqlConnection = sqlConn;
sqlStatement.text = quot;SELECT * FROM contactsquot;;
sqlStatement.execute(10);

You can get the next batch of rows returned by calling
the next method on the SQLStatement instance

sqlStatement.next();
flash.data.SQLResult
flash.data.SQLResult

SQLResult.data - array of objects for each row
of the result
flash.data.SQLResult

SQLResult.data - array of objects for each row
of the result
SQLResult.complete - returns a boolean indicating
whether or not the full result was shown
flash.data.SQLResult

SQLResult.data - array of objects for each row
of the result
SQLResult.complete - returns a boolean indicating
whether or not the full result was shown
SQLResult.lastInsertRowID - return id for the last
row that was inserted
flash.data.SQLResult

SQLResult.data - array of objects for each row
of the result
SQLResult.complete - returns a boolean indicating
whether or not the full result was shown
SQLResult.lastInsertRowID - return id for the last
row that was inserted
SQLResult.rowsAffected - number of rows affected
by an insert, update or delete operation
Transactions
Transactions

Transactions allow multiple SQL statements to run
within one write operation to the database
Transactions

Transactions allow multiple SQL statements to run
within one write operation to the database
Much more optimized way of handling large insert
operations, allows rollback of the complete transaction
if an error occurs
Transactions
Transactions
var sqlStatement:SQLStatement = new SQLStatement();
sqlStatement.sqlConnection = sqlConn;
sqlStatement.text = quot;INSERT into contacts VALUES (@NAME, @EMAIL)quot;;
Transactions
var sqlStatement:SQLStatement = new SQLStatement();
sqlStatement.sqlConnection = sqlConn;
sqlStatement.text = quot;INSERT into contacts VALUES (@NAME, @EMAIL)quot;;

sqlConn.begin();
Transactions
var sqlStatement:SQLStatement = new SQLStatement();
sqlStatement.sqlConnection = sqlConn;
sqlStatement.text = quot;INSERT into contacts VALUES (@NAME, @EMAIL)quot;;

sqlConn.begin();

for(var i:uint=0; i<contacts.length; i++) {
  sqlStatement.parameters[quot;@NAMEquot;] = contacts[i].name;
  sqlStatement.parameters[quot;@EMAILquot;] = contacts[i].email;
  sqlStatement.execute();
}
Transactions
var sqlStatement:SQLStatement = new SQLStatement();
sqlStatement.sqlConnection = sqlConn;
sqlStatement.text = quot;INSERT into contacts VALUES (@NAME, @EMAIL)quot;;

sqlConn.begin();

for(var i:uint=0; i<contacts.length; i++) {
  sqlStatement.parameters[quot;@NAMEquot;] = contacts[i].name;
  sqlStatement.parameters[quot;@EMAILquot;] = contacts[i].email;
  sqlStatement.execute();
}

sqlConn.commit();
Database schema
Database schema

Allows you to introspect tables, views, columns,
indices, triggers
var sqlConn:SQLConnection = new SQLConnection();
sqlConn.open(dbFile);

sqlConn.loadSchema();
var result:SQLSchemaResult = sqlConn.getSchemaResult();

var table:SQLTableSchema = result.tables[0];
var column:SQLColumnSchema = table.columns[0];

trace(column.name);
// returns name of the first column in the first table
SQLite wrapper classes
SQLite wrapper classes

You can use ActionScript 3.0 classes as MXML tags
SQLite wrapper classes

You can use ActionScript 3.0 classes as MXML tags
SQLite and Query classes

<sql:SQLite id=quot;db_connquot; file=quot;contacts.dbquot;
open=quot;contacts_query.execute()quot; />

<sql:Query id=quot;contacts_queryquot; connection=quot;{db_conn}quot;
sql=quot;SELECT * FROM contactsquot; />

<mx:DataGrid id=quot;contacts_dgquot;
dataProvider=quot;{contacts_query.data}quot; />
SQLite synchronisation
SQLite synchronisation

Synchronizing an online and offline SQLite database
SQLite synchronisation

Synchronizing an online and offline SQLite database
Different strategies
SQLite synchronisation

Synchronizing an online and offline SQLite database
Different strategies
  Online database overwrites offline
SQLite synchronisation

Synchronizing an online and offline SQLite database
Different strategies
  Online database overwrites offline
  Check timestamp on each row, new overwrites old
Demo time
Demo time

 Contact Manager
Demo time

 Contact Manager
 SQLite Editor
Demo time

 Contact Manager
 SQLite Editor
 YouTube Database
Demo time

 Contact Manager
 SQLite Editor
 YouTube Database
 HTML/JavaScript + SQLite
SQLite on Mac OSX
Resources
Resources

www.adobe.com/devnet/air/
Resources

www.adobe.com/devnet/air/
onair.adobe.com
Resources

www.adobe.com/devnet/air/
onair.adobe.com
www.30onair.com
Resources

www.adobe.com/devnet/air/
onair.adobe.com
www.30onair.com
www.peterelst.com
Resources

www.adobe.com/devnet/air/
onair.adobe.com
www.30onair.com
www.peterelst.com
  Introduction to SQLite in Adobe AIR
Resources

www.adobe.com/devnet/air/
onair.adobe.com
www.30onair.com
www.peterelst.com
  Introduction to SQLite in Adobe AIR
  AIR Badge WordPress plugin
Contact me
Contact me

Questions, comments, feedback?
Contact me

Questions, comments, feedback?

Email: info@peterelst.com
Blog: www.peterelst.com
Twitter: www.twitter.com/peterelst
LinkedIn: www.linkedin.com/in/peterelst
Contact me

Questions, comments, feedback?

Email: info@peterelst.com
Blog: www.peterelst.com
Twitter: www.twitter.com/peterelst
LinkedIn: www.linkedin.com/in/peterelst


Thanks and enjoy the rest of the day!

More Related Content

What's hot

MYSQL - PHP Database Connectivity
MYSQL - PHP Database ConnectivityMYSQL - PHP Database Connectivity
MYSQL - PHP Database Connectivity
V.V.Vanniaperumal College for Women
 
PHP with MySQL
PHP with MySQLPHP with MySQL
PHP with MySQL
wahidullah mudaser
 
Database Connectivity in PHP
Database Connectivity in PHPDatabase Connectivity in PHP
Database Connectivity in PHP
Taha Malampatti
 
Introduction to SQLite in Adobe AIR 1.5
Introduction to SQLite in Adobe AIR 1.5Introduction to SQLite in Adobe AIR 1.5
Introduction to SQLite in Adobe AIR 1.5Peter Elst
 
Capturing, Analyzing, and Optimizing your SQL
Capturing, Analyzing, and Optimizing your SQLCapturing, Analyzing, and Optimizing your SQL
Capturing, Analyzing, and Optimizing your SQLPadraig O'Sullivan
 
This is a basic JAVA pgm that contains all of the major compoents of DB2
This is a basic JAVA pgm that contains all of the major compoents of DB2This is a basic JAVA pgm that contains all of the major compoents of DB2
This is a basic JAVA pgm that contains all of the major compoents of DB2Sheila A. Bell, MS, PMP
 
MySQL Replication Update - DEbconf 2020 presentation
MySQL Replication Update - DEbconf 2020 presentationMySQL Replication Update - DEbconf 2020 presentation
MySQL Replication Update - DEbconf 2020 presentation
Dave Stokes
 
MySQL 8.0 New Features -- September 27th presentation for Open Source Summit
MySQL 8.0 New Features -- September 27th presentation for Open Source SummitMySQL 8.0 New Features -- September 27th presentation for Open Source Summit
MySQL 8.0 New Features -- September 27th presentation for Open Source Summit
Dave Stokes
 
MySql:Basics
MySql:BasicsMySql:Basics
MySql:Basics
DataminingTools Inc
 
MySQL 8.0 Operational Changes
MySQL 8.0 Operational ChangesMySQL 8.0 Operational Changes
MySQL 8.0 Operational Changes
Dave Stokes
 
Accessing data with android cursors
Accessing data with android cursorsAccessing data with android cursors
Accessing data with android cursors
info_zybotech
 
OTN TOUR 2016 - DBA Commands and Concepts That Every Developer Should Know
OTN TOUR 2016 - DBA Commands and Concepts That Every Developer Should KnowOTN TOUR 2016 - DBA Commands and Concepts That Every Developer Should Know
OTN TOUR 2016 - DBA Commands and Concepts That Every Developer Should Know
Alex Zaballa
 
Sequelize
SequelizeSequelize
Sequelize
Tarek Raihan
 
Schemadoc
SchemadocSchemadoc
cPanel now supports MySQL 8.0 - My Top Seven Features
cPanel now supports MySQL 8.0 - My Top Seven FeaturescPanel now supports MySQL 8.0 - My Top Seven Features
cPanel now supports MySQL 8.0 - My Top Seven Features
Dave Stokes
 

What's hot (19)

MYSQL - PHP Database Connectivity
MYSQL - PHP Database ConnectivityMYSQL - PHP Database Connectivity
MYSQL - PHP Database Connectivity
 
PHP with MySQL
PHP with MySQLPHP with MySQL
PHP with MySQL
 
Mysql
MysqlMysql
Mysql
 
Database Connectivity in PHP
Database Connectivity in PHPDatabase Connectivity in PHP
Database Connectivity in PHP
 
Introduction to SQLite in Adobe AIR 1.5
Introduction to SQLite in Adobe AIR 1.5Introduction to SQLite in Adobe AIR 1.5
Introduction to SQLite in Adobe AIR 1.5
 
Introduction to php database connectivity
Introduction to php  database connectivityIntroduction to php  database connectivity
Introduction to php database connectivity
 
Capturing, Analyzing, and Optimizing your SQL
Capturing, Analyzing, and Optimizing your SQLCapturing, Analyzing, and Optimizing your SQL
Capturing, Analyzing, and Optimizing your SQL
 
This is a basic JAVA pgm that contains all of the major compoents of DB2
This is a basic JAVA pgm that contains all of the major compoents of DB2This is a basic JAVA pgm that contains all of the major compoents of DB2
This is a basic JAVA pgm that contains all of the major compoents of DB2
 
MySQL Replication Update - DEbconf 2020 presentation
MySQL Replication Update - DEbconf 2020 presentationMySQL Replication Update - DEbconf 2020 presentation
MySQL Replication Update - DEbconf 2020 presentation
 
lab56_db
lab56_dblab56_db
lab56_db
 
MySQL 8.0 New Features -- September 27th presentation for Open Source Summit
MySQL 8.0 New Features -- September 27th presentation for Open Source SummitMySQL 8.0 New Features -- September 27th presentation for Open Source Summit
MySQL 8.0 New Features -- September 27th presentation for Open Source Summit
 
Msql
Msql Msql
Msql
 
MySql:Basics
MySql:BasicsMySql:Basics
MySql:Basics
 
MySQL 8.0 Operational Changes
MySQL 8.0 Operational ChangesMySQL 8.0 Operational Changes
MySQL 8.0 Operational Changes
 
Accessing data with android cursors
Accessing data with android cursorsAccessing data with android cursors
Accessing data with android cursors
 
OTN TOUR 2016 - DBA Commands and Concepts That Every Developer Should Know
OTN TOUR 2016 - DBA Commands and Concepts That Every Developer Should KnowOTN TOUR 2016 - DBA Commands and Concepts That Every Developer Should Know
OTN TOUR 2016 - DBA Commands and Concepts That Every Developer Should Know
 
Sequelize
SequelizeSequelize
Sequelize
 
Schemadoc
SchemadocSchemadoc
Schemadoc
 
cPanel now supports MySQL 8.0 - My Top Seven Features
cPanel now supports MySQL 8.0 - My Top Seven FeaturescPanel now supports MySQL 8.0 - My Top Seven Features
cPanel now supports MySQL 8.0 - My Top Seven Features
 

Similar to SQLite in Adobe AIR

Introduction to SQLite in Adobe AIR
Introduction to SQLite in Adobe AIRIntroduction to SQLite in Adobe AIR
Introduction to SQLite in Adobe AIR
Peter Elst
 
JDBC for CSQL Database
JDBC for CSQL DatabaseJDBC for CSQL Database
JDBC for CSQL Database
jitendral
 
Data Access with JDBC
Data Access with JDBCData Access with JDBC
Data Access with JDBC
BG Java EE Course
 
Introduction to SQLite in Adobe AIR
Introduction to SQLite in Adobe AIRIntroduction to SQLite in Adobe AIR
Introduction to SQLite in Adobe AIR
Peter Elst
 
Simple ado program by visual studio
Simple ado program by visual studioSimple ado program by visual studio
Simple ado program by visual studio
Aravindharamanan S
 
Simple ado program by visual studio
Simple ado program by visual studioSimple ado program by visual studio
Simple ado program by visual studio
Aravindharamanan S
 
Sqlapi0.1
Sqlapi0.1Sqlapi0.1
Sqlapi0.1
jitendral
 
Web Technologies - forms and actions
Web Technologies -  forms and actionsWeb Technologies -  forms and actions
Web Technologies - forms and actionsAren Zomorodian
 
Get database properties using power shell in sql server 2008 techrepublic
Get database properties using power shell in sql server 2008   techrepublicGet database properties using power shell in sql server 2008   techrepublic
Get database properties using power shell in sql server 2008 techrepublicKaing Menglieng
 
ADO.NET by ASP.NET Development Company in india
ADO.NET by ASP.NET  Development Company in indiaADO.NET by ASP.NET  Development Company in india
ADO.NET by ASP.NET Development Company in india
iFour Institute - Sustainable Learning
 
Executing Sql Commands
Executing Sql CommandsExecuting Sql Commands
Executing Sql Commandsleminhvuong
 
Executing Sql Commands
Executing Sql CommandsExecuting Sql Commands
Executing Sql Commandsphanleson
 
Java jdbc
Java jdbcJava jdbc
Java jdbc
Arati Gadgil
 
Windows Azure and a little SQL Data Services
Windows Azure and a little SQL Data ServicesWindows Azure and a little SQL Data Services
Windows Azure and a little SQL Data Services
ukdpe
 
Sql Injection and Entity Frameworks
Sql Injection and Entity FrameworksSql Injection and Entity Frameworks
Sql Injection and Entity FrameworksRich Helton
 
Data Access Mobile Devices
Data Access Mobile DevicesData Access Mobile Devices
Data Access Mobile Devicesvenkat987
 

Similar to SQLite in Adobe AIR (20)

Introduction to SQLite in Adobe AIR
Introduction to SQLite in Adobe AIRIntroduction to SQLite in Adobe AIR
Introduction to SQLite in Adobe AIR
 
JDBC for CSQL Database
JDBC for CSQL DatabaseJDBC for CSQL Database
JDBC for CSQL Database
 
Data Access with JDBC
Data Access with JDBCData Access with JDBC
Data Access with JDBC
 
Introduction to SQLite in Adobe AIR
Introduction to SQLite in Adobe AIRIntroduction to SQLite in Adobe AIR
Introduction to SQLite in Adobe AIR
 
Lecture13
Lecture13Lecture13
Lecture13
 
JDBC – Java Database Connectivity
JDBC – Java Database ConnectivityJDBC – Java Database Connectivity
JDBC – Java Database Connectivity
 
Simple ado program by visual studio
Simple ado program by visual studioSimple ado program by visual studio
Simple ado program by visual studio
 
Simple ado program by visual studio
Simple ado program by visual studioSimple ado program by visual studio
Simple ado program by visual studio
 
Sqlapi0.1
Sqlapi0.1Sqlapi0.1
Sqlapi0.1
 
Jdbc
JdbcJdbc
Jdbc
 
Web Technologies - forms and actions
Web Technologies -  forms and actionsWeb Technologies -  forms and actions
Web Technologies - forms and actions
 
Get database properties using power shell in sql server 2008 techrepublic
Get database properties using power shell in sql server 2008   techrepublicGet database properties using power shell in sql server 2008   techrepublic
Get database properties using power shell in sql server 2008 techrepublic
 
ADO.NET by ASP.NET Development Company in india
ADO.NET by ASP.NET  Development Company in indiaADO.NET by ASP.NET  Development Company in india
ADO.NET by ASP.NET Development Company in india
 
Executing Sql Commands
Executing Sql CommandsExecuting Sql Commands
Executing Sql Commands
 
Executing Sql Commands
Executing Sql CommandsExecuting Sql Commands
Executing Sql Commands
 
Java jdbc
Java jdbcJava jdbc
Java jdbc
 
Windows Azure and a little SQL Data Services
Windows Azure and a little SQL Data ServicesWindows Azure and a little SQL Data Services
Windows Azure and a little SQL Data Services
 
Sql Injection and Entity Frameworks
Sql Injection and Entity FrameworksSql Injection and Entity Frameworks
Sql Injection and Entity Frameworks
 
Data Access Mobile Devices
Data Access Mobile DevicesData Access Mobile Devices
Data Access Mobile Devices
 
Lecture17
Lecture17Lecture17
Lecture17
 

More from Peter Elst

P2P on the local network
P2P on the local networkP2P on the local network
P2P on the local network
Peter Elst
 
P2P with Flash Player 10.1
P2P with Flash Player 10.1P2P with Flash Player 10.1
P2P with Flash Player 10.1Peter Elst
 
Big boys and their litl toys
Big boys and their litl toysBig boys and their litl toys
Big boys and their litl toysPeter Elst
 
Yes, you can do that with AIR 2.0
Yes, you can do that with AIR 2.0Yes, you can do that with AIR 2.0
Yes, you can do that with AIR 2.0
Peter Elst
 
FATC - AIR 2.0 workshop
FATC - AIR 2.0 workshopFATC - AIR 2.0 workshop
FATC - AIR 2.0 workshopPeter Elst
 
Developing with Adobe AIR
Developing with Adobe AIRDeveloping with Adobe AIR
Developing with Adobe AIR
Peter Elst
 
Introduction to AS3Signals
Introduction to AS3SignalsIntroduction to AS3Signals
Introduction to AS3SignalsPeter Elst
 
The Secret Life of a Flash Freelancer
The Secret Life of a Flash FreelancerThe Secret Life of a Flash Freelancer
The Secret Life of a Flash FreelancerPeter Elst
 
Getting Creative with Adobe AIR
Getting Creative with Adobe AIRGetting Creative with Adobe AIR
Getting Creative with Adobe AIRPeter Elst
 
Creative Programming in ActionScript 3.0
Creative Programming in ActionScript 3.0Creative Programming in ActionScript 3.0
Creative Programming in ActionScript 3.0Peter Elst
 
RIA meets Desktop
RIA meets DesktopRIA meets Desktop
RIA meets DesktopPeter Elst
 
Object-Oriented ActionScript 3.0
Object-Oriented ActionScript 3.0Object-Oriented ActionScript 3.0
Object-Oriented ActionScript 3.0Peter Elst
 
The Evolution of the Flash Platform
The Evolution of the Flash PlatformThe Evolution of the Flash Platform
The Evolution of the Flash PlatformPeter Elst
 
RIA meets Desktop
RIA meets DesktopRIA meets Desktop
RIA meets Desktop
Peter Elst
 
SkillsMatter - In-the-Brain session - What's new in ActionScript 3.0
SkillsMatter - In-the-Brain session - What's new in ActionScript 3.0SkillsMatter - In-the-Brain session - What's new in ActionScript 3.0
SkillsMatter - In-the-Brain session - What's new in ActionScript 3.0
Peter Elst
 

More from Peter Elst (15)

P2P on the local network
P2P on the local networkP2P on the local network
P2P on the local network
 
P2P with Flash Player 10.1
P2P with Flash Player 10.1P2P with Flash Player 10.1
P2P with Flash Player 10.1
 
Big boys and their litl toys
Big boys and their litl toysBig boys and their litl toys
Big boys and their litl toys
 
Yes, you can do that with AIR 2.0
Yes, you can do that with AIR 2.0Yes, you can do that with AIR 2.0
Yes, you can do that with AIR 2.0
 
FATC - AIR 2.0 workshop
FATC - AIR 2.0 workshopFATC - AIR 2.0 workshop
FATC - AIR 2.0 workshop
 
Developing with Adobe AIR
Developing with Adobe AIRDeveloping with Adobe AIR
Developing with Adobe AIR
 
Introduction to AS3Signals
Introduction to AS3SignalsIntroduction to AS3Signals
Introduction to AS3Signals
 
The Secret Life of a Flash Freelancer
The Secret Life of a Flash FreelancerThe Secret Life of a Flash Freelancer
The Secret Life of a Flash Freelancer
 
Getting Creative with Adobe AIR
Getting Creative with Adobe AIRGetting Creative with Adobe AIR
Getting Creative with Adobe AIR
 
Creative Programming in ActionScript 3.0
Creative Programming in ActionScript 3.0Creative Programming in ActionScript 3.0
Creative Programming in ActionScript 3.0
 
RIA meets Desktop
RIA meets DesktopRIA meets Desktop
RIA meets Desktop
 
Object-Oriented ActionScript 3.0
Object-Oriented ActionScript 3.0Object-Oriented ActionScript 3.0
Object-Oriented ActionScript 3.0
 
The Evolution of the Flash Platform
The Evolution of the Flash PlatformThe Evolution of the Flash Platform
The Evolution of the Flash Platform
 
RIA meets Desktop
RIA meets DesktopRIA meets Desktop
RIA meets Desktop
 
SkillsMatter - In-the-Brain session - What's new in ActionScript 3.0
SkillsMatter - In-the-Brain session - What's new in ActionScript 3.0SkillsMatter - In-the-Brain session - What's new in ActionScript 3.0
SkillsMatter - In-the-Brain session - What's new in ActionScript 3.0
 

Recently uploaded

Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Jeffrey Haguewood
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
DianaGray10
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Thierry Lestable
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
Elena Simperl
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
Fwdays
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
Product School
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 

Recently uploaded (20)

Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 

SQLite in Adobe AIR