Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Ruby on Rails SS09 03

1,038 views

Published on

Ruby Einführung

Published in: Technology
  • DOWNLOAD THAT BOOKS INTO AVAILABLE FORMAT (2019 Update) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://urlzs.com/UABbn } ......................................................................................................................... Download Full EPUB Ebook here { https://urlzs.com/UABbn } ......................................................................................................................... Download Full doc Ebook here { https://urlzs.com/UABbn } ......................................................................................................................... Download PDF EBOOK here { https://urlzs.com/UABbn } ......................................................................................................................... Download EPUB Ebook here { https://urlzs.com/UABbn } ......................................................................................................................... Download doc Ebook here { https://urlzs.com/UABbn } ......................................................................................................................... ......................................................................................................................... ................................................................................................................................... eBook is an electronic version of a traditional print book that can be read by using a personal computer or by using an eBook reader. (An eBook reader can be a software application for use on a computer such as Microsoft's free Reader application, or a book-sized computer that is used solely as a reading device such as Nuvomedia's Rocket eBook.) Users can purchase an eBook on diskette or CD, but the most popular method of getting an eBook is to purchase a downloadable file of the eBook (or other reading material) from a Web site (such as Barnes and Noble) to be read from the user's computer or reading device. Generally, an eBook can be downloaded in five minutes or less ......................................................................................................................... .............. Browse by Genre Available eBooks .............................................................................................................................. Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, ......................................................................................................................... ......................................................................................................................... .....BEST SELLER FOR EBOOK RECOMMEND............................................................. ......................................................................................................................... Blowout: Corrupted Democracy, Rogue State Russia, and the Richest, Most Destructive Industry on Earth,-- The Ride of a Lifetime: Lessons Learned from 15 Years as CEO of the Walt Disney Company,-- Call Sign Chaos: Learning to Lead,-- StrengthsFinder 2.0,-- Stillness Is the Key,-- She Said: Breaking the Sexual Harassment Story That Helped Ignite a Movement,-- Atomic Habits: An Easy & Proven Way to Build Good Habits & Break Bad Ones,-- Everything Is Figureoutable,-- What It Takes: Lessons in the Pursuit of Excellence,-- Rich Dad Poor Dad: What the Rich Teach Their Kids About Money That the Poor and Middle Class Do Not!,-- The Total Money Makeover: Classic Edition: A Proven Plan for Financial Fitness,-- Shut Up and Listen!: Hard Business Truths that Will Help You Succeed, ......................................................................................................................... .........................................................................................................................
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (Unlimited) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download Full EPUB Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... ACCESS WEBSITE for All Ebooks ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download EPUB Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download doc Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (Unlimited) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download Full EPUB Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... ACCESS WEBSITE for All Ebooks ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download EPUB Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download doc Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

Ruby on Rails SS09 03

  1. 1. Daniel Dengler web developer Ruby on Rails Workshop SS 2009 „Ruby on Rails“ and the Rails-Logo are registered trademarks of David Heinemeier Hansson – www.rubyonrails.org
  2. 2. 3 Ruby „ist eine dynamische, freie Programmiersprache, die sich einfach anwenden und produktiv einsetzen lässt. Sie hat eine elegante Syntax, die man leicht lesen und schreiben kann.“ (Quelle: http://www.ruby-lang.org /de)
  3. 3. Ruby ≠ Rails
  4. 4. Geschichte 1993 von Yukihiro Matsumoto in Japan entwickelt. Ein üsse aus Smalltalk, Perl, Python & LISP 1995 Erste Veröffentlichung 2000 erste nicht japanische Literatur in Europa und Amerika 2004 Erscheinen von Ruby on Rails verhilft Ruby zum heutigen Erfolg Quellen: http://www.ruby-lang.org/de/about, http://de.wikipedia.org/wiki/Ruby_%28Programmiersprache%29, Stand: 15.10.2007
  5. 5. Grundsätzliches • Formatierung: 2 Leerzeichen als Einrückung • Keine Semikolons. Nur wenn man mehrere Anweisungen in eine Zeile bringen will nötig • Klammern können weggelassen werden, solange die Anweisung eindeutig bleibt • Implizite Rückgabewerte. Das Ergebnis der letzten ausgeführten Operation ist gleichzeitig Rückgabewert der Methode (Quelle: vgl. R. Wartala, J. Krutisch: Webanwendungen mit Ruby on Rails, Addison-Wesley 2007)
  6. 6. Grundsätzliches • Konstanten- und Klassennamen beginnen mit einem Großbuchstaben • Variablen- und Methodennamen beginnen mit einem Kleinbuchstaben • Variablen müssen vor ihrer Verwendung nicht de niert werden • Vollständig Objekt-Orientiert (es gibt keine primitiven Datentypen)
  7. 7. Konventionen • # Kommentare • # => Repräsentation des aktuellen Wertes • # >> Ausgabe auf dem Bildschirm
  8. 8. a = 1; b = 2; if (a < b) puts(quot;a ist kleiner als bquot;); else puts(quot;a ist nicht kleiner als bquot;); end # >> a ist kleiner als b
  9. 9. a = 1; b = 2 if a < b puts quot;a ist kleiner als bquot; else puts quot;a ist nicht kleiner als bquot; end # >> a ist kleiner als b
  10. 10. def method(a, b) puts a + b end method(1, 2) method 1, 2 # >> 3 # >> 3
  11. 11. Basisdatentypen • Fixnum – ganze Zahlen (1 , 3, 1000) • Bignum – große ganze Zahlen (10000000000000000) • Float – Fließkommazahlen (1.45) • String – Zeichenketten (quot;Hallo Weltquot;, 'Hallo Welt') • Symbol – Bezeichner (:name)
  12. 12. a = quot;Weltquot; puts quot;Hallo #{a}quot; => Hallo Welt puts 'Hallo #{a}' => Hallo #{a} # Alternativ: puts 'Hallo ' + a => Hallo Welt
  13. 13. Operatoren • = Zuweisungsoperator (a = 5) • +, -, *, /, () Arithmetische Operatoren((1 + 2) * 5) • ==, <, >, <=, >=, != Vergleichsoperatoren (a == 5) • and, &&, or, || Logische Operatoren (true or false)
  14. 14. Arrays & Hashes • Arrays [7, 3, 1, 5, 9, 12] [Element, Element, …] • Hashes {:titel => quot;Rubyquot;, :untertitel => quot;für Einstiegerquot;} {Schlüssel => Wert, Schlüssel => Wert, …}
  15. 15. array = [1,2,3] array << 4 # => [1,2,3,4] array + [5,6] # => [1,2,3,4,5,6] array - [1,5] # => [2,3,4,6] array = [1,2,3] # => [1,2,3] array[0] # => 1 array[2] # => 3 array[3] # => nil
  16. 16. # Iteration über ein Array [1,2,3].each do |i| puts i * 2 end # Ausgabe: 2 4 6 # weitere einfach Arrayoperationen [1,3,2].sort # => [1,2,3] [1,3,2].sort.reverse # => [3,2,1]
  17. 17. hash = {:eins => 1, 'zwei' => 2} hash[:eins] # => 1 hash['zwei'] # => 2 hash[:drei] # => nil hash = {:a => {:a => quot;aaquot;}, :b => quot;bquot;} hash[:a] # => {:a => quot;aaquot;} hash[:a][:a] # => quot;aaquot;
  18. 18. Kontrollstrukturen • Steuern den Programmablauf • Wichtige Kontrollstrukturen in Ruby • Entscheidungen: if, unless, case • Schleifen: while, until, for, .each
  19. 19. a=3 if a < 5 puts quot;a ist kleiner als 5quot; elsif a == 5 puts quot;a ist gleich 5quot; else puts quot;a ist größer als 5quot; end farbe = :rot if farbe != :grün puts 'Die Farbe ist nicht Grün' end # unless ist das negierte if unless farbe == :grün puts 'Die Farbe ist nicht Grün' end puts 'Die Farbe ist nicht Grün' unless farbe == :grün puts (a == 5 ? 'a ist gleich 5' : 'a ist nicht gleich 5')
  20. 20. farbe = :rot case farbe when :grün puts 'Die Farbe ist Grün' when :rot, :blau puts 'Die Farbe ist Rot oder Blau' else puts 'Die Farbe ist nicht bekannt' end a=1 while a < 3 puts a # Inkrement Operator (+1) a++ # entspricht a = a + 1 end # Ausgabe: 1 2
  21. 21. Klassen, Methoden & Objekte • Klassen beginnen mit den Schlüsselwort class und können verschiedene Methoden beinhalten • Methoden beginnen mit dem Schlüsselwort def • Die konkrete Instanz einer Klasse ist ein Objekt
  22. 22. class Fahrzeug end auto = Fahrzeug.new
  23. 23. class Fahrzeug def kmh @kmh # gleichbedeutend mit: return @kmh end def kmh=(wert) @kmh = wert end end auto = Fahrzeug.new auto.kmh = 10 auto.kmh=(10) puts auto.kmh # >> 10
  24. 24. class Fahrzeug class Fahrzeug def kmh attr_reader :kmh @kmh attr_writer :kmh end end def kmh=(kmh) @kmh = kmh class Fahrzeug end attr_accessor :kmh end end class Fahrzeug auto = Fahrzeug.new attr_reader :kmh def kmh=(kmh) auto.kmh = 10 @kmh = kmh end puts auto.kmh end # >> 10
  25. 25. class Fahrzeug attr_accessor :kmh # wird beim Erstellen aufgerufen def initialize(kmh) @kmh = kmh end def beschleunigen @kmh += 10 # entspricht: @kmh = @kmh + 10 end end auto = Fahrzeug.new(5) auto.kmh # => 5 auto.kmh = 10 # => 10 auto.beschleunigen # => 20
  26. 26. class Fahrzeug attr_accessor :kmh def initialize(kmh) # kmh ist eine Variable # @kmh ist eine Instanzvariable @kmh = kmh end def beschleunigen @kmh += 10 end end auto = Fahrzeug.new(5) auto.kmh # => 5 auto.kmh = 10 # => 10 auto.beschleunigen # => 20 # new, kmh, kmh= und beschleunigen sind Methodenaufrufe
  27. 27. class Fahrzeug attr_accessor :kmh def initialize(kmh = 0) @kmh = kmh end def beschleunigen @kmh += 10 end end auto = Fahrzeug.new(5) auto.kmh # => 5 auto.beschleunigen # => 15 auto = Fahrzeug.new auto.kmh # => 0 auto.beschleunigen # => 10
  28. 28. class Auto < Fahrzeug auto_a = Auto.new @@anzahl = 0 auto_a.kmh # => 0 # @@anzahl ist eine auto_a.beschleunigen Klassenvariable # => 25 auto_a.anzahl # => 1 def initialize auto_b = Auto.new @@anzahl++ auto_b.anzahl # => 2 super auto_a.anzahl # => 2 end auto_a.kmh # => 25 auto_b.kmh # => 0 def beschleunigen @kmh += 25 end def anzahl @@anzahl end end
  29. 29. Ruby Skripte ausführen • Interpreter • ruby skriptname.rb • Interactive Shell • irb skriptname.rb
  30. 30. Online Ruby Interpreter • http://tryruby.hobix.com • Geeignet um den Quellcode der Beispiele selbst zu testen und sich mit der Sprache vertraut zu machen • Bietet ein Ruby-Lern-Tutorial aus 8 Blöcken • Bitte jetzt anfangen (und zu Hause fertig machen!) • Lesen und merken sie sich die Anweisungen des Anfangs, falls sie stecken bleiben sollten! ( help Kapitelnummer, Ctrl + D)
  31. 31. ?

×