Top Banner
SINGLE PAGE WEB APPLICATION DEVELOPMENT WITH SiouX AND AppeX By Jerry Kott
21

Single Page Web Application Development with SiouX and AppeX

Aug 19, 2015

Download

Software

Jeremy Jordan
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Single Page Web Application Development with SiouX and AppeX

SINGLE PAGEWEB APPLICATION DEVELOPMENT WITH

SiouX AND AppeXBy Jerry Kott

Page 2: Single Page Web Application Development with SiouX and AppeX
Page 3: Single Page Web Application Development with SiouX and AppeX

SiouX

©2015 Cincom Systems Inc. All Rights Reserved.3

• HTTP(s) server based on Xtreams• Lightweight, highly configurable, streaming,

secure• Integrates easily with Seaside, Web Services,

Servlets

• Multiple responders, multiple port listeners

Page 4: Single Page Web Application Development with SiouX and AppeX

AppeX

©2015 Cincom Systems Inc. All Rights Reserved.4

• Web application framework using SiouX and Xtreams

• Core Javascript library on the client, seamlessly connects to the

server (Smalltalk)

• JS code editor integrated in VW IDE

• Object-Oriented JS with class hierarchy (before ECMAScript

6!)

• What You Write Is What You Get

Page 5: Single Page Web Application Development with SiouX and AppeX

AppeX is NOT...

©2015 Cincom Systems Inc. All Rights Reserved.5

• Smalltalk in the browser (but we have an Amber integration

example)

• A Smalltalk to JS translator (Smalltalk code lives on the server,

JS code loads unchanged into a web client)

• Just a Javascript editor (but having one is great!)

• A multi-page web site development tool (although it’s possible,

and we have code examples for that)

Page 6: Single Page Web Application Development with SiouX and AppeX

New in AppeX (Cincom® VisualWorks® 8.1)

©2015 Cincom Systems Inc. All Rights Reserved.6

• RESTful API demos

• ActiveRecord support (PUT, GET, POST, DELETE)

• UI Scaffolding - JS classes seamlessly build HTML5 elements

on the client from ActiveRecord objects on the server

• Scaffolding GUI tool - builds client and server code from an

existing ActiveRecord database

Page 7: Single Page Web Application Development with SiouX and AppeX

New in AppeX, cont‘d

©2015 Cincom Systems Inc. All Rights Reserved.7

• Added jsonStream: service type. JSON object serialization now

can be in-memory or directly on the socket stream (e.g., large

objects)

• ETag support for client resource caching (less bandwidth)

• CSS Themes

• LinuxPAM - user authentication

Page 8: Single Page Web Application Development with SiouX and AppeX

Let‘s Get Practical!

©2015 Cincom Systems Inc. All Rights Reserved.8

Coming up:

• Loading SiouX code and configuring servers and

responders

• Code samples

• Loading AppeX

• Creating a database backed web application

Page 9: Single Page Web Application Development with SiouX and AppeX

Loading SiouX Parcels

©2015 Cincom Systems Inc. All Rights Reserved.9

• SiouX-Server: basic HTTP server & framework

• SiouX-Http: HTTP protocol on top of Xtreams

• SiouX-Server-Secure: HTTPS support (SSL/TLS)

• SiouX-Tools: GUI tools for managing servers

• SiouX-Examples: examples for study & inspiration

Page 10: Single Page Web Application Development with SiouX and AppeX

Demo: Web Servers Tool

©2015 Cincom Systems Inc. All Rights Reserved.10

Page 11: Single Page Web Application Development with SiouX and AppeX

Creating a Server

©2015 Cincom Systems Inc. All Rights Reserved.11

server := Server id: 'Demo Server'.listener := server listenOn: 9999 for: SiouX.HttpConnection.server start.server addResponder: (responder := Hello new).responder openWebBrowser.Hello browse.

server release.

Page 12: Single Page Web Application Development with SiouX and AppeX

From SiouX to AppeX

©2015 Cincom Systems Inc. All Rights Reserved.12

• SiouX provides the transport and dispatching

mechanism

• Responders are flexible but not very sophisticated

• Need for an application layer with a tight IDE and web

browser integration

• Welcome AppeX. ESUG 2014 presentation

Page 13: Single Page Web Application Development with SiouX and AppeX

Loading AppeX Parcels

©2015 Cincom Systems Inc. All Rights Reserved.13

• AppeX-Core: framework with both server (Smalltalk)

and client (Javascript) classes

• AppeX-Tools: IDE integration, JS parser & editor

• AppeX-Examples-*: aspects like server events,

mobile apps, Seaside integration, etc… Explore!

• AppeX-ServerMonitor: functional equivalent of

SiouX Web Servers management tool.

Page 14: Single Page Web Application Development with SiouX and AppeX

AppeX Parcels, cont‘d

©2015 Cincom Systems Inc. All Rights Reserved.14

• (new) AppeX-ActiveRecord: extensions of AppeX,

Glorp and ActiveRecord classes

• (new) AppeX-Scaffolding: a framework for

ActiveRecord-backed Web applications

• (preview) AppeX-Scaffolding-Tool: GUI tool to

generate ActiveRecord classes and service methods.

Result is a functional web app.

Page 15: Single Page Web Application Development with SiouX and AppeX

Demo: Scaffolding Tool

©2015 Cincom Systems Inc. All Rights Reserved.15

Launcher

➡ Tools

‣Create Web Application

Page 16: Single Page Web Application Development with SiouX and AppeX

Funcational App - Zero Coding

©2015 Cincom Systems Inc. All Rights Reserved.16

Page 17: Single Page Web Application Development with SiouX and AppeX

Customized Web Apps

©2015 Cincom Systems Inc. All Rights Reserved.17

Customize by subclassing Scaffolding classes:

• ListPresenter

• DetailPresenter

• EditPresenter

• SelectionPresenter

Page 18: Single Page Web Application Development with SiouX and AppeX

Custom App Demo

©2015 Cincom Systems Inc. All Rights Reserved.18

Page 19: Single Page Web Application Development with SiouX and AppeX

©2015 Cincom Systems Inc. All Rights Reserved.19

Questions?

Page 20: Single Page Web Application Development with SiouX and AppeX

©2015 Cincom Systems Inc. All Rights Reserved.20

Star Team (Smalltalk Strategic Resources)

– Suzanne Fortman ([email protected])Cincom Smalltalk Program Director

– Arden Thomas ([email protected])Cincom Smalltalk Product Manager

– Jeremy Jordan ([email protected])Cincom Smalltalk Marketing Manager

– Suzanne Fortman ([email protected])Cincom Smalltalk Engineering Manager

Contact Information

Page 21: Single Page Web Application Development with SiouX and AppeX

©2015 Cincom Systems Inc. All Rights Reserved.21

Evaluate Cincom Smalltalk:

try.cincomsmalltalk.com

Join our Cincom Smalltalk Developer Program:

develop.cincomsmalltalk.com

Try Cincom Smalltalk