Ruby on Rails Fundamentals<br />6:30 PM - 8:30 PM<br />Aug 25 - Sep 29<br />
What is Ruby on Rails?<br />Ruby is a language.  Rails is a framework.<br />If you want to understand Rails, you need to b...
The Ruby Language<br />Originally  by Yukihiro &quot;Matz&quot; Matsumoto<br />“Ruby is designed for programmer productivi...
What you will learn<br />Ruby<br />Language concepts<br />Language syntax<br />Common patterns<br />Rails Framework: creat...
How you will learn<br />Exploration: experiment, play<br />Test-Driven Development (TDD)<br />Initially as a learning meth...
Class Structure<br />Talk<br />Live Coding Demonstrations<br />In-class coding<br />Coding at home (or in social groups)<b...
Ruby Language Overview<br />Dynamically typed<br />Interpreted<br />Can be modified at runtime<br />Object oriented<br />B...
Lets get started<br />IRB: InteractiveRuBy<br />&gt;&gt; 4<br />&gt;&gt; 4 + 4<br />
Everything is an object<br />“test”.upcase<br />“test”.class<br />“test”.methods<br />
Everything evaluates to something<br />2 + 2<br />(2+2).zero?<br />
Methods are Messages<br />thing.do(4)<br />thing.do 4<br />thing.send “do”, 4<br />
Operators are Methods<br />thing.do 4<br />thing.do(4)<br />thing.send “do”, 4<br />1 + 2<br />1.+(2)<br />1.send &quot;+&...
Iteration<br />my_list  = [&quot;cat&quot;, &quot;dog&quot;, ”world&quot;]<br />my_list .each do |item|<br />  puts &quot;...
Test-First Learning<br />Similar methodology to TDDwith a different purpose and workflow<br />Teacher writes the test<br /...
Test-Driven Development<br />Design<br />Focus / Project Management<br />Creation of Tests<br />
Time to Write Code<br />
Upcoming SlideShare
Loading in …5
×

Ruby on Rails Fundamentals, Class 1

2,141 views
2,027 views

Published on

Ruby on Rails Fundamentals, slides for Class 1

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,141
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
30
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Ruby on Rails Fundamentals, Class 1

  1. 1. Ruby on Rails Fundamentals<br />6:30 PM - 8:30 PM<br />Aug 25 - Sep 29<br />
  2. 2. What is Ruby on Rails?<br />Ruby is a language. Rails is a framework.<br />If you want to understand Rails, you need to be fluent in Ruby.<br />Rails applications are Ruby applications.<br />
  3. 3. The Ruby Language<br />Originally by Yukihiro &quot;Matz&quot; Matsumoto<br />“Ruby is designed for programmer productivity and fun, following the principles of good user interface design. He stresses that systems design needs to emphasize human, rather than computer, needs.”<br />http://en.wikipedia.org/wiki/Ruby_(programming_language)#History<br />Ruby 1.0 was released in 1996. <br />
  4. 4. What you will learn<br />Ruby<br />Language concepts<br />Language syntax<br />Common patterns<br />Rails Framework: creating web applications<br />Scaffold<br />Model, View, Controllers<br />SQL Queries<br />HTTP with REST and Routes<br />Log files and debugging<br />Associations<br />
  5. 5. How you will learn<br />Exploration: experiment, play<br />Test-Driven Development (TDD)<br />Initially as a learning methodology<br />Later as a development methodology<br />Ask questions<br />Learn to find your own answers<br />Read<br />Plus whatever works best for you<br />
  6. 6. Class Structure<br />Talk<br />Live Coding Demonstrations<br />In-class coding<br />Coding at home (or in social groups)<br />Google Group<br />
  7. 7. Ruby Language Overview<br />Dynamically typed<br />Interpreted<br />Can be modified at runtime<br />Object oriented<br />Blocks & lambdas<br />Nice support for Regular Expressions <br />
  8. 8. Lets get started<br />IRB: InteractiveRuBy<br />&gt;&gt; 4<br />&gt;&gt; 4 + 4<br />
  9. 9. Everything is an object<br />“test”.upcase<br />“test”.class<br />“test”.methods<br />
  10. 10. Everything evaluates to something<br />2 + 2<br />(2+2).zero?<br />
  11. 11. Methods are Messages<br />thing.do(4)<br />thing.do 4<br />thing.send “do”, 4<br />
  12. 12. Operators are Methods<br />thing.do 4<br />thing.do(4)<br />thing.send “do”, 4<br />1 + 2<br />1.+(2)<br />1.send &quot;+&quot;, 2<br />
  13. 13. Iteration<br />my_list = [&quot;cat&quot;, &quot;dog&quot;, ”world&quot;]<br />my_list .each do |item|<br /> puts &quot;hello&quot; + item<br />end<br />
  14. 14. Test-First Learning<br />Similar methodology to TDDwith a different purpose and workflow<br />Teacher writes the test<br />Student implements the code<br />
  15. 15. Test-Driven Development<br />Design<br />Focus / Project Management<br />Creation of Tests<br />
  16. 16. Time to Write Code<br />

×