Wakanda: a new end-to-end JavaScript platform - JSConf Berlin 2009
Upcoming SlideShare
Loading in...5
×
 

Wakanda: a new end-to-end JavaScript platform - JSConf Berlin 2009

on

  • 9,474 views

Wakanda is an exciting project including a server, a studio, and some useful Web tools. It helps you creating web apps that integrate nicely with a backend and a native REST and JavaScript database. ...

Wakanda is an exciting project including a server, a studio, and some useful Web tools. It helps you creating web apps that integrate nicely with a backend and a native REST and JavaScript database.
It makes REST and Entity Model, a very intuitive way to build applications. We'll see a quick but detailed rundown about its architecture: its database engine, SquirrelFish, a data provider, Ajax framework adapters (YUI, ExtJS, jQuery, ...), and a full development environment. I'll expose part of its client and server-side APIs (JSON-RPC, data services), and some innovating features like JavaScript remote debugging, or unit testing on JavaScript and HTTP using Wakanda Studio and Firefox extensions.

Statistics

Views

Total Views
9,474
Views on SlideShare
9,383
Embed Views
91

Actions

Likes
7
Downloads
88
Comments
1

5 Embeds 91

http://www.slideshare.net 44
http://lanyrd.com 43
http://www.feedspot.com 2
http://static.slideshare.net 1
http://www.linkedin.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
  • hi! thank for visit http://dremi468.blogspot.com
    sory for missing name, I has changed it

    well. ... we know JS has very lot of ability and give more nice effect for server side programming. I like it :)
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Wakanda: a new end-to-end JavaScript platform - JSConf Berlin 2009 Wakanda: a new end-to-end JavaScript platform - JSConf Berlin 2009 Presentation Transcript

  • Wakanda A project dedicated to creating a new end-to-end JavaScript platform lundi 1 février 2010
  • 4D 4D has been publishing business application development tools for many years, with a focus on simplicity, compatibility and integration, across desktop, client-server and Web. lundi 1 février 2010
  • We are a "small-large" company based in Paris, with a presence all over the world. lundi 1 février 2010
  • Inner magic It's what Wakanda means in the Sioux language. We intend to bring our style of ease and simplicity in development to your complex business Internet applications. lundi 1 février 2010
  • The Wakanda Team lundi 1 février 2010
  • Why is JavaScript the best choice for Wakanda today? http://tr.im/javascript_rocks lundi 1 février 2010
  • The Wakanda Project lundi 1 février 2010
  • Studio - users & groups management - database / entity models design & administration - WYSIWYG editing - JSDoc / ScriptDoc (type-ahead, outline, publication) - source control - validators (JSLint, W3C, ...), ATAG conformance !?! - unit testing (TDD, TDR), client & server debugger - minifier, caching properties lundi 1 février 2010
  • Web Admin Solution, Applications, Servers, Services lundi 1 février 2010
  • HTTP & JavaScript Unit Testing Tool HTTP test case editor in the Firebug console lundi 1 février 2010
  • HTTP & JavaScript Unit Testing Tool Use the Bespin JavaScript editor to customize test cases lundi 1 février 2010
  • HTTP & JavaScript Unit Testing Tool Test suite management - YUI test compatibility - JUnit support lundi 1 février 2010
  • Remote JavaScript Debugging CrossFire, v8 protocol compatibility !?! - debug the client from the studio - debug the server from web clients breakpoint, step by step, callstack, JavaScript expression evaluation lundi 1 février 2010
  • JSON-RPC Client & Server A simple protocol Request by position --> {"jsonrpc": "2.0", "method": "subtract", "params": [42, 23], "id": 1} <-- {"jsonrpc": "2.0", "result": 19, "id": 1} Request by params --> {"jsonrpc": "2.0", "method": "subtract", "params": {"subtrahend": 23, "minuend": 42}, "id": 3} <-- {"jsonrpc": "2.0", "result": 19, "id": 3} lundi 1 février 2010
  • JSON-RPC Client & Server Simple function declaration, request validity control from JSDoc or JSON-Schema Server-Side /** * get the number of connexions on an application server * * @param {String} appName application name * @return {Number} **/ function countConnections(appName) { return applications[appName].servers.http.connections(); } lundi 1 février 2010
  • JSON-RPC Client & Server Simple client binding declaration, Client-Side <meta name="WAF.config.rpc.namespace" content="customAdmin" /> <meta name="WAF.config.rpc.methods" content="countConnections" /> or <link rel="WAF.config" href="/wafConfig.json" type="application/json" /> lundi 1 février 2010
  • JSON-RPC Client & Server Simple and advanced method calls, request sent only if parameters are valid Client-Side customAdmin. countConnections("killingApp"); customAdmin. countConnectionsAsync(showResult, "killingApp"); var infosHandlers = { onsuccess: function (result) { /* ... */}, onerror: function (error) { /* ... */} }; customAdmin. countConnectionsAsync(infosHandlers, "killingApp"); lundi 1 février 2010
  • JSON-RPC Client & Server Easy way to call external Web Services and to had client validity checking Client-Side WAF.rpc.call("otherMethod", paramA, paramB); WAF.rpc.callAsync(methodHandlers, "otherMethod", paramA, paramB); or WAF.rpc.call(otherServerConfig, "otherMethod", paramA, paramB); or var rpcOut = new WAF.classes.Rpc(otherServerConfig); rpcOut.callAsync(methodHandlers, "otherMethod", paramA, paramB); rpcOut.getInterface("otherMethod", "rpcOut"); rpcOut.otherMethodAsync(methodHandlers, paramA, paramB); lundi 1 février 2010
  • End-to-End JavaScript SquirrelFish Extreme (Nitro) 64 bits - multi-thread - lightweight - extensible - the fastest ? lundi 1 février 2010
  • CommonJS Modules/1.0 «4D is implementing this in Wakanda» http://wiki.commonjs.org/wiki/Modules/1.0 lundi 1 février 2010
  • HTTP Incoming Request JS APIs JSGI (0.2) Jack Persevere Jaxer v8cgi EJscript node.js Wakanda * http://wiki.commonjs.org/wiki/JSGI http://tr.im/http_ssjs_api lundi 1 février 2010
  • Native REST & JavaScript NoSQL Data store Engine lundi 1 février 2010
  • Core data store engine Entity Model support 64 bits - Unicode - multi-thread - multi-process Improved database engine lundi 1 février 2010
  • Core data store engine Entity Model support JavaScript API REST HTTP API Lowest level JavaScript and HTTP binding lundi 1 février 2010
  • Easy way to design the Business interface lundi 1 février 2010
  • Core data store engine Entity Model support JavaScript API REST HTTP API var emps = db.employee.all(); function hello(emp) { return ‘hello ’ + emp.name; } hello(emps.first()); Access to the Business interface layer from JavaScript lundi 1 février 2010
  • Core data store engine Entity Model support JavaScript API REST HTTP API db.employees.find("name = alex").drop(); function getWorkLocation(employee) { return employee.company.address; } lundi 1 février 2010
  • Core data store engine Entity Model support JavaScript API REST HTTP API GET /rest/employee(5) GET /rest/employee/name?$query=salary < 50000 DELETE /rest/employee("Tom Cat") * JSON or XML layout Access to the business interface layer from HTTP trough a REST API lundi 1 février 2010
  • JSON View of an entity set lundi 1 février 2010
  • XML View of an entity set lundi 1 février 2010
  • Direct HTML interface • Unlimited number of entities in the datatable • Automatic Forms with unlimited property hierarchy • Very responsive filters, server side ordering • Possibility to add, remove, and update the entities lundi 1 février 2010
  • WAF adapters lundi 1 février 2010
  • lundi 1 février 2010
  • Upcoming? Yours...? lundi 1 février 2010
  • Summary - Powerful Server Side JavaScript engine - Native Business Logic abstraction - No SQL generation - direct JavaScript interface - direct REST interface - Open Platform - Streamlined development process lundi 1 février 2010
  • Get Involved Developer preview: 1st quarter 2010 http://www.wakandasoftware.com @wakandasoftware @amorgaut @amorgaut/wakanda @amorgaut/javascript-gurus @amorgaut/accessibility http://wiki.commonjs.com http://tr.im/wtframework lundi 1 février 2010