https://de.wikipedia.org/w/index.php?action=history&feed=atom&title=Ruby_%28Programmiersprache%29 Ruby (Programmiersprache) - Versionsgeschichte 2025-05-30T01:58:31Z Versionsgeschichte dieser Seite in Wikipedia MediaWiki 1.45.0-wmf.3 https://de.wikipedia.org/w/index.php?title=Ruby_(Programmiersprache)&diff=255717892&oldid=prev Invisigoth67: form 2025-05-04T13:19:33Z <p>form</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 4. Mai 2025, 15:19 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 41:</td> <td colspan="2" class="diff-lineno">Zeile 41:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Mit Ruby 2.0 wurden [[Parameter (Informatik)#Unterschiedliche Parameter-Begriffe|Schlüsselwortparameter]] eingeführt (bspw.: &lt;code&gt;0.step(by: 5, to: 20)&lt;/code&gt;), das Vorhängen ''(prepend)'' von Modulen und [[Lazy Evaluation|Bedarfsauswertung]] ''(lazy-evaluation)'' von Iteratoren eingeführt. Außerdem wurde die [[Zeichenkodierung|Standardzeichenkodierung]] auf [[UTF-8]] festgelegt. Ruby 2.1 führte ''Refinements'' (eine Methode um Überschreibungen von Klassen lokal zu beschränken) ein. In Ruby 2.2 wurde der vorhandene [[Garbage Collection|Garbage-Collector]] durch einen inkrementellen ersetzt. Mit Ruby 2.3 ist es möglich, alle Zeichenketten automatisch schreibgeschützt zu erstellen und ein neuer Operator &lt;code&gt;&amp;.&lt;/code&gt; ''(Safe-Navigation-Operator)'' zum Umgehen von Nil-Überprüfungen wurde eingeführt. In Ruby 2.4 wurden die Klassen ''Fixnum'' und ''Bignum'' vereinheitlicht. Seit Ruby 2.5 können [[Ausnahmebehandlung|Exceptions]] in ''do-end''-Blöcken ohne separate Unterblöcke gefangen werden. Ruby 2.6 lieferte den ersten Code eines optionalen [[Just-in-time-Kompilierung|JIT-Compilers]] und fügte ''Bundler'' (s.&amp;nbsp;u.) zur Standarddistribution hinzu. Ruby 2.7 führte ausführliches Patternmatching und einige syntaktische Erleichterungen dem Sprachkern hinzu. Jede neue Ruby-Version ab 1.9 brachte zudem Geschwindigkeitsoptimierungen verschiedenen Ausmaßes mit sich. Zusätzlich erweiterte jede Version die [[Standardbibliothek]] um nützliche Methoden. Es wurde stets auf [[Kompatibilität (Technik)#Abwärtskompatibilität|Abwärtskompatibilität]] geachtet, allerdings nicht immer zu hundert Prozent erreicht.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Mit Ruby 2.0 wurden [[Parameter (Informatik)#Unterschiedliche Parameter-Begriffe|Schlüsselwortparameter]] eingeführt (bspw.: &lt;code&gt;0.step(by: 5, to: 20)&lt;/code&gt;), das Vorhängen ''(prepend)'' von Modulen und [[Lazy Evaluation|Bedarfsauswertung]] ''(lazy-evaluation)'' von Iteratoren eingeführt. Außerdem wurde die [[Zeichenkodierung|Standardzeichenkodierung]] auf [[UTF-8]] festgelegt. Ruby 2.1 führte ''Refinements'' (eine Methode um Überschreibungen von Klassen lokal zu beschränken) ein. In Ruby 2.2 wurde der vorhandene [[Garbage Collection|Garbage-Collector]] durch einen inkrementellen ersetzt. Mit Ruby 2.3 ist es möglich, alle Zeichenketten automatisch schreibgeschützt zu erstellen und ein neuer Operator &lt;code&gt;&amp;.&lt;/code&gt; ''(Safe-Navigation-Operator)'' zum Umgehen von Nil-Überprüfungen wurde eingeführt. In Ruby 2.4 wurden die Klassen ''Fixnum'' und ''Bignum'' vereinheitlicht. Seit Ruby 2.5 können [[Ausnahmebehandlung|Exceptions]] in ''do-end''-Blöcken ohne separate Unterblöcke gefangen werden. Ruby 2.6 lieferte den ersten Code eines optionalen [[Just-in-time-Kompilierung|JIT-Compilers]] und fügte ''Bundler'' (s.&amp;nbsp;u.) zur Standarddistribution hinzu. Ruby 2.7 führte ausführliches Patternmatching und einige syntaktische Erleichterungen dem Sprachkern hinzu. Jede neue Ruby-Version ab 1.9 brachte zudem Geschwindigkeitsoptimierungen verschiedenen Ausmaßes mit sich. Zusätzlich erweiterte jede Version die [[Standardbibliothek]] um nützliche Methoden. Es wurde stets auf [[Kompatibilität (Technik)#Abwärtskompatibilität|Abwärtskompatibilität]] geachtet, allerdings nicht immer zu hundert Prozent erreicht.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Ruby 3.0, erschienen am 25. <del style="font-weight: bold; text-decoration: none;">Dez.</del> 2020, ist die erste Version, welche die „Ruby 3x3“ genannten Forderungen erfüllt: Dreimal höhere Ausführungsgeschwindigkeit zu Ruby 2.0 (durch JIT-Compiler), Nebenläufigkeit ohne GIL (allerdings noch experimentell) und statische Typanalyse (optional). Das eigentliche Update 3.0 stellt allerdings keinen größeren Sprung als die vorherigen jährlichen Veröffentlichungen dar und ist abwärtskompatibel zu Ruby 2.x.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Ruby 3.0, erschienen am 25. <ins style="font-weight: bold; text-decoration: none;">Dezember</ins> 2020, ist die erste Version, welche die „Ruby 3x3“ genannten Forderungen erfüllt: Dreimal höhere Ausführungsgeschwindigkeit zu Ruby 2.0 (durch JIT-Compiler), Nebenläufigkeit ohne GIL (allerdings noch experimentell) und statische Typanalyse (optional). Das eigentliche Update 3.0 stellt allerdings keinen größeren Sprung als die vorherigen jährlichen Veröffentlichungen dar und ist abwärtskompatibel zu Ruby 2.x.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Merkmale ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Merkmale ==</div></td> </tr> </table> Invisigoth67 https://de.wikipedia.org/w/index.php?title=Ruby_(Programmiersprache)&diff=255712815&oldid=prev VanGore: /* RubyForge */ link öffentliche Softwareentwicklungsplattform 2025-05-04T10:04:03Z <p><span class="autocomment">RubyForge: </span> link <a href="/wiki/Softwareentwicklungsplattform#Öffentliche_Plattformen" title="Softwareentwicklungsplattform">öffentliche Softwareentwicklungsplattform</a></p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 4. Mai 2025, 12:04 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 478:</td> <td colspan="2" class="diff-lineno">Zeile 478:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== RubyForge ===</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== RubyForge ===</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>RubyForge war <del style="font-weight: bold; text-decoration: none;">ein kollaborativer</del> [[<del style="font-weight: bold; text-decoration: none;">Filehosting]]-[[Onlinedienst</del>|<del style="font-weight: bold; text-decoration: none;">Dienst</del>]] für in Ruby geschriebene Softwareprojekte. Er wurde im Jahr 2003 von [[Ruby Central]] gestartet, um der Ruby-Community eine Heimat für ihre [[Open Source|Open-Source]]-Projekte zur Verfügung zu stellen.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>RubyForge war <ins style="font-weight: bold; text-decoration: none;">eine</ins> [[<ins style="font-weight: bold; text-decoration: none;">Softwareentwicklungsplattform#Öffentliche Plattformen</ins>|<ins style="font-weight: bold; text-decoration: none;">öffentliche Softwareentwicklungsplattform</ins>]] für in Ruby geschriebene Softwareprojekte. Er wurde im Jahr 2003 von [[Ruby Central]] gestartet, um der Ruby-Community eine Heimat für ihre [[Open Source|Open-Source]]-Projekte zur Verfügung zu stellen.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Am 29. November 2009 wurden dort über 9.300 Projekte und mehr als 94.683 Benutzer geführt&lt;ref name="rubyforge"&gt;{{Webarchiv | url=https://rubyforge.org/ | wayback=20140531194331 | text=RubyForge}}&lt;/ref&gt;, am 15. Mai 2014 wurde der Dienst schließlich eingestellt.&lt;ref&gt;{{Internetquelle|url=https://twitter.com/evanphx/status/399552820380053505|titel=Twitter-Nachricht von Evan Phoenix|zugriff=2014-03-28}}&lt;/ref&gt;</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Am 29. November 2009 wurden dort über 9.300 Projekte und mehr als 94.683 Benutzer geführt&lt;ref name="rubyforge"&gt;{{Webarchiv | url=https://rubyforge.org/ | wayback=20140531194331 | text=RubyForge}}&lt;/ref&gt;, am 15. Mai 2014 wurde der Dienst schließlich eingestellt.&lt;ref&gt;{{Internetquelle|url=https://twitter.com/evanphx/status/399552820380053505|titel=Twitter-Nachricht von Evan Phoenix|zugriff=2014-03-28}}&lt;/ref&gt;</div></td> </tr> </table> VanGore https://de.wikipedia.org/w/index.php?title=Ruby_(Programmiersprache)&diff=250928071&oldid=prev Aka: /* Mixins */ Tippfehler entfernt 2024-12-03T17:18:15Z <p><span class="autocomment">Mixins: </span> <a href="/wiki/Benutzer:Aka/Tippfehler_entfernt" title="Benutzer:Aka/Tippfehler entfernt">Tippfehler entfernt</a></p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 3. Dezember 2024, 19:18 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 167:</td> <td colspan="2" class="diff-lineno">Zeile 167:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> def schwimmt</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> def schwimmt</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> puts "#{self.class} schwimmt" # self gibt die Instanz zurück,</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> puts "#{self.class} schwimmt" # self gibt die Instanz zurück,</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> end #<del style="font-weight: bold; text-decoration: none;"> </del> jedes Objekt hat eine Methode .class die das Klassenobjekt <del style="font-weight: bold; text-decoration: none;">zurück gibt</del></div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> end # jedes Objekt hat eine Methode .class<ins style="font-weight: bold; text-decoration: none;">,</ins> die das Klassenobjekt <ins style="font-weight: bold; text-decoration: none;">zurückgibt</ins></div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>end</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>end</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> </table> Aka https://de.wikipedia.org/w/index.php?title=Ruby_(Programmiersprache)&diff=246926190&oldid=prev 2001:9E8:B325:EF00:9093:44ED:4441:87DB: /* Entstehung und Geschichte */ 2024-07-20T15:28:48Z <p><span class="autocomment">Entstehung und Geschichte</span></p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 20. Juli 2024, 17:28 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 39:</td> <td colspan="2" class="diff-lineno">Zeile 39:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Ein Meilenstein in der Entwicklung von Ruby war die Version 1.9 im Jahr 2007, welche mit vielen Änderungen ziemlich inkompatibel zu den Vorgängerversionen wurde. Die Semantik einiger Konstrukte hat sich in dieser Version geändert.&lt;ref&gt;{{Internetquelle |url=https://www.infoq.com/news/2007/12/ruby-19/ |titel=Ruby 1.9 released |abruf=2020-09-05 |sprache=en}}&lt;/ref&gt; Der [[Interpreter]] wurde komplett neu geschrieben, womit Rubyprogramme wesentlich schneller wurden. Zeichenketten bekamen separate [[Zeichenkodierung]]en, Variablen in Blöcken wurden block-lokal, [[IPv6]]-Unterstützung und einige syntaktische Erleichterungen fanden Einzug.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Ein Meilenstein in der Entwicklung von Ruby war die Version 1.9 im Jahr 2007, welche mit vielen Änderungen ziemlich inkompatibel zu den Vorgängerversionen wurde. Die Semantik einiger Konstrukte hat sich in dieser Version geändert.&lt;ref&gt;{{Internetquelle |url=https://www.infoq.com/news/2007/12/ruby-19/ |titel=Ruby 1.9 released |abruf=2020-09-05 |sprache=en}}&lt;/ref&gt; Der [[Interpreter]] wurde komplett neu geschrieben, womit Rubyprogramme wesentlich schneller wurden. Zeichenketten bekamen separate [[Zeichenkodierung]]en, Variablen in Blöcken wurden block-lokal, [[IPv6]]-Unterstützung und einige syntaktische Erleichterungen fanden Einzug.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Mit Ruby 2.0 wurden [[Parameter (Informatik)#Unterschiedliche Parameter-Begriffe|Schlüsselwortparameter]] eingeführt (bspw.: &lt;code&gt;0.step(by: 5, to: 20)&lt;/code&gt;), das Vorhängen ''(prepend)'' von Modulen und [[Lazy Evaluation|Bedarfsauswertung]] ''(lazy-evaluation)'' von Iteratoren eingeführt. Außerdem wurde die [[Zeichenkodierung|Standardzeichenkodierung]] auf [[UTF-8]] festgelegt. Ruby 2.1 führte ''Refinements'' (eine Methode um Überschreibungen von Klassen lokal zu beschränken) ein. In Ruby 2.2 wurde der vorhandene [[Garbage Collection|Garbage-Collector]] durch einen inkrementellen ersetzt. Mit Ruby 2.3 ist es möglich, alle Zeichenketten automatisch schreibgeschützt zu erstellen und ein neuer Operator &lt;code&gt;&amp;.&lt;/code&gt; ''(Safe-Navigation-Operator)'' zum Umgehen von Nil-Überprüfungen wurde eingeführt. In Ruby 2.4 wurden die Klassen ''Fixnum'' und ''Bignum'' vereinheitlicht. Seit Ruby 2.5 können [[Ausnahmebehandlung|Exceptions]] in ''do-end''-Blöcken ohne separate Unterblöcke gefangen werden. Ruby 2.6 lieferte den ersten Code <del style="font-weight: bold; text-decoration: none;">einens</del> optionalen [[Just-in-time-Kompilierung|JIT-Compilers]] und fügte ''Bundler'' (s.&amp;nbsp;u.) zur Standarddistribution hinzu. Ruby 2.7 führte ausführliches Patternmatching und einige syntaktische Erleichterungen dem Sprachkern hinzu. Jede neue Ruby-Version ab 1.9 brachte zudem Geschwindigkeitsoptimierungen verschiedenen Ausmaßes mit sich. Zusätzlich erweiterte jede Version die [[Standardbibliothek]] um nützliche Methoden. Es wurde stets auf [[Kompatibilität (Technik)#Abwärtskompatibilität|Abwärtskompatibilität]] geachtet, allerdings nicht immer zu hundert Prozent erreicht.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Mit Ruby 2.0 wurden [[Parameter (Informatik)#Unterschiedliche Parameter-Begriffe|Schlüsselwortparameter]] eingeführt (bspw.: &lt;code&gt;0.step(by: 5, to: 20)&lt;/code&gt;), das Vorhängen ''(prepend)'' von Modulen und [[Lazy Evaluation|Bedarfsauswertung]] ''(lazy-evaluation)'' von Iteratoren eingeführt. Außerdem wurde die [[Zeichenkodierung|Standardzeichenkodierung]] auf [[UTF-8]] festgelegt. Ruby 2.1 führte ''Refinements'' (eine Methode um Überschreibungen von Klassen lokal zu beschränken) ein. In Ruby 2.2 wurde der vorhandene [[Garbage Collection|Garbage-Collector]] durch einen inkrementellen ersetzt. Mit Ruby 2.3 ist es möglich, alle Zeichenketten automatisch schreibgeschützt zu erstellen und ein neuer Operator &lt;code&gt;&amp;.&lt;/code&gt; ''(Safe-Navigation-Operator)'' zum Umgehen von Nil-Überprüfungen wurde eingeführt. In Ruby 2.4 wurden die Klassen ''Fixnum'' und ''Bignum'' vereinheitlicht. Seit Ruby 2.5 können [[Ausnahmebehandlung|Exceptions]] in ''do-end''-Blöcken ohne separate Unterblöcke gefangen werden. Ruby 2.6 lieferte den ersten Code <ins style="font-weight: bold; text-decoration: none;">eines</ins> optionalen [[Just-in-time-Kompilierung|JIT-Compilers]] und fügte ''Bundler'' (s.&amp;nbsp;u.) zur Standarddistribution hinzu. Ruby 2.7 führte ausführliches Patternmatching und einige syntaktische Erleichterungen dem Sprachkern hinzu. Jede neue Ruby-Version ab 1.9 brachte zudem Geschwindigkeitsoptimierungen verschiedenen Ausmaßes mit sich. Zusätzlich erweiterte jede Version die [[Standardbibliothek]] um nützliche Methoden. Es wurde stets auf [[Kompatibilität (Technik)#Abwärtskompatibilität|Abwärtskompatibilität]] geachtet, allerdings nicht immer zu hundert Prozent erreicht.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Ruby 3.0, erschienen am 25. Dez. 2020, ist die erste Version, welche die „Ruby 3x3“ genannten Forderungen erfüllt: Dreimal höhere Ausführungsgeschwindigkeit zu Ruby 2.0 (durch JIT-Compiler), Nebenläufigkeit ohne GIL (allerdings noch experimentell) und statische Typanalyse (optional). Das eigentliche Update 3.0 stellt allerdings keinen größeren Sprung als die vorherigen jährlichen Veröffentlichungen dar und ist abwärtskompatibel zu Ruby 2.x.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Ruby 3.0, erschienen am 25. Dez. 2020, ist die erste Version, welche die „Ruby 3x3“ genannten Forderungen erfüllt: Dreimal höhere Ausführungsgeschwindigkeit zu Ruby 2.0 (durch JIT-Compiler), Nebenläufigkeit ohne GIL (allerdings noch experimentell) und statische Typanalyse (optional). Das eigentliche Update 3.0 stellt allerdings keinen größeren Sprung als die vorherigen jährlichen Veröffentlichungen dar und ist abwärtskompatibel zu Ruby 2.x.</div></td> </tr> </table> 2001:9E8:B325:EF00:9093:44ED:4441:87DB https://de.wikipedia.org/w/index.php?title=Ruby_(Programmiersprache)&diff=246072540&oldid=prev Thüringer: Änderung 245461040 von Mmm0469 rückgängig gemacht; Website enthält Google-Tracker 2024-06-20T14:27:40Z <p>Änderung <a href="/wiki/Spezial:Diff/245461040" title="Spezial:Diff/245461040">245461040</a> von <a href="/wiki/Spezial:Beitr%C3%A4ge/Mmm0469" title="Spezial:Beiträge/Mmm0469">Mmm0469</a> rückgängig gemacht; Website enthält Google-Tracker</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 20. Juni 2024, 16:27 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 513:</td> <td colspan="2" class="diff-lineno">Zeile 513:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* [https://ruby-doc.org/ Dokumentationssammlung zu Ruby] (englisch)</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* [https://ruby-doc.org/ Dokumentationssammlung zu Ruby] (englisch)</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* {{dmoz|World/Deutsch/Computer/Programmieren/Sprachen/Ruby|Ruby}}</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* {{dmoz|World/Deutsch/Computer/Programmieren/Sprachen/Ruby|Ruby}}</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>* [https://programguru.org/online-compiler/ruby Online Ruby Compiler] (englisch)</div></td> <td colspan="2" class="diff-empty diff-side-added"></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Einzelnachweise ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Einzelnachweise ==</div></td> </tr> </table> Thüringer https://de.wikipedia.org/w/index.php?title=Ruby_(Programmiersprache)&diff=245461040&oldid=prev Mmm0469: /* Weblinks */ Added a reference to online ruby compiler, where learners practice simple concepts of ruby language, and contain a huge collection of ruby programs 2024-05-30T02:16:47Z <p><span class="autocomment">Weblinks: </span> Added a reference to online ruby compiler, where learners practice simple concepts of ruby language, and contain a huge collection of ruby programs</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 30. Mai 2024, 04:16 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 513:</td> <td colspan="2" class="diff-lineno">Zeile 513:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* [https://ruby-doc.org/ Dokumentationssammlung zu Ruby] (englisch)</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* [https://ruby-doc.org/ Dokumentationssammlung zu Ruby] (englisch)</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* {{dmoz|World/Deutsch/Computer/Programmieren/Sprachen/Ruby|Ruby}}</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* {{dmoz|World/Deutsch/Computer/Programmieren/Sprachen/Ruby|Ruby}}</div></td> </tr> <tr> <td colspan="2" class="diff-empty diff-side-deleted"></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>* [https://programguru.org/online-compiler/ruby Online Ruby Compiler] (englisch)</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Einzelnachweise ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Einzelnachweise ==</div></td> </tr> </table> Mmm0469 https://de.wikipedia.org/w/index.php?title=Ruby_(Programmiersprache)&diff=244604379&oldid=prev 2A00:20:C28A:95B2:E8BD:EE68:582D:DA8D: /* Entstehung und Geschichte */ fehlenden Buchstaben hinzugefügt 2024-05-02T15:58:04Z <p><span class="autocomment">Entstehung und Geschichte: </span> fehlenden Buchstaben hinzugefügt</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 2. Mai 2024, 17:58 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 39:</td> <td colspan="2" class="diff-lineno">Zeile 39:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Ein Meilenstein in der Entwicklung von Ruby war die Version 1.9 im Jahr 2007, welche mit vielen Änderungen ziemlich inkompatibel zu den Vorgängerversionen wurde. Die Semantik einiger Konstrukte hat sich in dieser Version geändert.&lt;ref&gt;{{Internetquelle |url=https://www.infoq.com/news/2007/12/ruby-19/ |titel=Ruby 1.9 released |abruf=2020-09-05 |sprache=en}}&lt;/ref&gt; Der [[Interpreter]] wurde komplett neu geschrieben, womit Rubyprogramme wesentlich schneller wurden. Zeichenketten bekamen separate [[Zeichenkodierung]]en, Variablen in Blöcken wurden block-lokal, [[IPv6]]-Unterstützung und einige syntaktische Erleichterungen fanden Einzug.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Ein Meilenstein in der Entwicklung von Ruby war die Version 1.9 im Jahr 2007, welche mit vielen Änderungen ziemlich inkompatibel zu den Vorgängerversionen wurde. Die Semantik einiger Konstrukte hat sich in dieser Version geändert.&lt;ref&gt;{{Internetquelle |url=https://www.infoq.com/news/2007/12/ruby-19/ |titel=Ruby 1.9 released |abruf=2020-09-05 |sprache=en}}&lt;/ref&gt; Der [[Interpreter]] wurde komplett neu geschrieben, womit Rubyprogramme wesentlich schneller wurden. Zeichenketten bekamen separate [[Zeichenkodierung]]en, Variablen in Blöcken wurden block-lokal, [[IPv6]]-Unterstützung und einige syntaktische Erleichterungen fanden Einzug.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Mit Ruby 2.0 wurden [[Parameter (Informatik)#Unterschiedliche Parameter-Begriffe|Schlüsselwortparameter]] eingeführt (bspw.: &lt;code&gt;0.step(by: 5, to: 20)&lt;/code&gt;), das Vorhängen ''(prepend)'' von Modulen und [[Lazy Evaluation|Bedarfsauswertung]] ''(lazy-evaluation)'' von Iteratoren eingeführt. Außerdem wurde die [[Zeichenkodierung|Standardzeichenkodierung]] auf [[UTF-8]] festgelegt. Ruby 2.1 führte ''Refinements'' (eine Methode um Überschreibungen von Klassen lokal zu beschränken) ein. In Ruby 2.2 wurde der vorhandene [[Garbage Collection|Garbage-Collector]] durch einen inkrementellen ersetzt. Mit Ruby 2.3 ist es möglich, alle Zeichenketten automatisch schreibgeschützt zu erstellen und ein neuer Operator &lt;code&gt;&amp;.&lt;/code&gt; ''(Safe-Navigation-Operator)'' zum Umgehen von Nil-Überprüfungen wurde eingeführt. In Ruby 2.4 wurden die Klassen ''Fixnum'' und ''Bignum'' vereinheitlicht. Seit Ruby 2.5 können [[Ausnahmebehandlung|Exceptions]] in ''do-end''-Blöcken ohne separate Unterblöcke gefangen werden. Ruby 2.6 lieferte den ersten Code einens optionalen [[Just-in-time-Kompilierung|JIT-Compilers]] und fügte ''Bundler'' (s.&amp;nbsp;u.) zur Standarddistribution hinzu. Ruby 2.7 führte ausführliches <del style="font-weight: bold; text-decoration: none;">Pattermatching</del> und einige syntaktische Erleichterungen dem Sprachkern hinzu. Jede neue Ruby-Version ab 1.9 brachte zudem Geschwindigkeitsoptimierungen verschiedenen Ausmaßes mit sich. Zusätzlich erweiterte jede Version die [[Standardbibliothek]] um nützliche Methoden. Es wurde stets auf [[Kompatibilität (Technik)#Abwärtskompatibilität|Abwärtskompatibilität]] geachtet, allerdings nicht immer zu hundert Prozent erreicht.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Mit Ruby 2.0 wurden [[Parameter (Informatik)#Unterschiedliche Parameter-Begriffe|Schlüsselwortparameter]] eingeführt (bspw.: &lt;code&gt;0.step(by: 5, to: 20)&lt;/code&gt;), das Vorhängen ''(prepend)'' von Modulen und [[Lazy Evaluation|Bedarfsauswertung]] ''(lazy-evaluation)'' von Iteratoren eingeführt. Außerdem wurde die [[Zeichenkodierung|Standardzeichenkodierung]] auf [[UTF-8]] festgelegt. Ruby 2.1 führte ''Refinements'' (eine Methode um Überschreibungen von Klassen lokal zu beschränken) ein. In Ruby 2.2 wurde der vorhandene [[Garbage Collection|Garbage-Collector]] durch einen inkrementellen ersetzt. Mit Ruby 2.3 ist es möglich, alle Zeichenketten automatisch schreibgeschützt zu erstellen und ein neuer Operator &lt;code&gt;&amp;.&lt;/code&gt; ''(Safe-Navigation-Operator)'' zum Umgehen von Nil-Überprüfungen wurde eingeführt. In Ruby 2.4 wurden die Klassen ''Fixnum'' und ''Bignum'' vereinheitlicht. Seit Ruby 2.5 können [[Ausnahmebehandlung|Exceptions]] in ''do-end''-Blöcken ohne separate Unterblöcke gefangen werden. Ruby 2.6 lieferte den ersten Code einens optionalen [[Just-in-time-Kompilierung|JIT-Compilers]] und fügte ''Bundler'' (s.&amp;nbsp;u.) zur Standarddistribution hinzu. Ruby 2.7 führte ausführliches <ins style="font-weight: bold; text-decoration: none;">Patternmatching</ins> und einige syntaktische Erleichterungen dem Sprachkern hinzu. Jede neue Ruby-Version ab 1.9 brachte zudem Geschwindigkeitsoptimierungen verschiedenen Ausmaßes mit sich. Zusätzlich erweiterte jede Version die [[Standardbibliothek]] um nützliche Methoden. Es wurde stets auf [[Kompatibilität (Technik)#Abwärtskompatibilität|Abwärtskompatibilität]] geachtet, allerdings nicht immer zu hundert Prozent erreicht.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Ruby 3.0, erschienen am 25. Dez. 2020, ist die erste Version, welche die „Ruby 3x3“ genannten Forderungen erfüllt: Dreimal höhere Ausführungsgeschwindigkeit zu Ruby 2.0 (durch JIT-Compiler), Nebenläufigkeit ohne GIL (allerdings noch experimentell) und statische Typanalyse (optional). Das eigentliche Update 3.0 stellt allerdings keinen größeren Sprung als die vorherigen jährlichen Veröffentlichungen dar und ist abwärtskompatibel zu Ruby 2.x.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Ruby 3.0, erschienen am 25. Dez. 2020, ist die erste Version, welche die „Ruby 3x3“ genannten Forderungen erfüllt: Dreimal höhere Ausführungsgeschwindigkeit zu Ruby 2.0 (durch JIT-Compiler), Nebenläufigkeit ohne GIL (allerdings noch experimentell) und statische Typanalyse (optional). Das eigentliche Update 3.0 stellt allerdings keinen größeren Sprung als die vorherigen jährlichen Veröffentlichungen dar und ist abwärtskompatibel zu Ruby 2.x.</div></td> </tr> </table> 2A00:20:C28A:95B2:E8BD:EE68:582D:DA8D https://de.wikipedia.org/w/index.php?title=Ruby_(Programmiersprache)&diff=243319780&oldid=prev Fan-vom-Wiki: /* Mixins */ hier Quatsch 2024-03-21T17:06:39Z <p><span class="autocomment">Mixins: </span> hier Quatsch</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 21. März 2024, 19:06 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 164:</td> <td colspan="2" class="diff-lineno">Zeile 164:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>end</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>end</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>module KannSchwimmen # Module, d.<del style="font-weight: bold; text-decoration: none;">&amp;nbsp;</del>h. KannSchwimmen.new geht nicht</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>module KannSchwimmen # Module, d.<ins style="font-weight: bold; text-decoration: none;"> </ins>h. KannSchwimmen.new geht nicht</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> def schwimmt</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> def schwimmt</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> puts "#{self.class} schwimmt" # self gibt die Instanz zurück,</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div> puts "#{self.class} schwimmt" # self gibt die Instanz zurück,</div></td> </tr> </table> Fan-vom-Wiki https://de.wikipedia.org/w/index.php?title=Ruby_(Programmiersprache)&diff=242158533&oldid=prev Invisigoth67: typo 2024-02-13T16:51:51Z <p>typo</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 13. Februar 2024, 18:51 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 310:</td> <td colspan="2" class="diff-lineno">Zeile 310:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Syntax und Grundlagen ===</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>=== Syntax und Grundlagen ===</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==== Namenskonvention ====</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==== Namenskonvention ====</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Ruby folgt der üblichen Konvention für Methoden- und Variablennamen, ein Name muss mit einem Kleinbuchstaben oder Unterstrich beginnen, dann dürfen beliebige Buchstaben (nach [[Unicode]]), Ziffern und Unterstriche folgen. Methoden dürfen zusätzlich mit einem Ausrufe- oder Fragezeichen enden. Nach der üblichen Konvention dient Ersteres als Hinweis dass diese Methode eine schärfere Version der gleichen Methode ohne Ausrufezeichen ist (verändert den Zustand des Objekts, wirft Fehler, …), Letzteres bedeutet, dass die Funktion ein ''Boolean'' zurückgibt (true oder false). Fängt ein Variablenname mit einem Großbuchstaben an, so ist es eine Konstante. Variablen können zusätzlich mit einem Sonderzeichen anfangen, welches den Gültigkeitsbereich beschreibt.</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>Ruby folgt der üblichen Konvention für Methoden- und Variablennamen, ein Name muss mit einem Kleinbuchstaben oder Unterstrich beginnen, dann dürfen beliebige Buchstaben (nach [[Unicode]]), Ziffern und Unterstriche folgen. Methoden dürfen zusätzlich mit einem Ausrufe- oder Fragezeichen enden. Nach der üblichen Konvention dient Ersteres als Hinweis<ins style="font-weight: bold; text-decoration: none;">,</ins> dass diese Methode eine schärfere Version der gleichen Methode ohne Ausrufezeichen ist (verändert den Zustand des Objekts, wirft Fehler, …), Letzteres bedeutet, dass die Funktion ein ''Boolean'' zurückgibt (true oder false). Fängt ein Variablenname mit einem Großbuchstaben an, so ist es eine Konstante. Variablen können zusätzlich mit einem Sonderzeichen anfangen, welches den Gültigkeitsbereich beschreibt.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==== Variablenbezeichner ====</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>==== Variablenbezeichner ====</div></td> </tr> </table> Invisigoth67 https://de.wikipedia.org/w/index.php?title=Ruby_(Programmiersprache)&diff=239740008&oldid=prev Alnilam: Änderungen von 2001:638:804:20A0:480F:1A19:FF6D:72D9 (Diskussion) auf die letzte Version von 89.247.150.6 zurückgesetzt 2023-12-04T09:07:35Z <p>Änderungen von <a href="/wiki/Spezial:Beitr%C3%A4ge/2001:638:804:20A0:480F:1A19:FF6D:72D9" title="Spezial:Beiträge/2001:638:804:20A0:480F:1A19:FF6D:72D9">2001:638:804:20A0:480F:1A19:FF6D:72D9</a> (<a href="/w/index.php?title=Benutzer_Diskussion:2001:638:804:20A0:480F:1A19:FF6D:72D9&amp;action=edit&amp;redlink=1" class="new" title="Benutzer Diskussion:2001:638:804:20A0:480F:1A19:FF6D:72D9 (Seite nicht vorhanden)">Diskussion</a>) auf die letzte Version von <a href="/w/index.php?title=Benutzer:89.247.150.6&amp;action=edit&amp;redlink=1" class="new" title="Benutzer:89.247.150.6 (Seite nicht vorhanden)">89.247.150.6</a> zurückgesetzt</p> <table style="background-color: #fff; color: #202122;" data-mw="interface"> <col class="diff-marker" /> <col class="diff-content" /> <col class="diff-marker" /> <col class="diff-content" /> <tr class="diff-title" lang="de"> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">← Nächstältere Version</td> <td colspan="2" style="background-color: #fff; color: #202122; text-align: center;">Version vom 4. Dezember 2023, 11:07 Uhr</td> </tr><tr> <td colspan="2" class="diff-lineno">Zeile 44:</td> <td colspan="2" class="diff-lineno">Zeile 44:</td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Merkmale ==</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>== Merkmale ==</div></td> </tr> <tr> <td class="diff-marker" data-marker="−"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>=== Alles ist <del style="font-weight: bold; text-decoration: none;">kein</del> Objekt ===</div></td> <td class="diff-marker" data-marker="+"></td> <td style="color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>=== Alles ist <ins style="font-weight: bold; text-decoration: none;">ein</ins> Objekt ===</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Ruby ist eine Programmiersprache, die, obwohl sie auch viele andere Programmierparadigmen unterstützt, von Grund auf objektorientiert ist. Das bedeutet konkret, dass in Ruby ausnahmslos jeder Wert ein Objekt und jede Funktion eine Methode ist (d.&amp;nbsp;h. einer Klasse zugeordnet ist). Ausnahmen für [[Datentyp#Elementare Datentypen|primitive Datentypen]] wie in vielen anderen objektorientierten Programmiersprachen gibt es nicht. Auch Klassen sind Objekte. Objekte speichern Instanzvariablen und haben eine Klasse. Klassen sind Objekte, die Methoden speichern und eine Vererbungshierarchie besitzen. Auf Instanzvariablen kann ausschließlich über Methoden zugegriffen werden.</div></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>Ruby ist eine Programmiersprache, die, obwohl sie auch viele andere Programmierparadigmen unterstützt, von Grund auf objektorientiert ist. Das bedeutet konkret, dass in Ruby ausnahmslos jeder Wert ein Objekt und jede Funktion eine Methode ist (d.&amp;nbsp;h. einer Klasse zugeordnet ist). Ausnahmen für [[Datentyp#Elementare Datentypen|primitive Datentypen]] wie in vielen anderen objektorientierten Programmiersprachen gibt es nicht. Auch Klassen sind Objekte. Objekte speichern Instanzvariablen und haben eine Klasse. Klassen sind Objekte, die Methoden speichern und eine Vererbungshierarchie besitzen. Auf Instanzvariablen kann ausschließlich über Methoden zugegriffen werden.</div></td> </tr> <tr> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> <td class="diff-marker"></td> <td style="background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><br /></td> </tr> </table> Alnilam