Content-Length: 358545 | pFad | http://www.slideshare.net/kyanny/rubyist-perl-perl-web-development-guide-for-rubyist

Ruby プログラマのための Perl ウェブアプリケーション開発入門 (Perl web development guide for Rubyist ) | PPT
SlideShare a Scribd company logo
Ruby
Perl


            2011/10/14
        YAPC::Asia Tokyo 2011
$ whoami

•           <Kensuke Nagae>

•
• @kyanny
Ruby プログラマのための Perl ウェブアプリケーション開発入門 (Perl web development guide for Rubyist )
Ruby プログラマのための Perl ウェブアプリケーション開発入門 (Perl web development guide for Rubyist )
Perl => Ruby
•       Ruby

• Rails
•
Ruby プログラマのための Perl ウェブアプリケーション開発入門 (Perl web development guide for Rubyist )
Ruby
Perl
Ruby


• Environment
• Web Application Framework
• Platform
Environment
Environment

•   Ruby

•
           ...
Ruby プログラマのための Perl ウェブアプリケーション開発入門 (Perl web development guide for Rubyist )
RVM

• Ruby Version Manager
•        Ruby

•             Ruby
RVM

•
•
•
$ rvm install 1.9.2
$ rvm use 1.9.2
$ rvm use system
Web Application
 Framework
Web Application
       Framework

• Rails
• Rails
• Sinatra, Padrino, Ramaze, etc.
Ruby プログラマのための Perl ウェブアプリケーション開発入門 (Perl web development guide for Rubyist )
Sinatra


•                    DSL

•             (get         )
require 'sinatra'

get '/hi' do
  "Hello World!"
end
Platform
Platform

•
•                VPS

• Google AppEngine
Ruby プログラマのための Perl ウェブアプリケーション開発入門 (Perl web development guide for Rubyist )
Heroku


• Rack                 PaaS

• CLI + Git
$ gem install heroku
$ heroku create
$ git push heroku master
s/Ruby/Perl/
Ruby
Perl
Perl


• Environment
• Framework
• Platform
Environment
Environment

• 5.8.x
                        ...

•              CPAN
Ruby プログラマのための Perl ウェブアプリケーション開発入門 (Perl web development guide for Rubyist )
Perlbrew

• RVM
•       Perl

•              Perl
Perlbrew

•
•
•
$ perlbrew install perl-5.14.1
$ perlbrew switch perl-5.14.1
$ perlbrew switch /usr/bin/perl
Web Application
 Framework
Web Application
       Framework

• Catalyst
• Catalyst
• Dancer, Mojolicious::Lite, Amon2::Lite, etc.
Ruby プログラマのための Perl ウェブアプリケーション開発入門 (Perl web development guide for Rubyist )
Mojolicious::Lite

• Mojolicious
•                        DSL

• Sinatra (     )
use Mojolicious::Lite;

get '/hi' => {
    text => 'Hello World!'
};

app->start;
Platform
Platform

• CGI                       ...

•      mod_perl, FastCGI

• PSGI             Heroku
Ruby プログラマのための Perl ウェブアプリケーション開発入門 (Perl web development guide for Rubyist )
DotCloud

• PSGI                           PaaS

• CLI + Git, Mercurial
• YAPC::Asia Tokyo 2011 Sponsor :)
$ sudo easy_install pip &&
sudo pip install dotcloud

$ dotcloud create myapp
$ dotcloud push myapp
Ruby プログラマのための Perl ウェブアプリケーション開発入門 (Perl web development guide for Rubyist )
Environment

• RVM
• Perlbrew
•
$ rvm install 1.9.2
$ rvm use 1.9.2
$ rvm use system
$ perlbrew install perl-5.14.1
$ perlbrew switch perl-5.14.1
$ perlbrew switch /usr/bin/perl
Web Application
       Framework

• Sinatra
• Mojolicious::Lite
•                       DSL
require 'sinatra'

get '/hi' do
  "Hello World!"
end
use Mojolicious::Lite;

get '/hi' => {
    text => 'Hello World!'
};

app->start;
Platform

• Heroku
• DotCloud
•                   PaaS
$ gem install heroku
$ heroku create
$ git push heroku master
$ sudo easy_install pip &&
sudo pip install dotcloud

$ dotcloud create myapp
$ dotcloud push myapp
Ruby   Perl

•
•
• (Ruby|Perl)
CM
We’re Hiring!
Ruby プログラマのための Perl ウェブアプリケーション開発入門 (Perl web development guide for Rubyist )
Ruby プログラマのための Perl ウェブアプリケーション開発入門 (Perl web development guide for Rubyist )
Thank you!

More Related Content

Ruby プログラマのための Perl ウェブアプリケーション開発入門 (Perl web development guide for Rubyist )

Editor's Notes

  • #2: \n
  • #3: \n
  • #4: &amp;#x30ED;&amp;#x30EA;&amp;#x30DD;&amp;#x30C3;&amp;#x30D7; JUGEM &amp;#x30D6;&amp;#x30AF;&amp;#x30ED;&amp;#x30B0; &amp;#x30B6;&amp;#x30A4;&amp;#x30F3;&amp;#x30BF;&amp;#x30D3;&amp;#x30E5;&amp;#x30FC;&amp;#x30BA;\n&amp;#x30C9;&amp;#x30AF;&amp;#x30DA;&amp;#x597D;&amp;#x304D;&amp;#x306A;&amp;#x6280;&amp;#x8853;&amp;#x8CAC;&amp;#x4EFB;&amp;#x8005;&amp;#x3067;&amp;#x3082;&amp;#x6709;&amp;#x540D;\n
  • #5: &amp;#x30AA;&amp;#x30F3;&amp;#x30E9;&amp;#x30A4;&amp;#x30F3;&amp;#x5199;&amp;#x771F;&amp;#x5171;&amp;#x6709;&amp;#x30B5;&amp;#x30A4;&amp;#x30C8;\nRuby on Rails\n
  • #6: &amp;#x30B9;&amp;#x30A4;&amp;#x30C3;&amp;#x30C1;&amp;#x3057;&amp;#x305F;\n&amp;#x8A00;&amp;#x8A9E;&amp;#x306F;&amp;#x4F3C;&amp;#x3066;&amp;#x3066;&amp;#x5E73;&amp;#x6C17;&amp;#x3060;&amp;#x3063;&amp;#x305F;&amp;#x3051;&amp;#x3069;&amp;#x4ED6;&amp;#x306E;&amp;#x90E8;&amp;#x5206;&amp;#x3067;&amp;#x56F0;&amp;#x3063;&amp;#x305F;\n
  • #7: &amp;#x8A00;&amp;#x8A9E;&amp;#x4EE5;&amp;#x5916;&amp;#x306E;&amp;#x90E8;&amp;#x5206;\n&amp;#x30D9;&amp;#x30B9;&amp;#x30C8;&amp;#x30D7;&amp;#x30E9;&amp;#x30AF;&amp;#x30C6;&amp;#x30A3;&amp;#x30B9;&amp;#x304C;&amp;#x77E5;&amp;#x308A;&amp;#x305F;&amp;#x304B;&amp;#x3063;&amp;#x305F;\n
  • #8: Perl&amp;#x306E;&amp;#x300C;&amp;#x305D;&amp;#x306E;&amp;#x4ED6;&amp;#x300D;&amp;#x304C;&amp;#x308F;&amp;#x304B;&amp;#x3089;&amp;#x306A;&amp;#x3044;&amp;#x4EBA;&amp;#x3078;\n&amp;#x4E21;&amp;#x65B9;&amp;#x3061;&amp;#x3087;&amp;#x3063;&amp;#x3068;&amp;#x305A;&amp;#x3064;&amp;#x77E5;&amp;#x3063;&amp;#x3066;&amp;#x308B;&amp;#x3001;&amp;#x7FFB;&amp;#x8A33;&amp;#x3001;&amp;#x6A4B;&amp;#x6E21;&amp;#x3057;\n&amp;#x5F79;&amp;#x306B;&amp;#x7ACB;&amp;#x3066;&amp;#x308B;&amp;#x304B;&amp;#x3082;\n
  • #9: &amp;#x305D;&amp;#x3046;&amp;#x601D;&amp;#x3063;&amp;#x3066;&amp;#x3001;&amp;#x8A71;&amp;#x3059;&amp;#x3053;&amp;#x3068;&amp;#x306B;&amp;#x3057;&amp;#x305F;\n
  • #10: &amp;#x8A00;&amp;#x8A9E;&amp;#x300C;&amp;#x4EE5;&amp;#x5916;&amp;#x300D;&amp;#x306E;&amp;#x4E09;&amp;#x3064;&amp;#x306E;&amp;#x8981;&amp;#x7D20;\n
  • #11: &amp;#x30D7;&amp;#x30ED;&amp;#x30B0;&amp;#x30E9;&amp;#x30E0;&amp;#x306E;&amp;#x5B9F;&amp;#x884C;&amp;#x74B0;&amp;#x5883;\n
  • #12: Ruby&amp;#x306E;&amp;#x5B9F;&amp;#x88C5;&amp;#x3044;&amp;#x308D;&amp;#x3044;&amp;#x308D;\nrpm &amp;#x304C;&amp;#x306A;&amp;#x3044;\n&amp;#x624B;&amp;#x3067;&amp;#x30BD;&amp;#x30FC;&amp;#x30B9;&amp;#x304B;&amp;#x3089;&amp;#x30B3;&amp;#x30F3;&amp;#x30D1;&amp;#x30A4;&amp;#x30EB;&amp;#x3059;&amp;#x308B;&amp;#x306E;&amp;#x9762;&amp;#x5012;&amp;#x304F;&amp;#x3055;&amp;#x3044;\n
  • #13: \n
  • #14: \n
  • #15: \n
  • #16: \n
  • #17: \n
  • #18: \n
  • #19: \n
  • #20: \n
  • #21: \n
  • #22: &amp;#x66F8;&amp;#x3044;&amp;#x305F;&amp;#x30D7;&amp;#x30ED;&amp;#x30B0;&amp;#x30E9;&amp;#x30E0;&amp;#x3092;&amp;#x52D5;&amp;#x304B;&amp;#x3059;&amp;#x30B5;&amp;#x30FC;&amp;#x30D0;&amp;#x3068;&amp;#x304B;&amp;#x30A4;&amp;#x30F3;&amp;#x30D5;&amp;#x30E9;\n
  • #23: \n
  • #24: \n
  • #25: Salesforce\nmatz &amp;#x307E;&amp;#x3064;&amp;#x3082;&amp;#x3068;&amp;#x3086;&amp;#x304D;&amp;#x3072;&amp;#x308D; &amp;#x30C1;&amp;#x30FC;&amp;#x30D5;&amp;#x30A2;&amp;#x30FC;&amp;#x30AD;&amp;#x30C6;&amp;#x30AF;&amp;#x30C8;\nRack == Ruby &amp;#x306E;&amp;#x30A6;&amp;#x30A7;&amp;#x30D6;&amp;#x30A2;&amp;#x30D7;&amp;#x30EA;&amp;#x30B1;&amp;#x30FC;&amp;#x30B7;&amp;#x30E7;&amp;#x30F3;&amp;#x62BD;&amp;#x8C61;&amp;#x5316;&amp;#x30EC;&amp;#x30A4;&amp;#x30E4;\n
  • #26: \n
  • #27: Ruby &amp;#x306E;&amp;#x8A71;&amp;#x3070;&amp;#x3063;&amp;#x304B;&amp;#x308A;&amp;#x3057;&amp;#x3066;&amp;#x304D;&amp;#x305F;&amp;#x3051;&amp;#x3069;\nYAPC &amp;#x306A;&amp;#x306E;&amp;#x3067;&amp;#x3053;&amp;#x3053;&amp;#x304B;&amp;#x3089;&amp;#x306F; Perl &amp;#x306E;&amp;#x8A71;&amp;#x3092;\nRuby &amp;#x3092; Perl &amp;#x306B;&amp;#x7F6E;&amp;#x304D;&amp;#x63DB;&amp;#x3048;&amp;#x3066;&amp;#x307F;&amp;#x308B;\n
  • #28: \n
  • #29: &amp;#x6BD4;&amp;#x8F03;&amp;#x3057;&amp;#x3084;&amp;#x3059;&amp;#x3044;&amp;#x3088;&amp;#x3046;&amp;#x306B;&amp;#x4E09;&amp;#x3064;&amp;#x306E;&amp;#x8981;&amp;#x7D20;\n
  • #30: \n
  • #31: &amp;#x6700;&amp;#x521D;&amp;#x304B;&amp;#x3089;&amp;#x5165;&amp;#x3063;&amp;#x3066;&amp;#x308B;&amp;#x30D0;&amp;#x30FC;&amp;#x30B8;&amp;#x30E7;&amp;#x30F3;&amp;#x306F;&amp;#x53E4;&amp;#x3044;\n&amp;#x30B7;&amp;#x30B9;&amp;#x30C6;&amp;#x30E0;&amp;#x30C4;&amp;#x30FC;&amp;#x30EB;&amp;#x306A;&amp;#x3069;&amp;#x3067;&amp;#x4F7F;&amp;#x308F;&amp;#x308C;&amp;#x3066;&amp;#x3066;&amp;#x4F9D;&amp;#x5B58;&amp;#x3055;&amp;#x308C;&amp;#x3066;&amp;#x308B;&amp;#x306E;&amp;#x3067;&amp;#x30A2;&amp;#x30C3;&amp;#x30D7;&amp;#x30C7;&amp;#x30FC;&amp;#x30C8;&amp;#x3057;&amp;#x3065;&amp;#x3089;&amp;#x3044;\n&amp;#x6A19;&amp;#x6E96;&amp;#x30E2;&amp;#x30B8;&amp;#x30E5;&amp;#x30FC;&amp;#x30EB;&amp;#x306E;&amp;#x65B0;&amp;#x3057;&amp;#x3044;&amp;#x30D0;&amp;#x30FC;&amp;#x30B8;&amp;#x30E7;&amp;#x30F3;&amp;#x3092; cpan &amp;#x3067;&amp;#x5165;&amp;#x308C;&amp;#x308B;&amp;#x3068;&amp;#x30AB;&amp;#x30AA;&amp;#x30B9;&amp;#x306B;\n
  • #32: &amp;#x88CF;&amp;#x3067;&amp;#x3084;&amp;#x3063;&amp;#x3066;&amp;#x308B;\n&amp;#x306A;&amp;#x3093;&amp;#x3067;&amp;#x30D3;&amp;#x30FC;&amp;#x30EB;&amp;#x3068;&amp;#x5FCD;&amp;#x8005;&amp;#x306A;&amp;#x306E;&amp;#x304B;&amp;#x8B0E;\n
  • #33: \n
  • #34: \n
  • #35: \n
  • #36: \n
  • #37: &amp;#x6211;&amp;#x3005;&amp;#x306F; Perl &amp;#x3067;&amp;#x3082; Sinatra &amp;#x304C;&amp;#x6B32;&amp;#x3057;&amp;#x3044;&amp;#x308F;&amp;#x3051;&amp;#x3067;&amp;#x3059;\n
  • #38: &amp;#x4F9D;&amp;#x5B58;&amp;#x304C;&amp;#x5C11;&amp;#x306A;&amp;#x3044;&amp;#x306E;&amp;#x3067;&amp;#x30A4;&amp;#x30F3;&amp;#x30B9;&amp;#x30C8;&amp;#x30FC;&amp;#x30EB;&amp;#x304C;&amp;#x7C21;&amp;#x5358;\n&amp;#x59CB;&amp;#x3081;&amp;#x3084;&amp;#x3059;&amp;#x3044;\n
  • #39: \n
  • #40: \n
  • #41: \n
  • #42: Perl &amp;#x306F; CGI &amp;#x3068;&amp;#x30BB;&amp;#x30C3;&amp;#x30C8;&amp;#x3067;&amp;#x8A9E;&amp;#x3089;&amp;#x308C;&amp;#x308B;&amp;#x3053;&amp;#x3068;&amp;#x304C;&amp;#x591A;&amp;#x3044;\n&amp;#x30D5;&amp;#x30EC;&amp;#x30FC;&amp;#x30E0;&amp;#x30EF;&amp;#x30FC;&amp;#x30AF;&amp;#x306B;&amp;#x6163;&amp;#x308C;&amp;#x308B;&amp;#x3068; CGI &amp;#x3068;&amp;#x304B;&amp;#x66F8;&amp;#x304D;&amp;#x305F;&amp;#x304F;&amp;#x306A;&amp;#x3044;&amp;#x308F;&amp;#x3051;&amp;#x3067;&amp;#x3059;\nPerl &amp;#x3067;&amp;#x3082; Heroku &amp;#x304C;&amp;#x6B32;&amp;#x3057;&amp;#x3044;&amp;#x308F;&amp;#x3051;&amp;#x3067;&amp;#x3059;\n
  • #43: \n
  • #44: @miyagawa\n
  • #45: Python &amp;#x3067;&amp;#x66F8;&amp;#x304B;&amp;#x308C;&amp;#x3066;&amp;#x308B;\n&amp;#x3053;&amp;#x308C;&amp;#x304C; Perl &amp;#x3060;&amp;#x3063;&amp;#x305F;&amp;#x3089;...\n
  • #46: \n
  • #47: &amp;#x3069;&amp;#x3063;&amp;#x3061;&amp;#x3082;&amp;#x59CB;&amp;#x3081;&amp;#x3084;&amp;#x3059;&amp;#x3044;&amp;#x3057;&amp;#x6B62;&amp;#x3081;&amp;#x3084;&amp;#x3059;&amp;#x3044;\n
  • #48: \n
  • #49: \n
  • #50: \n
  • #51: \n
  • #52: \n
  • #53: \n
  • #54: \n
  • #55: \n
  • #56: &amp;#x8A00;&amp;#x8A9E;&amp;#x4EE5;&amp;#x5916;&amp;#x306E;&amp;#x90E8;&amp;#x5206;&amp;#x3082;&amp;#x3088;&amp;#x304F;&amp;#x4F3C;&amp;#x3066;&amp;#x3044;&amp;#x308B;\n&amp;#x30B9;&amp;#x30A4;&amp;#x30C3;&amp;#x30C1;&amp;#x306F;&amp;#x305D;&amp;#x308C;&amp;#x307B;&amp;#x3069;&amp;#x96E3;&amp;#x3057;&amp;#x304F;&amp;#x306A;&amp;#x3044;&amp;#x306E;&amp;#x3067;&amp;#x8A66;&amp;#x3057;&amp;#x3066;&amp;#x307F;&amp;#x3066;&amp;#x304F;&amp;#x3060;&amp;#x3055;&amp;#x3044;\n
  • #57: \n
  • #58: \n
  • #59: &amp;#x798F;&amp;#x5CA1;&amp;#x652F;&amp;#x793E;\nDAZAIFU PROJECT &amp;#x65B0;&amp;#x898F;&amp;#x30B5;&amp;#x30FC;&amp;#x30D3;&amp;#x30B9;&amp;#x958B;&amp;#x767A;&amp;#x30D7;&amp;#x30ED;&amp;#x30B8;&amp;#x30A7;&amp;#x30AF;&amp;#x30C8;\nRuby, Rails, MongoDB, node.js\n
  • #60: Github &amp;#x30B8;&amp;#x30E7;&amp;#x30D6;&amp;#x30DC;&amp;#x30FC;&amp;#x30C9;&amp;#x3067;&amp;#x3082;&amp;#x6C42;&amp;#x4EBA;&amp;#x3057;&amp;#x3066;&amp;#x307E;&amp;#x3059;\n&amp;#x8208;&amp;#x5473;&amp;#x306E;&amp;#x3042;&amp;#x308B;&amp;#x65B9;&amp;#x306F;&amp;#x305C;&amp;#x3072;&amp;#x58F0;&amp;#x3092;&amp;#x304B;&amp;#x3051;&amp;#x3066;&amp;#x304F;&amp;#x3060;&amp;#x3055;&amp;#x3044;\n
  • #61: &amp;#x4EE5;&amp;#x4E0A;&amp;#x3067;&amp;#x3059;\n&amp;#x3054;&amp;#x6E05;&amp;#x8074;&amp;#x3042;&amp;#x308A;&amp;#x304C;&amp;#x3068;&amp;#x3046;&amp;#x3054;&amp;#x3056;&amp;#x3044;&amp;#x307E;&amp;#x3057;&amp;#x305F;\n








ApplySandwichStrip

pFad - (p)hone/(F)rame/(a)nonymizer/(d)eclutterfier!      Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

Fetched URL: http://www.slideshare.net/kyanny/rubyist-perl-perl-web-development-guide-for-rubyist

Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy