Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

Программирование на языке Ruby

Покупка
Артикул: 615785.03.99
Доступ онлайн
399 ₽
В корзину
Ruby - относительно новый объектно-ориентированный язык, разработанный Юкихиро Мацумото в 1995 году и позаимствовавший некоторые особенности у языков LISP, Smalltalk, Perl, CLU и других. Язык активно развивается и применяется в самых разных областях: от системного администрирования до разработки сложных динамических сайтов. Книга является полноценным руководством по Ruby - ее можно использовать и как учебник, и как справочник, и как сборник ответов на вопросы типа «как сделать то или иное в Ruby». В ней приведено свыше 400 примеров, разбитых по различным аспектам программирования, и к которым автор дает обстоятельные комментарии. Издание предназначено для программистов самого широкого круга и самой разной квалификации, желающих научиться качественно и профессионально работать на Ruby.
Фултон, Х. Программирование на языке Ruby : практическое руководство / Х. Фултон ; пер. с англ. А. А. Слинкина. - 2-е изд. - Москва : ДМК Пресс, 2023. - 689 с. - ISBN 978-5-89818-531-2. - Текст : электронный. - URL: https://znanium.com/catalog/product/2107208 (дата обращения: 28.11.2024). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов
                           Хэл Фултон
               Программирование на языке Ruby



            The Ruby Way, Second Edition










Hal Fulton















A Addison Wesley
Upper Saddle River, NJ • Boston • Indianapolis • San Francisco NewYork • Toronto • Montreal • London • Munich • Paris • Madrid
Capetown • Sydney • Tokyo • Singapore • Mexico City

            Программирование на языке Ruby








  Хэл Фултон



    2-е издание, электронное








Москва, 2023

УДК 004.438
ББК 32.973.26-018.2
     Ф94






     Фултон, Хэл.
Ф94 Программирование на языке Ruby / X. Фултон ; пер. с англ. А. А. Слинкина. — 2-е изд., эл. — 1 файл pdf : 689 с. — Москва : ДМК Пресс, 2023. — Систем. требования: Adobe Reader XI либо Adobe Digital Editions 4.5 ; экран 10". — Текст : электронный.
        ISBN 978-5-89818-531-2
        Ruby — относительно новый объектно-ориентированный язык, разработанный Юкихиро Мацумото в 1995 году и позаимствовавший некоторые особенности у языков LISP, Smalltalk, Perl, CLU и других. Язык активно развивается и применяется в самых разных областях: от системного администрирования до разработки сложных динамических сайтов.
        Книга является полноценным руководством по Ruby — ее можно использовать и как учебник, и как справочник, и как сборник ответов на вопросы типа «как сделать то или иное в Ruby». В ней приведено свыше 400 примеров, разбитых по различным аспектам программирования, и к которым автор дает обстоятельные комментарии.
        Издание предназначено для программистов самого широкого круга и самой разной квалификации, желающих научиться качественно и профессионально работать на Ruby.
                                                         УДК 004.438
ББК 32.973.26-018.2

     Электронное издание на основе печатного издания: Программирование на языке Ruby / X. Фултон ; пер. с англ. А. А. Слинкина. — Москва : ДМК Пресс, 2014. — 688 с. — ISBN 978-594074-995-0. — Текст : непосредственный.




           Все права защищены. Любая часть этой книги не может быть воспроизведена в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав.
           Материал, изложенный в данной книге, многократно проверен. Но поскольку вероятность технических ошибок все равно существует, издательство не может гарантировать абсолютную точность и правильность приводимых сведений. В связи с этим издательство не несет ответственности за возможные ошибки, связанные с использованием книги.


В соответствии со ст. 1299 и 1301 ГК РФ при устранении ограничений, установленных техническими средствами защиты авторских прав, правообладатель вправе требовать от нарушителя возмещения убытков или выплаты компенсации.


ISBN 978-5-89818-531-2

                © Pearson Education, Inc.
© Оформление, ДМК Пресс, 2014

        Содержание

   Предисловие............................................12
   Об авторе..............................................17
   Введение...............................................18
      О втором издании....................................18
      Как организована эта книга..........................21
      Об исходныхтекстах, приведенныхв книге..............23
      «Путь Ruby».........................................24
   Глава 1. Обзор Ruby.....................................29
      1.1. Введение в объектно-ориентированное программирование....................................30
      1.2. Базовый синтаксис и семантика Ruby.............35
      1.3. ООП в Ruby.....................................48
      1.4. Динамические аспекты Ruby......................57
      1.5. Потренируйте свою интуицию: что следует запомнить.61
      1.6. Жаргон Ruby....................................76
      1.7. Заключение.....................................79
   Глава 2. Строки........................................80
      2.1. Представление обычных строк....................80
      2.2. Альтернативная нотация для представления строк.81
      2.3. Встроенныедокументы
      2.4. Получениедлины строки..........................83
      2.5. Построчная обработка...........................83
      2.6. Побайтовая обработка...........................84
      2.7. Специализированное сравнение строк.............84
      2.8. Разбиение строки налексемы.....................85
      2.9. Форматирование строк...........................87
      2.10. Строки в качествеобъектов ввода/вывода........87
      2.11. Управление регистром..........................88
      2.12. Вычленение и замена подстрок..................88
      2.13. Подстановкавстроках...........................90
      2.14. Поиск в строке................................91

Содержание

       2.15. Преобразование символов в коды ASCII и обратно.92
       2.16. Явные и неявные преобразования.................92
       2.17. Дописывание в конец строки.....................94
       2.18. Удаление хвостовых символов новой строки и прочих...94
       2.19. Удаление лишних пропусков......................95
       2.20. Повтор строк...................................96
       2.21. Включение выражений в строку...................96
       2.22. Отложенная интерполяция........................96
       2.23. Разборданных, разделенныхзапятыми..............97
       2.24. Преобразование строки в число (десятичное или иное).98
       2.25. Кодирование и декодирование строк в кодировке rot13.99
       2.26. Шифрованиестрок...............................100
       2.27. Сжатие строк..................................101
       2.28. Подсчет числа символов в строке...............101
       2.29. Обращениестроки...............................102
       2.30. Удалениедубликатов............................102
       2.31. Удаление заданных символов....................102
       2.32. Печать специальныхсимволов....................102
       2.33. Генерирование последовательности строк........103
       2.34. Вычисление 32-разрядного CRC..................103
       2.35. Вычисление МЭ5-свертки строки.................104
       2.36. Вычисление расстояния Левенштейна междудвумя строками.................................105
       2.37. Ьазе64-кодирование и декодирование............106
       2.38. Кодирование и декодирование строк (uuencode/uudecode).................................107
       2.39. Замена символов табуляции пробелами и сворачивание пробелов в табуляторы................107
       2.40. Цитированиетекста.............................108
       2.41. Заключение....................................109
    Глава 3. Регулярные выражения..........................110
       3.1. Синтаксис регулярных выражений.................110
       3.2. Компиляция регулярных выражений................112
       3.3. Экранирование специальных символов.............113
       3.4. Якоря..........................................113
       3.5. Кванторы.......................................114
       3.6. Позитивное и негативное заглядывание вперед....116
       3.7. Обратные ссылки................................117
       3.8. Классы символов................................119
       3.9. Обобщенные регулярные выражения................120

Содержание

I

      3.10. Сопоставлениеточки символу конца строки......121
      3.11. Внутренниемодификаторы.......................122
      3.12. Внутренние подвыражения......................122
      3.13. ВиЬуи Oniguruma..............................123
      3.14. Примеры регулярных выражений.................129
      3.15. Заключение...................................133
   Глава 4. Интернационализация в Ruby...................134
      4.1. Историческиесведенияитерминология.............135
      4.2. Кодировки в пост-ASCII мире...................139
      4.3. Справочники сообщений.........................150
      4.4. Заключение....................................157
   Глава5. Численные методы..............................158
      5.1. Представление чисел в языке Ruby..............158
      5.2. Основныеоперации над числами..................159
      5.3. Округление чисел с плавающей точкой...........160
      5.4. Сравнение чисел с плавающей точкой............162
      5.5. Форматирование чисел для вывода...............163
      5.6. Вставка разделителей при форматировании чисел.163
      5.7. Работа с очень большими числами...............164
      5.8. Использование класса BigDecimal...............164
      5.9. Работа с рациональными числами................166
      5.10. Перемножение матриц..........................167
      5.11. Комплексные числа............................171
      5.12. Библиотека mathn.............................172
      5.13. Разложение на простые множители, вычисление НОД и НОК...............................172
      5.14. Простыечисла.................................173
      5.15. Явные и неявные преобразования чисел.........174
      5.16. Приведениечисловыхзначений ..................175
      5.17. Поразрядные операции над числами.............176
      5.18. Преобразование системы счисления.............177
      5.19. Извлечениекубических корней, корней четвертой степени ит. д.....................178
      5.20. Определение порядка байтов...................178
      5.21. Численное вычисление определенного интеграла..179
      5.22. Тригонометрия в градусах, радианахи градах...180
      5.23. Неэлементарная тригонометрия.................181
      5.24. Вычислениелогарифмов по произвольномуоснованию ...182
      5.25. Вычислениесреднего, медианы и моды набораданных ...182

Содержание

      5.26. Дисперсия и стандартное отклонение............183
      5.27. Вычисление коэффициента корреляции............184
      5.28. Генерирование случайных чисел.................185
      5.29. Кэширование функций с помощью метода memoize....186
      5.30. Заключение....................................187
    Глава 6. Символы и диапазоны..........................188
      6.1. Символы........................................188
      6.2. Диапазоны......................................192
      6.3. Заключение.....................................200
    Глава 7. Дата и время.................................202
      7.1. Определениетекущего момента времени............203
      7.2. Работасконкретнымидатами (послеточки отсчета)..203
      7.3. Определениедня недели..........................204
      7.4. Определениедаты Пасхи..........................204
      7.5. Вычисление n-ого дня недели в месяце...........205
      7.6. Преобразование из секунд в более крупные единицы.206
      7.7. Вычисление промежутка времени, прошедшего от точки отсчета.........................207
      7.8. Високосныесекунды..............................207
      7.9. Определение порядкового номерадня в году.......208
      7.10. Контрольдаты и времени........................208
      7.11. Определение недели в году.....................209
      7.12. Проверка года на високосность.................210
      7.13. Определение часового пояса....................210
      7.14. Манипулирование временем бездаты..............211
      7.15. Сравнение моментов времени....................211
      7.16. Прибавление интервала к моменту времени.......211
      7.17. Вычисление разности междудвумя моментами времени ............................................212
      7.18. Работа с конкретными датами (до точки отсчета)..212
      7.19. Взаимные преобразования объектов Date, Time и DateTime.....................................213
      7.20. Извлечениедаты и времени из строки............214
      7.21. Форматирование и печатьдаты и времени.........215
      7.22. Преобразование часовых поясов.................216
      7.23. Определение числадней в месяце................216
      7.24. Разбиение месяца на недели....................216
      7.25. Заключение....................................218

Содержание

’

   Глава 8. Массивы, хэши и другие перечисляемые структуры...................219
     8.1. Массивы......................................219
     8.2. Хэши.........................................242
     8.3. Перечисляемыеструктуры вобщем................252
     8.4. Заключение...................................259

   Глава 9. Более сложные структуры данных..............260
      9.1. Множества....................................260
      9.2. Стеки и очереди..............................263
      9.3. Деревья......................................268
      9.4. Графы........................................274
      9.5. Заключение...................................280
   Глава 10. Ввод/вывод и хранение данных...............281
      10.1. Файлы и каталоги............................282
      10.2. Доступ кданным более высокогоуровня.........306
      10.3. Библиотека KirbyBase........................314
      10.4. Подключение к внешним базам данных..........317
      10.5. Заключение..................................329
   Глава 11. ООП и динамические механизмы в Ruby........330
      11.1. Рутинныеобъектно-ориентированныезадачи......331
      11.2. Более сложные механизмы.....................356
      11.3. Динамические механизмы......................375
      11.4. Заключение..................................395

   Глава 12. Графические интерфейсы для Ruby.............396
      12.1. Ruby/Tk......................................397
      12.2. Ruby/GTK2....................................409
      12.3. FXRuby(FOX)..................................422
      12.4. QtRuby.......................................436
      12.5. Другие библиотеки для создания графическихинтерфейсов................446
      12.6. Заключение...................................447
   Глава 13. Потоки в Ruby...............................448
      13.1. Создание потоков и манипулирование ими.......449
      13.2. Синхронизация потоков........................458
      13.3. Заключение...................................473

Содержание

    Глава 14. Сценарии и системное администрирование.......................474
      14.1. Запуск внешних программ......................474
      14.2. Флаги и аргументы в командной строке.........479
      14.3. БиблиотекаЗИеН...............................482
      14.4. Переменныеокружения..........................485
      14.5. Сценарии на платформе MicrosoftWindows.......487
      14.6. Моментальный инсталлятордляWindows...........493
      14.7. Библиотеки, о которых полезно знать..........494
      14.8. Работа с файлами, каталогами и деревьями.....495
      14.9. Различныесценарии............................498
      14.10. Заключение..................................502
    Глава 15. Ruby и форматы данных......................503
      15.1. РазборХМБиРЕХМР..............................503
      15.2. RSS и Atom...................................508
      15.3. Обработка изображений с помощью RMagick......512
      15.4. Создание документов в формате PDF с помощью библиотеки PDF::Writer...................521
      15.5. Заключение...................................530
    Глава 16. Тестирование и отладка.....................531
      16.1. БиблиотекаTest::Unit.........................531
      16.2. KомплектинструментовZenTest..................535
      16.3. Работасотладчиком Ruby.......................538
      16.4. Использование irb в качестве отладчика.......541
      16.5. Измерение покрытия кода......................542
      16.6. Измерениепроизводительности..................543
      16.7. Объекты печати...............................547
      16.8. Заключение...................................548
    Глава 17. Создание пакетов и распространение программ..........................550
      17.1. Программа RDoc...............................550
      17.2. Установкаи подготовкапакета..................555
      17.3. RubyForge и RAA..............................559
      17.4. Заключение...................................560
    Глава 18. Сетевое программирование...................561
      18.1. Сетевые серверы..............................562
      18.2. Сетевые клиенты..............................572
      18.3. Заключение...................................591

Доступ онлайн
399 ₽
В корзину