• Save


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.

Like this presentation? Why not share!

Ikenna Okpala: Scala's Lift Web Framework - 03/11/2010



Ikenna Okpala: Scala's Lift Web Framework - 03/11/2010

Ikenna Okpala: Scala's Lift Web Framework - 03/11/2010



Total Views
Slideshare-icon Views on SlideShare
Embed Views



0 Embeds 0

No embeds



Upload Details

Uploaded via as OpenOffice

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.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

    Ikenna Okpala: Scala's Lift Web Framework - 03/11/2010 Ikenna Okpala: Scala's Lift Web Framework - 03/11/2010 Presentation Transcript

    • Ikenna Okpala Twitter:@kengimel 3rd November 2010 Lightening Talk on Scala's Lift Web Framework
    • Lift Web: Introduction  Lift is a web application framework written in Scala and Created by David Pollak (@dpp on twitter).  It focused on being expressive and elegant while for maintainability, scalability and performance.  Design goals are security, conciseness and performance.  It is an abtraction of the HTTP request cycle.  Continually bringing the best of other web frameworks and conceptsunder on umbrella.
    • Lift Web: ”View First” Approach  Lift's approach is coined the “View First” design ”You can think of Lift as having a modified  Model View Presenter (MVP) that for the  purpose of this discussion we shall refer to as  View­ViewModel­Model (V­VM­M)” (Perrett,  2011, Lift in Action)
    • Lift Web : ”View First” Approach Execute Commands <<STATEFUL>> Apply / Commit VIEW/MODEL SNIPPET Change Notification Error Allows Invalid States. Notices VIEW TEMPLATES MODEL ADAPTED FROM LIFT IN ACTION MEAP EDITION FOUND AT: http://bit.ly/c5B919
    • Lift Web: Hello World VIEW <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head>ljcexample</head> <body> <h1>Hello World</h1> The Time is: <lift:HelloWorldSnippet> date is rendered here </lift:HelloWorldSnippet> </body> </html>
    • Lift Web: Hello World VIEW/MODEL package ljcexample.snippet import _root_.scala.xml.NodeSeq import _root_.java.util.{Date} case class dateModel(mydate: Date) class HelloWorldSnippet { val today = dateModel(new Date) def render(in: NodeSeq): NodeSeq = <span> { today.mydate.toString} </span> }
    • Why Lift ?  More powerful HTTP request / response control  Functional conciseness  Pattern macthing  Hign order functions  case classes (for modelling and data tranfer or VO)  Better OO modeling with Scala (using traits etc..)  Easier and friendly use of XML.  Leveraging Scala Actors library  Great community, fast responses.
    • Lift Web: Getting Started  Lift's Home @ www.liftweb.net and demo.liftweb.net  SBT and Lifty.. www.lifty.org  Getting started chat example from www.liftweb.net  Scala Lift Off Videos On Skills Matter Website at this address: http://bit.ly/bhIAaw  Join the London Scala User Group and Lift's mailing list  Lift in Action by Tim Perrett due Feb. 2011, MEAP version found here: http://bit.ly/c5B919
    • THANKS