Solving Web Applications Challenges with Build Process and SOC

Post on 28-Nov-2014

372 views 2 download

description

Nanoko is not a MVC or MVVM framework. Unlike angular or ember, Nanoko proposes a build process ensuring the reproducibility of the build. It also integrates testing, aggregation, minification, and a bunch of web languages such as Less and CoffeeScript. Nanoko also proposes a framework to build and run modular applications. the main outcome of Nanoko comes from this combination: an industrial build process, and a modular runtime.Nanoko does not focus on an UI-centric architecture style, but embraces service-orientation making the development more flexible, and the integration really easy. Ubidreams has developed a cross-platform app named "Gourmandise" for Remy Cointreau. This application is a mobile catalog used by the sales department when meeting customers. In addition to the iPad application a web application (CMS) was developed using the Nanoko stack. This CMS runs on any browser (including IE8)

transcript

Solving Web Applications Challenges! !

with Build Process and SOC!

Clément Escoffier - Dynamis!Nicolas Rempulski - Ubidreams

Nanoko Project• Founded by :

➡ Ubidreams ➡ Dynamis & Grenoble University ➡ Tech-Arts

!

• Released 14th February 2012 !

Industrialize Web development

Challenges• Web Technologies aggregation

!3

Challenges• Code reusability - lifecycle - dependencies

!4

Ajax1.0.0-

SNAPSHOTAjax1.0.0

Ajax1.1.0-

SNAPSHOTAjax1.1.0

Project A Project B

jQuery 1.9.2 jQuery 2.0.03rd party

Enterprise!property

Challenges• Web environments fragmentation

➡ Single-code application : Full Web and Hybrid apps

!5

Solutions• Build Process Management!

➡ Handle useful technologies ➡ Provide code dependency ➡ Manage application lifecycle

• Client-side SOC!➡ Bringing components paradigm to Javascript ➡ Trigger dynamic application adaptation

!6

Build Process : coffee-mill• Maven architecture

➡ Bringing Web App to Maven !

• Technologies !

• Watch Mode ➡ Assist dev-ops while

implementing ➡ Serve always up-to-date app

Import dependencies

Compile code CoffeeScript / Js

jsLint / jsHint

Compile stylesheetLESS / CSS

CSSLint

Static RessourcesImages OptimisationHTML Compression

Javascript Unit TestJasmine

Aggregation / MinificationJavascript

CSS

Artifact creation+

jsDoc

Integration Test

!7

SOC for javascript : h-ubu

!8

Where ?

• Website : nanoko.org

• GitHub : github.com/nanoko-project ➡ coffee-mill : github.com/nanoko-project/coffee-mill-maven-plugin ➡ h-ubu : github.com/nanoko-project/h-ubu

➡ …

!9

Thank You !