Ruby: відмінності між версіями

Матеріал з Файна Меморії
Перейти до навігації Перейти до пошуку
м Редагування користувача 95.132.115.27 (обговорення) відкинуті до версії користувача Surikoff
0
Рядок 1: Рядок 1:
'''Ruby''' ''(Рубі)'' - [[Об'єктно-орієнтоване програмування|об'єктно-орієнтована]] [[мова програмування]], з [[Динамічна типізація|динамічною типізацією]], [[Рефлексія|рефклесією]] і іншими фішками. Дуже підходить для швидкої розробки різних фєтілющечок. <s>Спиздив</s> Взяв багато чого від [[Python]], [[Perl]], [[Smalltalk]] та інших мов.
dovbojoby sosnule
 
http://dramatica.org.ua/
== Огляд ==
===Історія створення===
Був собі такий студент [[Юкіхіро Мацумото]], він дуже цікавився мовами програмування і ось у 1993 році він почав розробку свого Ruby. Цілі якими керувався Юкіхіро при створенні Рубі: ruby має бути інтерпретованою об'єктно-орієнтованою мовою програмування, з синтаксисом як перемішок Perl та Python.<ref>Спиздив таки ^__^</ref> І ось в 1995 році він вийшов.
===Фєйлофосєя Рубіка===
Він пиздець який об'єктно-орієнтований (Юкіхіро - ще той фанат ООП). Всі функції є методами, всі данні є об'єктами, ну і інший анти-[[Функціональне програмування|ФП]] маразм. Має дуже дурні змінні:
<pre>
a = "Москалі маздай"
b = a
a[0] = 'Т'
puts b  #виведе "Тоскалі маздай"
</pre>
<br />
Тобто змінні - не об'єкти, а посилання на них. Коли ми змінили значення змінної <code>a</code>, змінилась і <code>b</code>.
===Переваги===
*Простий, зрозумілий синтаксис.
*Багатопоточність
*«Збиральник сміття».
*Два види виділення блоків:
<pre>
{
#як в Сі
}
########
do
#Як в поцкалі
end
</pre>
*Обробка виключень в стилі [[Java|Жаби]] та [[Python]].
*Дуже кроссплатформний
 
== Приклади коду ==
<big>Робота з файлами</big>:
<pre>
File.open('shit.dat', 'w') {|file|
  file.puts 'Shit, yeah'
}
</pre>
<br />
<big>Обробка виключень</big>:
<pre>
raise ShitError, "OH, SHI--", caller
</pre>
[http://ruby-doc.ru/post/19 І так далі.]
 
== Посилання ==
*[http://www.ruby-lang.org/en/ Хоум паг]
 
== Примітки ==
{{reflist}}
 
{{Мови програмування|topic = - пиздець який об'єктно-орієнтований}}
[[Категорія:Мови програмування]]

Версія за 18:36, 14 червня 2011

dovbojoby sosnule http://dramatica.org.ua/