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

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

1 comments

Comments 1 - 1 of 1 previous next Post a comment

  • + guest6fe7b3 Hairul Azami 1 week ago
    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 :)
Post a comment
Embed Video
Edit your comment Cancel

2 Favorites

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

  1. Wakanda A project dedicated to creating a new end-to-end JavaScript platform
  2. 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.
  3. We are a "small-large" company based in Paris, with a presence all over the world.
  4. 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.
  5. The Wakanda Team
  6. Why is JavaScript the best choice for Wakanda today? http://tr.im/javascript_rocks
  7. The Wakanda Project
  8. 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
  9. Web Admin Solution, Applications, Servers, Services
  10. HTTP & JavaScript Unit Testing Tool HTTP test case editor in the Firebug console
  11. HTTP & JavaScript Unit Testing Tool Use the Bespin JavaScript editor to customize test cases
  12. HTTP & JavaScript Unit Testing Tool Test suite management - YUI test compatibility - JUnit support
  13. 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
  14. 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}
  15. 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(); }
  16. 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" />
  17. 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");
  18. 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);
  19. End-to-End JavaScript SquirrelFish Extreme (Nitro) 64 bits - multi-thread - lightweight - extensible - the fastest ?
  20. CommonJS Modules/1.0 «4D is implementing this in Wakanda» http://wiki.commonjs.org/wiki/Modules/1.0
  21. 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
  22. Native REST & JavaScript Database Engine
  23. Core DBMS 64 bits - Unicode - multi-thread - multi-process Improved database engine
  24. Core DBMS catalog data indexes Entity Models SQL JavaScript REST HTTP Lowest level JavaScript and HTTP binding
  25. Core DBMS Entity Models JavaScript SQL REST HTTP db.tables.employee.all(); Access to relational database layer from JavaScript
  26. Easy way to design the Business interface
  27. Core DBMS Entity Models SQL SquirrelFish JavaScript REST HTTP var emps = db.employee.all(); function hello(emp) { return ‘hello ’ + emp.name; } hello(emps.first()); Access to the Business interface layer from JavaScript
  28. Core DBMS Entity Models SQL SquirrelFish JavaScript REST HTTP db.employees.find("name = alex").drop(); function getWorkLocation(employee) { return employee.company.address; }
  29. Core DBMS Entity Models SQL SquirrelFish JavaScript REST HTTP* 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
  30. JSON View of an entity set
  31. XML View of an entity set
  32. 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
  33. Core DBMS Entity Models SQL SquirrelFish JavaScript REST HTTP SELECT * FROM employee Still an SQL access to the relational layer with ODBC & PDO for specific clients or imports/export
  34. WAF adapters
  35. Upcoming? Yours...?
  36. Summary - Powerful Server Side JavaScript engine - Native Business Logic abstraction - No SQL generation - direct JavaScript interface - direct REST interface - Open Platform - Streamlined development process
  37. 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
SlideShare Zeitgeist 2009

+ Alexandre MorgautAlexandre Morgaut Nominate

custom

959 views, 2 favs, 0 embeds more stats

Wakanda is an exciting project including a server, more

More info about this document

© All Rights Reserved

Go to text version

  • Total Views 959
    • 959 on SlideShare
    • 0 from embeds
  • Comments 1
  • Favorites 2
  • Downloads 14
Most viewed embeds

more

All embeds

less

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

Cancel
File a copyright complaint
Having problems? Go to our helpdesk?

Categories