clrh58

79
Rails CLR/H 前鼻 @sandinist #CLRH58 たのしい Sunday, May 22, 2011

Upload: maehana-tsuyoshi

Post on 16-May-2015

1.019 views

Category:

Technology


0 download

DESCRIPTION

clr/h 58 session slide. Fun Rails for .Netters.

TRANSCRIPT

Page 1: clrh58

Rails CLR/H

前鼻 毅 @sandinist

#CLRH58

たのしい

Sunday, May 22, 2011

Page 2: clrh58

Rails CLR/H

前鼻 毅 @sandinist

#CLRH58

たのしいfor .Netter版

Sunday, May 22, 2011

Page 3: clrh58

2

Rails CLR/H

前鼻 毅 @sandinist

#CLRH58

たのしいfor .Netter版

Sunday, May 22, 2011

Page 4: clrh58

自己紹介

• 前鼻毅 @sandinist

• 三十路はいりました

• スープカレー好き

Sunday, May 22, 2011

Page 5: clrh58

Sunday, May 22, 2011

Page 6: clrh58

Sunday, May 22, 2011

Page 7: clrh58

LANGUAGE

・VBA

・VisualBasic.Net

・C#

・Ruby

・Objective-C

Sunday, May 22, 2011

Page 8: clrh58

COMMUNITY

Sunday, May 22, 2011

Page 9: clrh58

COMMUNITY

・CLR/H

・Ruby札幌・数学勉強会札幌

Sunday, May 22, 2011

Page 10: clrh58

Ruby / Rails

・札幌Ruby会議03

・日経ソフトウェア

Sunday, May 22, 2011

Page 11: clrh58

Sunday, May 22, 2011

Page 12: clrh58

Sunday, May 22, 2011

Page 13: clrh58

Sunday, May 22, 2011

Page 14: clrh58

Rails 入門DAY

Sunday, May 22, 2011

Page 15: clrh58

2Rails 入門DAY

Sunday, May 22, 2011

Page 16: clrh58

Agenda

•前回のおさらい•Ruby on Rails ことはじめ2

•公開

Sunday, May 22, 2011

Page 17: clrh58

Previous Goal

•Ruby on Railsの特徴がわかる

•簡単なRailsアプリをつくれる

Sunday, May 22, 2011

Page 18: clrh58

Previous

•Ruby, Railsの特徴を紹介できた

•Railsアプリの簡単な作り方を紹介した

•つくれるようになったかは…?

Sunday, May 22, 2011

Page 19: clrh58

Today’s Goal

•簡単なRailsアプリをつくれる

•Railsアプリを公開できる

Sunday, May 22, 2011

Page 20: clrh58

Today’s Goal

•簡単なRailsアプリをつくれる

•Railsアプリを公開できる

と、おもえる。Sunday, May 22, 2011

Page 21: clrh58

前回のおさらいSunday, May 22, 2011

Page 22: clrh58

RubySunday, May 22, 2011

Page 23: clrh58

Matz

Rubyのお父さんMatz is nice and so we are nice.

Sunday, May 22, 2011

Page 24: clrh58

Sunday, May 22, 2011

Page 25: clrh58

プログラマの気持ちを理解し、その気持ちに答えるような言語をデザインしたつもりです

初版 まえがきSunday, May 22, 2011

Page 26: clrh58

「自分が楽にプログラミングするため」の工夫で一杯です

第2版 まえがきSunday, May 22, 2011

Page 27: clrh58

Programmer Oriented

Sunday, May 22, 2011

Page 28: clrh58

TrustSunday, May 22, 2011

Page 29: clrh58

SimpleSunday, May 22, 2011

Page 30: clrh58

そのような「人間としてのプログラマ」を認めてくれる言語とコミュニティの居心地の良さが、プログラマのRubyに対する愛の根源にあるのかもしれません。

第3版 まえがきSunday, May 22, 2011

Page 31: clrh58

HappySunday, May 22, 2011

Page 32: clrh58

大いなる力には大いなる責任が伴う

Sunday, May 22, 2011

Page 33: clrh58

大いなる力には大いなる責任が伴う

Sunday, May 22, 2011

Page 34: clrh58

RailsSunday, May 22, 2011

Page 35: clrh58

David Heinemeier Hansson

DHH

Sunday, May 22, 2011

Page 36: clrh58

http://en.oreilly.com/rails2011Sunday, May 22, 2011

Page 37: clrh58

http://tabelog.com/

http://cookpad.com/

https://my.rakuten.co.jp/

http://atnd.org/

http://twitter.com/

http://www.groupon.jp/

https://www.quanp.net/

Sunday, May 22, 2011

Page 38: clrh58

MVCCoCDRYREST

DynamicLanguagesObjectRelationalMapping

TestingTools

Rails Culture & Feature

Sunday, May 22, 2011

Page 39: clrh58

MVC is a Architecture

PatternSunday, May 22, 2011

Page 40: clrh58

DRY 原則がうまく適用されたとき、システムに対するいかなる要素の変更も、論理的に関連のない他の要素の変更にはつながらない。さらに、論理的に関連した要素は予測できる形で統一的に変更され、したがってそれらの変更は同

期が取れたものとなる。

Sunday, May 22, 2011

Page 42: clrh58

Sunday, May 22, 2011

Page 43: clrh58

Scaffold Demo

• rails new AppName

• bundle install

• rails scaffold task name:string description:text due_date:date done:boolean

• rake db:migrate

• rails server

Sunday, May 22, 2011

Page 44: clrh58

Sunday, May 22, 2011

Page 45: clrh58

version1.0がでましたね!Sunday, May 22, 2011

Page 46: clrh58

Agenda

•前回のおさらい•Ruby on Rails ことはじめ2

•公開

Sunday, May 22, 2011

Page 47: clrh58

壁Sunday, May 22, 2011

Page 48: clrh58

経験を積んだプログラマはコンピュータに呪文のようなプログラムを打ち込み、自由に従わせているように見えます。その上そういう人たちは決まって「プログラミングはたのしいよ」などというのです。しかしプログラム経験のない人にとっては魔術の親戚ですし、コンピュータは魔法の箱ですし、決して思い通りには動いてくれないものです。 第2版 まえがき

Sunday, May 22, 2011

Page 49: clrh58

しかし考えて見れば、彼らだって人間ですし、コンピュータはただの道具です。彼らが「たのしい」といい、初心者が苦痛だと考えるならば、そこにはなにか秘密があるに違いありません。(中略)

Rubyはその秘密の1つです。第2版 まえがきSunday, May 22, 2011

Page 50: clrh58

Unix/Linux

Ruby

Web

RESTURI

エディタ

Webサーバ

gem

エコシステム

UnitTestIDE

コマンド 自前ビルド

リファレンスサンプル

Git

Agile文化言語自体

HTML

CSS

Sunday, May 22, 2011

Page 52: clrh58

Just Do It

Sunday, May 22, 2011

Page 53: clrh58

Create Demo App

• rails new AppName

• bundle install

• rails scaffold task name:string description:text due_date:date done:boolean

• rake db:migrate

• rails server

< edit Gemfile

< edit app code

Sunday, May 22, 2011

Page 54: clrh58

Create Demo App 1

• 生成されるファイルの確認

• CSS, Javascriptの配置

• ルートの確認

• コントローラの確認

• モデルに検証ルールを追加

• ビューのヘルパメソッドの説明Sunday, May 22, 2011

Page 55: clrh58

Create Demo App 2

• カスタムアクションの追加

• 自作ヘルパーメソッド追加

• モデルへのロジック移行

• 他ライブラリ、パッケージ追加

• シードデータの修正

• 基礎的なデバッグ方法の説明Sunday, May 22, 2011

Page 56: clrh58

Agenda

•前回のおさらい•Ruby on Rails ことはじめ2

•公開

Sunday, May 22, 2011

Page 57: clrh58

herokuSunday, May 22, 2011

Page 58: clrh58

Sunday, May 22, 2011

Page 59: clrh58

heroku• PaaS , Ruby/RailsのWebサービスのホスティングサービス

• 12万のアプリケーションが稼働中(2011/3)

• フリーミアムモデル

• gitを利用した簡便な運用フロー

• Add-on, 外部サービスとの連携による拡張性

• Salesforce.comによって買収Sunday, May 22, 2011

Page 60: clrh58

http://nekostagram.heroku.com/Sunday, May 22, 2011

Page 61: clrh58

http://inustagram.heroku.com/Sunday, May 22, 2011

Page 62: clrh58

http://shiba.heroku.com/Sunday, May 22, 2011

Page 63: clrh58

http://instagram.heroku.com/Sunday, May 22, 2011

Page 64: clrh58

http://threesize.heroku.com/Sunday, May 22, 2011

Page 65: clrh58

http://enju.heroku.com/Sunday, May 22, 2011

Page 66: clrh58

http://pray4japan.heroku.com/Sunday, May 22, 2011

Page 67: clrh58

http://tasukeai.heroku.com/gallerySunday, May 22, 2011

Page 68: clrh58

heroku

Sunday, May 22, 2011

Page 69: clrh58

heroku

Sunday, May 22, 2011

Page 70: clrh58

Publish to heroku

Sunday, May 22, 2011

Page 71: clrh58

gitSunday, May 22, 2011

Page 72: clrh58

> sudo gem install heroku

> rails new heroku-demo

> heroku create heroku-demo

:

> git push heroku master

> heroku rake db:migrate

Publish to heroku

Sunday, May 22, 2011

Page 73: clrh58

> sudo gem install heroku

> rails new heroku-demo

> heroku create heroku-demo

:

> git push heroku master

> heroku rake db:migrateSSL接続用の公開鍵が必要

Publish to heroku

Sunday, May 22, 2011

Page 74: clrh58

Create heroku App

> git init

> git add .

> git commit -m”hoge”

> heroku stack

> heroku stack:migrate ~

> sudo gem install heroku

> rails new heroku-demo

> heroku create heroku-demo

> git push heroku master

> heroku rake db:migrate

> rails generate scaffold..

> rake db:migrate

:

Sunday, May 22, 2011

Page 75: clrh58

DEMOSunday, May 22, 2011

Page 76: clrh58

Fun Programming!

Sunday, May 22, 2011

Page 77: clrh58

http://guides.rubyonrails.org/

Sunday, May 22, 2011

Page 78: clrh58

https://github.com/

Sunday, May 22, 2011

Page 79: clrh58

Flickr

http://www.flickr.com/photos/jesper/252308266/http://www.flickr.com/photos/john_lam/1910968816/http://www.flickr.com/photos/lightfalling/2374353261/http://www.flickr.com/photos/theophilusphotography/5470030376/http://www.flickr.com/photos/koichiroo/4945805140/http://www.flickr.com/photos/colinthedog/3389366853/http://www.flickr.com/photos/7891209@N04/2639183521/http://www.flickr.com/photos/bazylek/4413112335/

Sunday, May 22, 2011