oficina ruby on rails fatec

Post on 15-Dec-2014

702 Views

Category:

Technology

3 Downloads

Preview:

Click to see full reader

DESCRIPTION

Slides da Oficina de Ruby on Rails realizada na FATEC Sorocaba.

TRANSCRIPT

Ruby on RailsOficina

por Guilherme Vinicius

sábado, 4 de junho de 2011

Desculpas pela apresentação.=(

sábado, 4 de junho de 2011

sábado, 4 de junho de 2011

sábado, 4 de junho de 2011

sábado, 4 de junho de 2011

Quem sou eu ?

sábado, 4 de junho de 2011

Quem sou eu ?

Guilherme Vinicius Moreira

sábado, 4 de junho de 2011

Quem sou eu ?

Guilherme Vinicius Moreira (Harry)

sábado, 4 de junho de 2011

Quem sou eu ?

Guilherme Vinicius Moreira (Harry)

Desde 2007 em desenv. de Software

sábado, 4 de junho de 2011

Quem sou eu ?

Guilherme Vinicius Moreira (Harry)

Desde 2007 em desenv. de Software

Desde 2010 com Rails

sábado, 4 de junho de 2011

Quem sou eu ?

Guilherme Vinicius Moreira (Harry)

Desde 2007 em desenv. de Software

Desde 2010 com Rails

SEMPRE WEB!!!

sábado, 4 de junho de 2011

Quem sou eu ?

Guilherme Vinicius Moreira (Harry)

Desde 2007 em desenv. de Software

Desde 2010 com Rails

SEMPRE WEB!!!

@guiviniciusgui.vinicius@gmail.com

sábado, 4 de junho de 2011

Quem são vocês ?

sábado, 4 de junho de 2011

Objetivos de hoje!

sábado, 4 de junho de 2011

Objetivos de hoje!

Despertar curiosidade

sábado, 4 de junho de 2011

Objetivos de hoje!

Despertar curiosidade

Contribuir para a comunidade Ruby / Rails

sábado, 4 de junho de 2011

Objetivos de hoje!

Despertar curiosidade

Contribuir para a comunidade Ruby / Rails

Aprender / Ensinar

sábado, 4 de junho de 2011

Ruby on Rails

sábado, 4 de junho de 2011

Ruby on Rails

Linguagem

sábado, 4 de junho de 2011

Ruby on Rails

Linguagem

Framework

sábado, 4 de junho de 2011

RUGBY

RUBY

sábado, 4 de junho de 2011

RUGBY

RUBY

sábado, 4 de junho de 2011

sábado, 4 de junho de 2011

sábado, 4 de junho de 2011

sábado, 4 de junho de 2011

sábado, 4 de junho de 2011

História

sábado, 4 de junho de 2011

1993 - 1995

História

sábado, 4 de junho de 2011

1993 - 1995

História

sábado, 4 de junho de 2011

1993 - 1995

História

Yukihiro Matsumoto, ou “Matz”

sábado, 4 de junho de 2011

Filosofia

sábado, 4 de junho de 2011

Filosofia

“ ... estou trabalhando para fazer o Ruby uma linguagem natural, não simples. ”

sábado, 4 de junho de 2011

Filosofia

“ ... estou trabalhando para fazer o Ruby uma linguagem natural, não simples. ”

“ Ruby é simples na aparência, mas é muito complicada internamente, igual o

corpo humano. ”

sábado, 4 de junho de 2011

Mas como ?

sábado, 4 de junho de 2011

Mas como ?

sábado, 4 de junho de 2011

Mas como ?

sábado, 4 de junho de 2011

Mas como ?

sábado, 4 de junho de 2011

Mas como ?

sábado, 4 de junho de 2011

Mas como ?

sábado, 4 de junho de 2011

Versões

1.9.2

1.8.7

REEsábado, 4 de junho de 2011

http://www.ruby-lang.org

sábado, 4 de junho de 2011

http://tryruby.org/

sábado, 4 de junho de 2011

http://www.jruby.org/

sábado, 4 de junho de 2011

http://www.macruby.org/

sábado, 4 de junho de 2011

http://rubini.us/

sábado, 4 de junho de 2011

sábado, 4 de junho de 2011

E o código ?

sábado, 4 de junho de 2011

sábado, 4 de junho de 2011

“Hello World”

Ruby

sábado, 4 de junho de 2011

“Hello World”

puts "Hello World"

Ruby

sábado, 4 de junho de 2011

“Hello World”

Java

sábado, 4 de junho de 2011

“Hello World”

public class HelloWorld { public static void main(String[] args) { System.out.println("Hello World"); }}

Java

sábado, 4 de junho de 2011

“Hello World”

public class HelloWorld { public static void main(String[] args) { System.out.println("Hello World"); }}

Java

sábado, 4 de junho de 2011

“Hello World”

C

sábado, 4 de junho de 2011

“Hello World”

#include <stdio.h>

int main(){

printf(“Hello World\n”);return 0;

}

C

sábado, 4 de junho de 2011

“Hello World”

#include <stdio.h>

int main(){

printf(“Hello World\n”);return 0;

}

C

sábado, 4 de junho de 2011

“Hello World”

puts "Hello World"

Ruby

sábado, 4 de junho de 2011

“Hello World”

puts "Hello World"

Ruby

sábado, 4 de junho de 2011

puts "Hello World".class# => String

puts 1.class# => Fixnum

puts true.class# => TrueClass

puts nil.class# => Nilclass

sábado, 4 de junho de 2011

Funções

sábado, 4 de junho de 2011

def welcome(name) return "Welcome, " + nameend

puts welcome("Harry")# => Welcome, Harry

Funções

sábado, 4 de junho de 2011

def welcome(name) return "Welcome, " + nameend

puts welcome "Harry"# => Welcome, Harry

Funções Parênteses opcionais

sábado, 4 de junho de 2011

def welcome(name) "Welcome, " + nameend

puts welcome "Harry"# => Welcome, Harry

Funções Return automático

sábado, 4 de junho de 2011

def welcome(name) "Welcome, #{name}"end

puts welcome "Harry"# => Welcome, Harry

Funções Interpolação

sábado, 4 de junho de 2011

class Fixnum def welcome(name) self.times { puts "Welcome, #{name}" } endend

5.welcome("Harry")

Classes

sábado, 4 de junho de 2011

class Pessoa def chora puts "#{self.class} chorando" endend

class Aluno < Pessoa def reprova! puts "Aluno reprovado!" endend

aluno = Aluno.newaluno.reprova! # => Aluno reprovado!aluno.chora # => Aluno chorando

Classes

sábado, 4 de junho de 2011

[14, 35, -7, 46, 98].min[14, 35, -7, 46, 98].max

Mais código!

4.times { |n| puts "Happy Birthday #{n==2 ? "dear Tony" : "to You"}" }

Array.new(6).collect {rand 60}.sort

sábado, 4 de junho de 2011

sábado, 4 de junho de 2011

sábado, 4 de junho de 2011

PRONTO AGORA VOCÊ JÁ É UM MESTRE NO RUBY!

sábado, 4 de junho de 2011

sábado, 4 de junho de 2011

Quem ser bom em Ruby ou em qualquer outra coisa ?

sábado, 4 de junho de 2011

sábado, 4 de junho de 2011

E as Gems ?

sábado, 4 de junho de 2011

E as Gems ?

Pacotes/Programas

sábado, 4 de junho de 2011

E as Gems ?

Pacotes/Programas

(Ruby) Gem == Jar (Java)

sábado, 4 de junho de 2011

E as Gems ?

Pacotes/Programas

(Ruby) Gem == Jar (Java)

rubygems

sábado, 4 de junho de 2011

E as Gems ?

Pacotes/Programas

(Ruby) Gem == Jar (Java)

rubygems

sudo gem install heroku

sábado, 4 de junho de 2011

http://rubygems.org/

sábado, 4 de junho de 2011

Curti e agora ?

Por onde começo ?

sábado, 4 de junho de 2011

http://www.google.com.br

sábado, 4 de junho de 2011

Ambientes ??

sábado, 4 de junho de 2011

sábado, 4 de junho de 2011

Mac OS

sábado, 4 de junho de 2011

Mac OS

Linux

sábado, 4 de junho de 2011

Mac OS

Linux

Windows

sábado, 4 de junho de 2011

Mac OS

Linux

Windows

RVM

sábado, 4 de junho de 2011

Mac OS

Linux

Windows

RVM

RVM

sábado, 4 de junho de 2011

Mac OS

Linux

Windows

RVM

RVM

RubyInstaller

sábado, 4 de junho de 2011

Mac OS

Linux

Windows

RVM

RVM

RubyInstaller

Recomendados

sábado, 4 de junho de 2011

Mac OS

Linux

Windows

RVM

RVM

RubyInstaller

Recomendados

sábado, 4 de junho de 2011

Mac OS

Linux

Windows

RVM

RVM

RubyInstaller

Recomendados

sábado, 4 de junho de 2011

http://rubyinstaller.org/

sábado, 4 de junho de 2011

https://rvm.beginrescueend.com/

sábado, 4 de junho de 2011

Dúvidas ?

sábado, 4 de junho de 2011

sábado, 4 de junho de 2011

sábado, 4 de junho de 2011

História

sábado, 4 de junho de 2011

História

David Heinemeier Hansson

sábado, 4 de junho de 2011

História

David Heinemeier Hansson(DHH)

sábado, 4 de junho de 2011

História

David Heinemeier Hansson(DHH)

37signals

sábado, 4 de junho de 2011

História

David Heinemeier Hansson(DHH)

37signals

Basecamp

sábado, 4 de junho de 2011

História

David Heinemeier Hansson(DHH)

37signals

Basecamp

Rails (2004)

sábado, 4 de junho de 2011

http://basecamphq.com/

sábado, 4 de junho de 2011

Filosofia

Convention over Configuration (CoC)

Don’t Repeat Yourself (DRY)

sábado, 4 de junho de 2011

Filosofia

Convention over Configuration (CoC)

Don’t Repeat Yourself (DRY)

Diminuir o número de decisões do desenvolvedor.Ganhando simplicidade, sem perder o a flexibilidade.

sábado, 4 de junho de 2011

Filosofia

Convention over Configuration (CoC)

Don’t Repeat Yourself (DRY)

Diminuir o número de decisões do desenvolvedor.Ganhando simplicidade, sem perder o a flexibilidade.

Reutilização de código.

sábado, 4 de junho de 2011

MVC

Controller

Model View

Lógica

Visualização

Dados

sábado, 4 de junho de 2011

Versões

3.0.7

3.1.x RC1

sábado, 4 de junho de 2011

Versões

3.0.7

3.1.x RC1

sábado, 4 de junho de 2011

3.1.x

sábado, 4 de junho de 2011

3.1.x

MVC

sábado, 4 de junho de 2011

3.1.x

MVC

sábado, 4 de junho de 2011

3.1.x

MVC3.1.x

sábado, 4 de junho de 2011

3.1.x

MVC3.1.x

sábado, 4 de junho de 2011

3.1.x

MVC3.1.x

sábado, 4 de junho de 2011

3.1.x

MVC3.1.x

sábado, 4 de junho de 2011

Comandos Básicos

Rails

sábado, 4 de junho de 2011

Comandos Básicos

Criando uma nova aplicação!

sábado, 4 de junho de 2011

Comandos Básicos

Criando uma nova aplicação!

sábado, 4 de junho de 2011

Comandos Básicos

rails new myApp

Criando uma nova aplicação!

sábado, 4 de junho de 2011

Comandos Básicos

Rails generate

sábado, 4 de junho de 2011

Comandos Básicos

Rails generate

sábado, 4 de junho de 2011

Comandos Básicos

rake -T

sábado, 4 de junho de 2011

Comandos Básicos

rake -T

sábado, 4 de junho de 2011

Receita de Bolo

rails new app

rails g scaffold MODEL FIELD:TYPE

rake db:migrate

rails server

sábado, 4 de junho de 2011

Receita de Bolo

rails new app

rails g scaffold MODEL FIELD:TYPE

rake db:migrate

rails server

http://localhost:3000/model (plural)

sábado, 4 de junho de 2011

sábado, 4 de junho de 2011

Rails funcionaria na minha empresa ?

sábado, 4 de junho de 2011

Rails funcionaria na minha empresa ?

Why not ?

sábado, 4 de junho de 2011

http://isitrails.com/

sábado, 4 de junho de 2011

Curti e agora ?

Por onde começo ?

sábado, 4 de junho de 2011

http://www.google.com.br

sábado, 4 de junho de 2011

http://rubyonrails.org/

sábado, 4 de junho de 2011

http://guides.rubyonrails.org/

sábado, 4 de junho de 2011

http://railscasts.com/

sábado, 4 de junho de 2011

sábado, 4 de junho de 2011

DÚVIDAS ?

sábado, 4 de junho de 2011

Quem nunca foi salvo por um código da internet ?

sábado, 4 de junho de 2011

sábado, 4 de junho de 2011

1 milhãode desenvolvedores

4M até 2013 (Gartner)

sábado, 4 de junho de 2011

sábado, 4 de junho de 2011

sábado, 4 de junho de 2011

https://github.com/

sábado, 4 de junho de 2011

http://stackoverflow.com

sábado, 4 de junho de 2011

sábado, 4 de junho de 2011

Escreva código!

sábado, 4 de junho de 2011

Escreva código!

Publique código!

sábado, 4 de junho de 2011

Escreva código!

Publique código!

Contribua!

sábado, 4 de junho de 2011

Escreva código!

Publique código!

Contribua! (código)

sábado, 4 de junho de 2011

É HORA DE CODIFICAR

sábado, 4 de junho de 2011

É HORA DE CODIFICAR

sábado, 4 de junho de 2011

sábado, 4 de junho de 2011

- CRIAR UMA APP BÁSICA

sábado, 4 de junho de 2011

- CRIAR UMA APP BÁSICA

- ENVIAR PARA O GITHUB

sábado, 4 de junho de 2011

- CRIAR UMA APP BÁSICA

- ENVIAR PARA O GITHUB

- ENVIAR PARA O HEROKU

sábado, 4 de junho de 2011

http://www.heroku.com/

sábado, 4 de junho de 2011

http://git-scm.com/

sábado, 4 de junho de 2011

Dúvidas ?

sábado, 4 de junho de 2011

GURU - Sorocaba

sábado, 4 de junho de 2011

GEMP - Sorocaba

sábado, 4 de junho de 2011

@guivinicius

gui.vinicius@gmail.com

Onde me encontrar ?

http://www.facebook.com/guivinicius

sábado, 4 de junho de 2011

Não é só o meu que fica na reta!

sábado, 4 de junho de 2011

Não é só o meu que fica na reta!

@lucasrenan

sábado, 4 de junho de 2011

Não é só o meu que fica na reta!

@lucasrenan

@tiagogodinho

sábado, 4 de junho de 2011

Não é só o meu que fica na reta!

@lucasrenan

@tiagogodinho

@Kssi4

sábado, 4 de junho de 2011

Muito Obrigado!

sábado, 4 de junho de 2011

Muito Obrigado!

sábado, 4 de junho de 2011

top related