Wakanda: NoSQL & SSJS for Model-driven Web Applications - SourceDevCon 2012

7,875 views

Published on

Wakanda: NoSQL & SSJS for Model-driven Web Applications
A session at SourceDevCon 2012

Developing a business web application is still a long process in 2012.

Model-Driven Development is at the heart of:

requirements design for the contractor and the product manager,
productivity for the developer,
consistency and security for the end-user
evolution toward future applications
The Wakanda platform – via its NoSQL object datastore WakandaDB – intends to let you create such model-driven applications. The presentation will explain and show how to create the application model, with its business and security rules, coded once, then made available everywhere without being bypassable. To add even more consistency, the same language is used everywhere: JavaScript. You'll enjoy the intuitive way to get data from the datastore via either the REST or the SSJS APIs.

You’ll see how to use the defined Model directly in a native framework or the Sencha one.

Published in: Technology, Education
0 Comments
6 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
7,875
On SlideShare
0
From Embeds
0
Number of Embeds
430
Actions
Shares
0
Downloads
95
Comments
0
Likes
6
Embeds 0
No embeds

No notes for slide
  • \n\n
  • \n\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Web/data/rest/http server\n Fast, threaded JavaScript environment\n Presents Wakanda data as JavaScript Objects, automatically\n Cross platform – Windows/Mac/Linux\n
  • Web/data/rest/http server\n Fast, threaded JavaScript environment\n Presents Wakanda data as JavaScript Objects, automatically\n Cross platform – Windows/Mac/Linux\n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • - Our debugger protocol is based on CrossFire standard, compatible with Firebug allowing to:\n1. debug JS running in any environment (server, browser, mobile browsers) from our Studio \n2. debug Wakanda SSJS from any crossfire client (as FireBug)\n\nWakanda is intended to also support the V8 debugging protocol for even more interoperability (protocol used by Cloud9 & Node.js)\n\nNote that we choose to support at first CrossFire because it was better answering Wakanda needs. (it’s multi-contexts)\n
  • \n
  • \n
  • \n\n
  • Wakanda: NoSQL & SSJS for Model-driven Web Applications - SourceDevCon 2012

    1. Wakanda NoSQL & SSJS forModel-driven Web ApplicationsAlexandre MorgautWeb Architect & Community Manager @amorgaut
    2. wakanda.org@wakandasoftJSeverywhere.org@JSeverywhere
    3. Business Web Applications
    4. Business Web Applications
    5. Business Web Applications Silverlight.NET Visual C++ C# IIS SQL Server
    6. Business Web Applications Acegi Silverlight JSP.NET Visual Java C++ Hibernate C# Tomcat JUnit IIS OracleSpring GWT SQL Server
    7. Business Web Applications Acegi Silverlight JSP.NET Symfony Aptana Visual Eclipse Java C++ Hibernate Varnish Tomcat C#PHP JUnit IIS Zend Apache OracleSpring GWT MySQL SQL Server
    8. Business Web Applications ExtJS Flex Acegi Silverlight JSP.NET Symfony SSLHTTP Aptana ATOM Visual Eclipse Java C++ Hibernate Varnish Tomcat C# PHP JUnit REST IIS Zend Apache Oracle Spring GWT MySQL SQL Server JSON
    9. many referenced nosql databases on http://nosql-database.org/
    10. Alternative solutions to SQL Why? Cloud Non Relational? Scalability Model-driven SemanticCAP Theorem How? Consistency Availability Partition tolerance Schemaless Graph What for? BigData
    11. NoSQL FamiliesDocument Store Object store GraphKey-value store Column store
    12. JavaScript Engines C+ C + SpiderMonkey webkit JavaScriptCore: JSC 3 JIT Compilers: SquirrelFish Extreme: SFX aka Nitro TraceMonkey, (JIT Compiler inside) JägerMonkey, IonMonkey Jav C+ a + Rhino V8 Interpreted or Compiled execution JIT Compiler: CrankShaftNashorn? ? Trident: MSHTML Chakra -> Classic JScript, Managed JScript, & JScript.NET C+ ? + Tamarin Carakan JIT Compiler: NanoJIT -> ActionScript / “ECMAScript 4” Previously: Linear A, Linear B, Futhark
    13. Server-Side JavaScriptSpiderMonkey JavaScriptCore Rhino V8 Trident / Chakra
    14. Cross-platform development anddeployment system for model-driven web-based applications
    15. Cross-platform development anddeployment system for model-driven web-based applications
    16. Cross-platform development anddeployment system for model-driven web-based applications Model Based Engineering Model Driven Engineering Model Driven Development Model Driven Architecture See also: Domain Driven Design
    17. Cross-platform development anddeployment system for model-driven web-based applications
    18. Cross-platform development anddeployment system for model-driven web-based applications One Language JavaScript
    19. JavaScriptCoremulti-threaded, preemptive, thread-safe, 64bits, strict mode fast, well structured & documented, maintained by Apple
    20. Wakanda
    21. Wakanda Wakanda Server REST/JSON Wakanda Application Framework (aka WakandaDB)DataStore Model Editor Debugger Code Editor Wakanda Studio Users & Groups GUI Designer Administration
    22. Wakanda Wakanda Server REST/JSON Wakanda Application Framework (aka WakandaDB)DataStore Model Editor Debugger Code Editor Wakanda Studio Users & Groups GUI Designer Administration
    23. Wakanda Wakanda Server REST/JSON Wakanda Application Framework (aka WakandaDB)DataStore Model Editor Debugger Code Editor Wakanda Studio Users & Groups GUI Designer Administration
    24. Wakanda Wakanda Server REST/JSON Wakanda Application Framework (aka WakandaDB)DataStore Model Editor Debugger Code Editor Wakanda Studio Users & Groups GUI Designer Administration
    25. Wakanda Wakanda Server REST/JSON Wakanda Application Framework (aka WakandaDB)DataStore Model Editor Debugger Code Editor Wakanda Studio Users & Groups GUI Designer Extensions Administration
    26. Wakanda Wakanda Server REST/JSON Wakanda Application Framework (aka WakandaDB)DataStore Model Editor Debugger Code Editor Wakanda Studio Users & Groups GUI Designer Extensions Administration
    27. Wakanda Your Client or Server FrameworkWakanda Server REST/JSON Java, .NET, node.js PHP, Python, Ruby... (aka WakandaDB) ExtJS, Sencha Touch, Kendo UI, Backbone.js... Webkit debugger protocol 1.0 Your Development Tools Visual Studio, XCode, NetBeans, Eclipse, Cloud9, Orion, Sencha Architect
    28. Wakanda Server (aka WakandaDB)
    29. Wakanda Server (aka WakandaDB) • Data/HTTP Server • JavaScript Environment • NoSQL Object Datastore
    30. Model & Data Classes
    31. Relations
    32. Recursivity
    33. Alias attributes
    34. N/N Relation
    35. john = ds.Person.find(“firstName eq John”);conferences = john.allConferences;JohnJSConferences = conferences.filter(“title eq ‘@JavaScript@’”);JSAttendeesJohnMet = JSConferences.allPeople;
    36. Extend a Datastore Class
    37. Calculated attributes
    38. Datastore Class Methods
    39. Security
    40. Scope Validation
    41. Users & Groups
    42. Open Environment
    43. Open SourceWakanda Framework already on GithubWakanda Server coming soonWakanda Studio later(still some proprietary library dependencies to remove)Download accessible from: the stabilization channel the Nightly builds of the development channel
    44. REST HTTP API doc.wakanda.org/REST/REST.100-808498.html Sencha proxy by https://github.com/revolunet/sencha-wakanda/ Sencha TouchSencha Architect ExtJS
    45. Webkit debugger Protocol 1.0
    46. CommonJS Modules 1.1.1 - test, assert, worker, console -partially: systemW3C / HTML5 - Storage, Worker, Blob, Timers, XMLHttpRequest, FileSystem - Upcoming: Web Socket, FileNode.js compatibility - Buffer, Process, Events, Net, TLS, OS
    47. W3C Community & Business Groups“Client & Server JavaScript APIs” Proposed W3C Community Group http://w3.org/community/ Workers ?
    48. Come with us at San Jose, CA on October 26th: @JSeverywhere http://JSeverywhere.org Call to speaker just started!!!

    ×