20091226 名古屋SGGAE/J勉強会発表資料『Lift on GAE/J』
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

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

  • 2,113 views
Uploaded on

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
2,113
On Slideshare
2,108
From Embeds
5
Number of Embeds
1

Actions

Shares
Downloads
8
Comments
0
Likes
1

Embeds 5

http://www.slideshare.net 5

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Lift on GAE/J Get Lift on Google App Engine for Java. - KITAMURA Ryo 2009/12/26(Fri.)
  • 2. Self-Introduce ● KITAMURA Ryo(@RKTM) ● Wake up in Mie ● Work at Nagoya ● Programmer ● Ruby!!! Scala!! – VB6, VB.NET, ASP.NET
  • 3. Self-Introduce ● Love ● Trekking
  • 4. Self-Introduce ● Love ● Photography
  • 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. 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. 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. 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. 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. 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. 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. What's Scala? ● Scala ● Is a pure object-oriented language. – Classes and traits. – Extend by subclassing and mixin- based composition.
  • 13. What's Scala? ● Scala ● Is functional. – Every function is a value. val func = (x : Int) => x + 1 func(1)
  • 14. What's Scala? ● Scala ● Is functional. – Higher-order functions – Nesting functions – Currying
  • 15. What's Scala? ● Scala ● Is functional. – Case classes and built-in support for pattern matching – Built-in support for XML processing!
  • 16. What's Scala? ● XML Sample val html = <html><head>foo</head> <body>hoge</body></html> println(html)
  • 17. Sir, More Scala, Sir!! Join “Nagoya Scala”!! http://groups.google.co.jp/group/NagoyaScala
  • 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. 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. 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. What's Lift? ● Lift ● Runs on Java VM. – Many Java libraries ● Powerful support for – AJAX – Commet
  • 22. What's Lift? ● More Info about Lift – http://codezine.jp/article/detail /4310 – http://codezine.jp/article/detail /4512
  • 23. GAE/J? ● What is Google App Engine? ● What is Google App Engine for Java?
  • 24. GAE/J? ● Tantack did it! –I guess :)
  • 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. 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. Get Lift on GAE/J ● Create – src/main/webapp/WEB- INF/appengine-web.xml
  • 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. Get Lift on GAE/J ● compile mvn package
  • 30. Get Lift on GAE/J ● Run on local machine [SDK dir]dev_appserver.cmd target/liftgaej-1.0-SNAPSHOT
  • 31. Get Lift on GAE/J ● Deploy! [SDK dir]appcfg.cmd update target/liftgaej-1.0-SNAPSHOT
  • 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. 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. References ● Lift on GAE/J – http://d.hatena.ne.jp/yuroyoro/ 20090701/1246448458
  • 35. Q? ● Do you have any Questions?
  • 36. Done! ● Thank you! ● Join “ Nagoya Scala” ● @2010/01/22(Fri.)