Nie rozumiem różnic między "aktualną" wersją Rubiego (1.8) a "nową" wersją (1.9). Czy istnieje „łatwe” lub „proste” wyjaśnienie różnic i dlaczego jest tak różne?
W celu umieszczenia tych informacji w tekście w celu łatwiejszego korzystania z nich oraz na wypadek, gdyby odsyłacz zniknął w abstrakcyjnej przyszłości, oto przegląd slajdów Sama. Przeglądanie pokazu slajdów jest mniej przytłaczające, ale umieszczenie go na takiej liście również jest pomocne.
HTH == "Mam nadzieję, że to pomoże". Musiałem to sprawdzić. Czy możesz wskazać mi udzieloną przez Ciebie odpowiedź, w przypadku której nie miałeś nadziei, że to pomoże?
Chris Wesseling
A może miałeś na myśli szczęśliwy, że pomogę? Zmień odpowiednio. Lub usuń ją, jeśli twoje szczęście / nadzieja liczy się dla wszystkich twoich odpowiedzi. ;-)
Chris Wesseling
10
Nie, zostawię to tak, jak jest. Jako procent całkowitej odpowiedzi jest znikoma i każda interpretacja jest dla mnie w porządku. Dzięki.
Tim Sullivan
Zgodnie z podanym przez Ciebie linkiem zmiana delegacji była błędem i została naprawiona.
Kyle Strand
A co z niespójnością między „Range.include”? metoda? Ruby v1.8.7 daje inny wynik niż v1.9
Lucas Pottersky
12
Ogromną różnicą byłoby przejście z interpretera Matza na YARV , maszynę wirtualną z kodem bajtowym , która znacznie poprawia wydajność.
Lubię ich obu. Książka Kilof omawia niektóre rzeczy dokładniej, ale język programowania Ruby jest dobry, gdy chcesz szybko coś znaleźć. Jest bliżej książki „pigułki”.
Tin Man
1
Jeszcze kilka zmian:
Zwracanie tablicy singleton Splat:
def function
return*[1]end
a=function
rubin 1,9: [1]
rubinowy 1,8: 1
tablice argumentów
def function(array)
array.each {|v| p v }end
function "1"
rubin 1,8: „1”
ruby 1.9: niezdefiniowana metoda `each 'for" 1 ": String
Odpowiedzi:
Sam Ruby ma fajny pokaz slajdów, który przedstawia różnice .
W celu umieszczenia tych informacji w tekście w celu łatwiejszego korzystania z nich oraz na wypadek, gdyby odsyłacz zniknął w abstrakcyjnej przyszłości, oto przegląd slajdów Sama. Przeglądanie pokazu slajdów jest mniej przytłaczające, ale umieszczenie go na takiej liście również jest pomocne.
Ruby 1.9 - główne funkcje
Co się zmieniło?
Pojedyncze ciągi znaków.
Ruby 1.9.0
Ruby 1.8.6
Indeks ciągów.
Ruby 1.9.0
Ruby 1.8.6
{"a", "b"} Nie jest już obsługiwane
Ruby 1.9.0
Ruby 1.8.6
Akcja: Konwertuj na {1 => 2}
Array.to_s
Teraz zawiera znaki interpunkcyjneRuby 1.9.0
Ruby 1.8.6
Akcja: Zamiast tego użyj .join
Dwukropek nie jest już ważny w instrukcjach When
Ruby 1.9.0
Ruby 1.8.6
Akcja: użyj średnika, a następnie lub nowej linii
Blokuj zmienne teraz cieniuj zmienne lokalne
Ruby 1.9.0
Ruby 1.8.6
Hash.index
PrzestarzałeRuby 1.9.0
Ruby 1.8.6
Akcja: użyj Hash.key
Fixnum.to_sym
Teraz nie maRuby 1.9.0
Ruby 1.8.6
(Ciąg dalszy) Ruby 1.9.0
svn.ruby-lang.org/repos/ruby/trunk/lib/rake.rb
Klawisze skrótu teraz nieuporządkowane
Ruby 1.9.0
Ruby 1.8.6
Zamówienie to zamówienie reklamowe
Bardziej rygorystyczne wyrażenia regularne Unicode
Ruby 1.9.0
Ruby 1.8.6
tr
aRegexp
teraz zrozum UnicodeRuby 1.9.0
pack
iunpack
Ruby 1.8.6
BasicObject
Bardziej brutalny niżBlankSlate
Ruby 1.9.0
Ruby 1.8.6
Akcja: Użyj :: Math :: PI
Zmiany delegacji
Ruby 1.9.0
Ruby 1.8.6
Wada 17700Użycie $ KCODE generuje ostrzeżenia
Ruby 1.9.0
Ruby 1.8.6
instance_methods
Teraz tablica symboliRuby 1.9.0
Ruby 1.8.6
Akcja: Zastąpienie instance_methods.include? z zdefiniowaną metodą?
Kodowanie pliku źródłowego
Podstawowy
Emacs
Szulernia
Prawdziwe gwintowanie
Co nowego?
Alternatywna składnia dla symbolu jako klucze z krzyżykiem
Ruby 1.9.0
Ruby 1.8.6
Blokuj zmienne lokalne
Ruby 1.9.0
Metody wstrzykiwania
Ruby 1.9.0
Ruby 1.8.6
to_enum
Ruby 1.9.0
Nie ma bloku? Enum!
Ruby 1.9.0
Lambda Shorthand
Ruby 1.9.0
Ruby 1.8.6
Liczby zespolone
Ruby 1.9.0
Liczba dziesiętna nadal nie jest wartością domyślną
Ruby 1.9.0
Regex „Właściwości”
Ruby 1.9.0
Ruby 1.8.6
Ikona w środku
Ruby 1.9.0
Włókna
Ruby 1.9.0
Break Values
Ruby 1.9.0
Metody „zagnieżdżone”
Ruby 1.9.0
HTH!
źródło
Ogromną różnicą byłoby przejście z interpretera Matza na YARV , maszynę wirtualną z kodem bajtowym , która znacznie poprawia wydajność.
źródło
Wielu poleca teraz język programowania Ruby zamiast kilofa - co więcej, zawiera wszystkie szczegóły różnic 1,8 / 1,9.
źródło
Jeszcze kilka zmian:
Zwracanie tablicy singleton Splat:
tablice argumentów
źródło