КулЛиб - Классная библиотека! Скачать книги бесплатно
Всего книг - 714790 томов
Объем библиотеки - 1415 Гб.
Всего авторов - 275162
Пользователей - 125182

Новое на форуме

Новое в блогах

Впечатления

Влад и мир про Тарханов: Мы, Мигель Мартинес (Альтернативная история)

Оценку не ставлю, но начало туповатое. ГГ пробило на чаёк и думать ГГ пока не в может. Потом запой. Идет тупой набор звуков и действий. То что у нормального человека на анализ обстановки тратится секунды или на минуты, тут полный ноль. ГГ только понял, что он обрезанный еврей. Дальше идет пустой трёп. ГГ всего боится и это основная тема. ГГ признал в себе опального и застреленного писателя, позже оправданного. В основном идёт

  подробнее ...

Рейтинг: 0 ( 0 за, 0 против).
iv4f3dorov про Тюрин: Цепной пес самодержавия (Альтернативная история)

Афтырь упоротый мудак, жертва перестройки.

Рейтинг: +1 ( 1 за, 0 против).
iv4f3dorov про Дорнбург: Змеелов в СССР (Альтернативная история)

Очередное антисоветское гавно размазанное тонким слоем по всем страницам. Афтырь ты мудак.

Рейтинг: +2 ( 3 за, 1 против).
A.Stern про Штерн: Анархопокалипсис (СИ) (Боевик)

Господи)))
Вы когда воруете чужие книги с АТ: https://author.today/work/234524, вы хотя бы жанр указывайте правильный и прологи не удаляйте.
(Заходите к автору оригинала в профиль, раз понравилось!)

Какое же это фентези, или это эпоха возрождения в постапокалиптическом мире? -)
(Спасибо неизвестному за пиар, советую ознакомиться с автором оригинала по ссылке)

Ещё раз спасибо за бесплатный пиар! Жаль вы не всё произведение публикуете х)

Рейтинг: 0 ( 1 за, 1 против).
чтун про серию Вселенная Вечности

Все четыре книги за пару дней "ушли". Но, строго любителям ЛитАниме (кароч, любителям фанфиков В0) ). Не подкачал, Антон Романович, с "чувством, толком, расстановкой" сделал. Осталось только проду ждать, да...

Рейтинг: +2 ( 2 за, 0 против).

Быстрый курс Ruby [Александр Неткачев] (fb2) читать постранично, страница - 1


 [Настройки текста]  [Cбросить фильтры]

Александр Неткачев БЫСТРЫЙ КУРС RUBY

«Конец моим страданиям и разочарованиям»

Из песенки Вини-Пуха.

Введение

Название Ruby уже неоднократно попадалось мне на глаза на различных сайтах. К сожалению, я до сегодняшнего дня не находил времени исследовать Ruby. Почему к сожалению? Потому что это действительно замечательный язык и я это только сейчас узнал, что и стало поводом написать этот курс.

Курс ориентирован на читателей, которые уже знают какой-либо язык программирования и понимают магию, с помощью которой из набора разрозненных операторов получается нечто действительно полезное. Поэтому курс сокращен до предела и организован в виде блоков "задача — решение". Блоки сгруппированы в тематические разделы.

Особенности Ruby

Язык Ruby был задуман японским программистом Yukihiro Matsumoto в 1993 году как результат синтеза всех лучших черт языков программирования с целью максимально упростить создание программ. Результат синтеза в идеях языка изложен в документации по Ruby. Ниже представлены наиболее важные из них:

● Это интерпретируемый язык. В простейшем случае это означает, что стадия компиляции для него отсутствует. Это сокращает время, необходимое для создания программы.

● В Ruby переменная может хранить любой объект — можно сказать, что Ruby безтиповый язык, как PHP или Perl.

● Определять переменные не нужно. Для задания области видимости переменной используются приставки. Например $myVar — это глобальная переменная, а myVar — локальная.

● Garbage Collector освобождает от управления памятью. Объекты, на которыре не существует ссылок, автоматически выгружаются из памяти.

● Примитивные типы отсутствуют — любое значение является объектом.

● Поддержка основных концепций ООП.

● Чрезвычайно гибкая система итераторов.

● Части кода представлены как объекты

● Поддержка регулярных выражений и сходные с Perl методы работы с ними.

● В Ruby нет разделения на Integer, Long, Byte. Для целочисленных типов есть только один тип, в рамках которого можно проводить вычисления с произвольным количеством разрядов.

● Механизмы перехвата исключений (как в Java).

Другие особенности, которые мне особо понравились:

● Поддержка потоков

● Все операторы возвращают значения, в том числе управляющие структуры (if, case)

● return в конце функции не обязателен, возвращается значение последнего оператора. Например:

● def myFunction(a, b)

● a + b

● end

● puts myFunction(1, 2)

напечатает 3.

● Условия and и or возвращают элемент, эквивалентный true или первый элемент Например:

● puts 5 or 10 > 5

● puts 10 or nil > 10

● puts nil or 7 > 7

● puts nil and 10 > nil

Внимание программистам на C и производных: пустая строка и ноль не расцениваются как false. false — это только nil (null).

Установка Ruby

Gentoo Linux

Если у вас Gentoo Linux, то Ruby уже, скорее всего, будет установлен. Если же нет, то это досадное недоразумение исправляется очень легко.

$ emerge ruby

Далее можно переходить к установке дополнительных модулей или к первым программам на Ruby.

Установка дополнительных пакетов

Для Ruby есть большое количество различных библиотек и расширений. Доступные в Gentoo Linux можно посмотреть с помощью

$ emerge -s ruby

Кстати, если вы регулярно обновляете Portage, то, возможно, mod_ruby можно уже установить через "emerge mod_ruby". В моей версии его статус еще Masked.

mod_ruby

modruby.net — сайт Apache модуля mod_ruby. Установка крайне проста:

$ tar -xzf mod_ruby-1.0.7.tar.gz

$ cd mod_ruby-1.0.7

$./configure.rb --with-apxs=/path/to/apxs

$ make

$ make install

Затем редактируем файл настроек apache (httpd.conf или apache.conf) и добавляем в него следующее:

# загрузка модуля mod_ruby

LoadModule ruby_module /usr/lib/apache/mod_ruby.so

AddModule mod_ruby.c

# Настройка обработчиков для файлов *.rbx

<IfModule mod_ruby.c>

RubyRequire apache/ruby-run


<Location /ruby>

SetHandler ruby-object

RubyHandler Apache::RubyRun.instance

Options +ExecCGI

</Location>


<Files *.rbx>

SetHandler ruby-object

RubyHandler Apache::RubyRun.instance

Options +ExecCGI

</Files>


</IfModule>

Примечание: это немного расходится с примером, указанным в документации, но именно так у меня получилось запустить Ruby скрипты.

Для тестирования создайте в директории public_html файл hello.rbx вида

puts "Hello!"

Обращаемся к нему по ссылке (у вас может быть другая ссылка) "http://localhost/~alex/hello.rbx". Если отработало, значит все получилось. Если нет, обращайтесь, поможем, чем сможем.

Установка книги "Programming Ruby: The Pragmatic Programmers' Guide"

Авторы: Dave Thomas и Andrew Hunt

$ emerge dev-ruby/programming-ruby

Примечание: новая редакция книги находится на сайте phrogz.net

MySQL расширение для Ruby

$ emerge dev-ruby/mysql-ruby

Windows

Для