0
Lift on GAE/J



        Get Lift on
Google App Engine for Java.

       - KITAMURA Ryo
       2009/12/26(Fri.)
Self-Introduce

●
    KITAMURA Ryo(@RKTM)
    ●
        Wake up in Mie
    ●
        Work at Nagoya
●
    Programmer
    ●...
Self-Introduce

●
    Love
    ●
        Trekking
Self-Introduce

●
    Love
    ●
        Photography
Talk about ...

●
    What's Scala?
●
    What's Lift?
●
    What's Google App Engine for
    Java(GAE/J)?
●
    How to ge...
What's Scala?

●
    Scala
    ●
        Is a general purpose programming
        language.
    ●
        stands for "scal...
What's Scala?

●
    Scala
    ●
        Runs on Java VM.
        –   You can call Scala from Java
        –   and you can...
What's Scala?

●
    James Gosling:
    ●
        "Which Programming Language
        would you use *now* on top of
      ...
What's Scala?

●
    James Strachan:
    ●
        “I can honestly say if someone had
        shown me the Programming in ...
What's Scala?

●
    Charles Nutter:
      –   “Scala, it must be stated, is the
          current heir apparent to the
  ...
What's Scala?

●
    Scala
    ●
        Is a pure object-oriented language.
        –   Type inference
        –   Static...
What's Scala?

●
    Scala
    ●
        Is a pure object-oriented language.
        –   Classes and traits.
        –   E...
What's Scala?

●
    Scala
    ●
        Is functional.
        –   Every function is a value.
             val func = (x ...
What's Scala?

●
    Scala
    ●
        Is functional.
        –   Higher-order functions
        –   Nesting functions
 ...
What's Scala?

●
    Scala
    ●
        Is functional.
        –   Case classes and built-in support
            for patt...
What's Scala?

●
    XML Sample
    val html = <html><head>foo</head>
    <body>hoge</body></html>

    println(html)
Sir, More Scala,
                    Sir!!




  Join “Nagoya Scala”!!
http://groups.google.co.jp/group/NagoyaScala
What's Scala?

●
    More Info For Scala Beginners
      –   http://www.impressjapan.jp/boo
          ks/2745
      –   ht...
What's Lift?

●
    Lift
    ●
        Scala-based Web App F/W.
    ●
        has cherry-picked the best ideas
        fro...
What's Lift?

●
    Lift
    ●
        Full stack
        –   AP Srv, ORM
    ●
        Convention over Configuration
    ...
What's Lift?

●
    Lift
    ●
        Runs on Java VM.
        –   Many Java libraries
    ●
        Powerful support for...
What's Lift?

●
    More Info about Lift
      –   http://codezine.jp/article/detail
          /4310
      –   http://code...
GAE/J?

●
    What is Google App Engine?
●
    What is Google App Engine for
    Java?
GAE/J?




●
    Tantack did it!
     –I   guess :)
Get Lift on GAE/J

●
    * Skip installing.
●
    Development environment
    ●
        Windows XP SP3
    ●
        Java ...
Get Lift on GAE/J

●
    maven
    mvn archetype:generate -U
     -DarchetypeGroupId=net.liftweb
     -DarchetypeArtifactI...
Get Lift on GAE/J

●
    Create
    –   src/main/webapp/WEB-
        INF/appengine-web.xml
Get Lift on GAE/J

●
    appengine-web.xml
    <?xml version="1.0" encoding="utf-8"?>
    <appengine-web-app xmlns="http:/...
Get Lift on GAE/J

●
    compile
mvn package
Get Lift on GAE/J

●
    Run on local machine
[SDK dir]dev_appserver.cmd
 target/liftgaej-1.0-SNAPSHOT
Get Lift on GAE/J

●
    Deploy!
[SDK dir]appcfg.cmd update
 target/liftgaej-1.0-SNAPSHOT
Get Lift on GAE/J

●
    Datastore?
    ●
        JPA sample:
           ●
               http://github.com/ymnk/lift-gae-...
References

●
    Scala
      –    http://www.scala-lang.org/
      –    http://dl.dropbox.com/u/261418
           /scala-...
References

●
    Lift on GAE/J
      –   http://d.hatena.ne.jp/yuroyoro/
          20090701/1246448458
Q?

●
    Do you have any Questions?
Done!

●
    Thank you!
●
    Join “ Nagoya Scala”
    ●
        @2010/01/22(Fri.)
Upcoming SlideShare
Loading in...5
×

20091226 名古屋SGGAE/J勉強会発表資料『Lift on GAE/J』

1,499

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,499
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
9
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Transcript of "20091226 名古屋SGGAE/J勉強会発表資料『Lift on GAE/J』"

  1. 1. Lift on GAE/J Get Lift on Google App Engine for Java. - KITAMURA Ryo 2009/12/26(Fri.)
  2. 2. Self-Introduce ● KITAMURA Ryo(@RKTM) ● Wake up in Mie ● Work at Nagoya ● Programmer ● Ruby!!! Scala!! – VB6, VB.NET, ASP.NET
  3. 3. Self-Introduce ● Love ● Trekking
  4. 4. Self-Introduce ● Love ● Photography
  5. 5. Talk about ... ● What's Scala? ● What's Lift? ● What's Google App Engine for Java(GAE/J)? ● How to get Lift on GAE/J ● Any Question?
  6. 6. What's Scala? ● Scala ● Is a general purpose programming language. ● stands for "scalable language” – is designed to grow with the demands of its users.
  7. 7. What's Scala? ● Scala ● Runs on Java VM. – You can call Scala from Java – and you can call Java from Scala. ● whose compiler produces – byte code that performs every bit as good as comparable Java code.
  8. 8. What's Scala? ● James Gosling: ● "Which Programming Language would you use *now* on top of JVM, except Java?" ● James Gosling:”Scala.” ● http://www.adam- bien.com/roller/abien/entry/java_net_javaone_ which_programming
  9. 9. What's Scala? ● James Strachan: ● “I can honestly say if someone had shown me the Programming in Scala book by by Martin Odersky, Lex Spoon & Bill Venners back in 2003 I'd probably have never created Groovy.” ● http://macstrac.blogspot.com/2009/04/scala- as-long-term-replacement-for.html
  10. 10. What's Scala? ● Charles Nutter: – “Scala, it must be stated, is the current heir apparent to the Java throne. No other language on the JVM seems as capable of being a "replacement for Java" as Scala.” – http://blog.headius.com/2009/04/future- part-one.html
  11. 11. What's Scala? ● Scala ● Is a pure object-oriented language. – Type inference – Static typing – Every value is an object. val a = 12345 a.toString
  12. 12. What's Scala? ● Scala ● Is a pure object-oriented language. – Classes and traits. – Extend by subclassing and mixin- based composition.
  13. 13. What's Scala? ● Scala ● Is functional. – Every function is a value. val func = (x : Int) => x + 1 func(1)
  14. 14. What's Scala? ● Scala ● Is functional. – Higher-order functions – Nesting functions – Currying
  15. 15. What's Scala? ● Scala ● Is functional. – Case classes and built-in support for pattern matching – Built-in support for XML processing!
  16. 16. What's Scala? ● XML Sample val html = <html><head>foo</head> <body>hoge</body></html> println(html)
  17. 17. Sir, More Scala, Sir!! Join “Nagoya Scala”!! http://groups.google.co.jp/group/NagoyaScala
  18. 18. What's Scala? ● More Info For Scala Beginners – http://www.impressjapan.jp/boo ks/2745 – http://github.com/yuroyoro/scal a-hackathon – http://itpro.nikkeibp.co.jp/articl e/COLUMN/20080613/307981/ ?ST=develop
  19. 19. What's Lift? ● Lift ● Scala-based Web App F/W. ● has cherry-picked the best ideas from a number of other frameworks, ● while creating some novel ideas of its own.
  20. 20. What's Lift? ● Lift ● Full stack – AP Srv, ORM ● Convention over Configuration ● MVC ● template system like Wicket – built on the XML processing capabilities of Scala
  21. 21. What's Lift? ● Lift ● Runs on Java VM. – Many Java libraries ● Powerful support for – AJAX – Commet
  22. 22. What's Lift? ● More Info about Lift – http://codezine.jp/article/detail /4310 – http://codezine.jp/article/detail /4512
  23. 23. GAE/J? ● What is Google App Engine? ● What is Google App Engine for Java?
  24. 24. GAE/J? ● Tantack did it! –I guess :)
  25. 25. Get Lift on GAE/J ● * Skip installing. ● Development environment ● Windows XP SP3 ● Java version: 1.6.0_14 ● Apache maven: 2.2.0 ● Scala 2.7.7 final ● Appengine SDK: 1.3.0
  26. 26. Get Lift on GAE/J ● maven mvn archetype:generate -U -DarchetypeGroupId=net.liftweb -DarchetypeArtifactId=lift-archetype- blank -DarchetypeVersion=1.1-SNAPSHOT -DremoteRepositories=http://scala- tools.org/repo-snapshots -DgroupId=com.mylift -DartifactId=liftgaej
  27. 27. Get Lift on GAE/J ● Create – src/main/webapp/WEB- INF/appengine-web.xml
  28. 28. Get Lift on GAE/J ● appengine-web.xml <?xml version="1.0" encoding="utf-8"?> <appengine-web-app xmlns="http://appengine.google.com/ns/1.0"> <application>liftgaej</application> <version>1</version> <system-properties> <property name="in.gae.j" value="true" /> </system-properties> <sessions-enabled>true</sessions-enabled> <static-files> <exclude path="/**" /> </static-files> </appengine-web-app>
  29. 29. Get Lift on GAE/J ● compile mvn package
  30. 30. Get Lift on GAE/J ● Run on local machine [SDK dir]dev_appserver.cmd target/liftgaej-1.0-SNAPSHOT
  31. 31. Get Lift on GAE/J ● Deploy! [SDK dir]appcfg.cmd update target/liftgaej-1.0-SNAPSHOT
  32. 32. Get Lift on GAE/J ● Datastore? ● JPA sample: ● http://github.com/ymnk/lift-gae-jpa ● JDO sample: ● http://github.com/ymnk/lift-gae-jdo * I haven't tried them : (
  33. 33. References ● Scala – http://www.scala-lang.org/ – http://dl.dropbox.com/u/261418 /scala-hackathon/index.html ● Lift – http://www.liftweb.com/ – http://groups.google.com/group/ the-lift-book/files
  34. 34. References ● Lift on GAE/J – http://d.hatena.ne.jp/yuroyoro/ 20090701/1246448458
  35. 35. Q? ● Do you have any Questions?
  36. 36. Done! ● Thank you! ● Join “ Nagoya Scala” ● @2010/01/22(Fri.)
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×