CoffeeScript. Второе дыхание JavaScript
Покупка
Тематика:
Программирование на Java
Издательство:
ДМК Пресс
Автор:
Бейтс Марк
Перевод:
Киселев Артём Николаевич
Год издания: 2023
Кол-во страниц: 311
Дополнительно
Вид издания:
Практическое пособие
Уровень образования:
Дополнительное образование
ISBN: 978-5-89818-581-7
Артикул: 448685.04.99
Если вы уже умеете писать на JavaScript, на CoffeeScript вы сможете делать это лучше. А поскольку программный код на CoffeeScript «компилируется» в программный код на JavaScript, он легко впишется практически в любое веб-окружение. В книге автор рассказывает веб-разработчикам, почему язык CoffeeScript так удобен и как он позволяет избежать проблем, часто способствующих появлению ошибок в программном коде на JavaScript и усложняющих его сопровождение. Он познакомит вас со всеми особенностями и приемами, которые необходимо знать, чтобы писать качественный программный код на CoffeeScript, и покажет, как использовать преимущества еще более надежного набора инструментов, входящих в состав языка CoffeeScript.
Издание предназначено в первую очередь веб-разработчикам, использующим JavaScript, а также всем тем, кто хочет писать качественный и понятный код.
- Полная коллекция по информатике и вычислительной технике
- Веб-разработка
- ДМК Пресс. Информационные системы и технологии
- ДМК Пресс. ИТ-технологии для профессионалов
- Интермедиатор. Информационные системы и технологии (сводная)
- Интермедиатор. ИТ-технологии для профессионалов (сводная)
- Программирование
- Программирование на Java
Тематика:
ББК:
УДК:
ОКСО:
- ВО - Бакалавриат
- 09.03.01: Информатика и вычислительная техника
- 09.03.02: Информационные системы и технологии
- 09.03.04: Программная инженерия
ГРНТИ:
Скопировать запись
Фрагмент текстового слоя документа размещен для индексирующих роботов
CoffeeScript. Второе дыхание JavaScript Марк Бейтс
Programming in CoffeeScript Mark Bates
CoffeeScript. Второе дыхание JavaScript Марк Бейтс Москва, 2023 2-е издание, электронное
УДК 004.738.5:004.45CoffeeScript ББК 32.973.202-018.2 Б41 Б41 Бейтс, Марк. CoffeeScript. Второе дыхание JavaScript / М. Бейтс ; пер. с англ. А. Н. Киселёва. — 2-е изд., эл. — 1 файл pdf : 311 с. — Москва : ДМК Пресс, 2023. — Систем. требования: Adobe Reader XI либо Adobe Digital Editions 4.5 ; экран 10". — Текст : электронный. ISBN 978-5-89818-581-7 Если вы уже умеете писать на JavaScript, на CoffeeScript вы сможете делать это лучше. А поскольку программный код на CoffeeScript «компилируется» в программный код на JavaScript, он легко впишется практически в любое веб-окружение. В книге автор рассказывает веб-разработчикам, почему язык CoffeeScript так удобен и как он позволяет избежать проблем, часто способствующих появлению ошибок в программном коде на JavaScript и усложняющих его сопровождение. Он познакомит вас со всеми особенностями и приемами, которые необходимо знать, чтобы писать качественный программный код на CoffeeScript, и покажет, как использовать преимущества еще более надежного набора инструментов, входящих в состав языка CoffeeScript. Издание предназначено в первую очередь веб-разработчикам, использующим JavaScript, а также всем тем, кто хочет писать качественный и понятный код. УДК 004.738.5:004.45CoffeeScript ББК 32.973.202-018.2 Электронное издание на основе печатного издания: CoffeeScript. Второе дыхание JavaScript / М. Бейтс ; пер. с англ. А. Н. Киселёва. — Москва : ДМК Пресс, 2016. — 310 с. — ISBN 978-597060-240-9. — Текст : непосредственный. Все права защищены. Любая часть этой книги не может быть воспроизведена в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Материал, изложенный в данной книге, многократно проверен. Но поскольку вероятность технических ошибок все равно существует, издательство не может гарантировать абсолютную точность и правильность приводимых сведений. В связи с этим издательство не несет ответственности за возможные ошибки, связанные с использованием книги. В соответствии со ст. 1299 и 1301 ГК РФ при устранении ограничений, установленных техническими средствами защиты авторских прав, правообладатель вправе требовать от нарушителя возмещения убытков или выплаты компенсации. ISBN 978-5-89818-581-7 © by Pearson Education, Inc. © Оформление, издание, ДМК Пресс, 2016
Содержание Благодарности ................................................. 12 Об авторе ........................................................ 15 Предисловие ................................................... 16 Что такое CoffeeScript? ....................................................... 19 Кому адресована эта книга? ............................................... 21 Как читать эту книгу ............................................................ 22 Структура книги .................................................................. 24 Часть I: Основы CoffeeScript ........................................... 24 Часть II: Практическое применение CoffeeScript ............. 25 Установка CoffeeScript ........................................................ 26 Как запускать примеры ....................................................... 27 Примечания ........................................................................ 27 Часть I. Основы CoffeeScript ............................... 29 1. Введение ..................................................... 30 Интерактивная среда CoffeeScript ...................................... 30 Компиляция в браузере ...................................................... 33 Предостережение ............................................................... 35 Компиляция в командной строке ........................................ 35 Флаг --compile ............................................................... 36
Содержание Интерфейс командной строки CoffeeScript ......................... 36 Флаг --output .................................................................. 38 Флаг --bare..................................................................... 38 Флаг --print .................................................................... 39 Флаг --watch .................................................................. 40 Выполнение файлов CoffeeScript ................................... 41 Прочие флаги ................................................................. 41 В заключение ...................................................................... 41 Примечания ........................................................................ 42 2. Основы ........................................................ 43 Синтаксис ........................................................................... 43 Значимые пробелы ............................................................. 44 Ключевое слово function ..................................................... 46 Круглые скобки ................................................................... 46 Переменные и области видимости...................................... 48 Видимость переменных в JavaScript ............................... 48 Видимость переменных в CoffeeScript............................ 49 Анонимная функция-обертка .......................................... 50 Интерполяция ..................................................................... 54 Интерполяция строк ....................................................... 54 Интерполируемые строки .............................................. 55 Строковые литералы ...................................................... 57 Встроенные документы .................................................. 59 Комментарии ................................................................. 60 Встроенные комментарии .............................................. 61 Блочные комментарии ................................................... 61 Расширенный синтаксис регулярных выражений ................ 62 В заключение ...................................................................... 63 Примечания ........................................................................ 63
Содержание 3. Управляющие конструкции ............................ 64 Операторы и псевдонимы ................................................... 64 Арифметические операторы .......................................... 65 Присваивание ................................................................ 66 Сравнение ..................................................................... 69 Строки ........................................................................... 72 Оператор проверки существования ............................... 72 Псевдонимы ................................................................... 75 Псевдонимы is и isnt ....................................................... 76 Псевдоним not ............................................................... 76 Псевдонимы and и or ...................................................... 78 Псевдонимы логических значений ................................. 78 Псевдоним @ ................................................................. 80 Условные инструкции if/unless ............................................ 81 Инструкция if .................................................................. 81 Инструкция if/else .......................................................... 82 Инструкция if/else if ........................................................ 85 Инструкция unless .......................................................... 87 Встроенные условные инструкции ................................. 88 Инструкции switch/when ..................................................... 89 В заключение ...................................................................... 91 Примечания ........................................................................ 92 4. Функции и аргументы ..................................... 93 Основы функций ................................................................. 95 Аргументы .......................................................................... 98 Аргументы со значениями по умолчанию ............................ 99 Групповые аргументы... .................................................... 102 В заключение .................................................................... 106 Примечания ...................................................................... 106
Содержание 5. Коллекции и итерации ................................. 107 Массивы ........................................................................... 107 Проверка на вхождение ................................................ 109 Присваивание с перестановкой ................................... 110 Множественное, или реструктурирующее присваивание .............................................................. 111 Диапазоны ................................................................... 115 Срезы массивов ........................................................... 117 Замена значений в массиве ......................................... 119 Вставка значений ......................................................... 120 Объекты/хеши .................................................................. 121 Получение и изменение атрибутов ............................... 125 Реструктурирующее присваивание .............................. 127 Циклы и итерации ............................................................. 128 Итерации по элементам массивов ............................... 129 Ключевое слово by ....................................................... 130 Ключевое слово when ................................................... 131 Итерации по атрибутам объектов ................................. 132 Ключевое слово by ....................................................... 133 Ключевое слово when ................................................... 133 Ключевое слово own ..................................................... 134 Цикл while ..................................................................... 137 Цикл until ...................................................................... 138 Генераторы .................................................................. 139 Ключевое слово do ....................................................... 142 В заключение .................................................................... 144 Примечания ...................................................................... 145 6. Классы ...................................................... 146 Определение классов ....................................................... 146 Определение функций ...................................................... 147 Функция constructor .......................................................... 148 Область видимости в классах ........................................... 150
Содержание Наследование классов ...................................................... 159 Функции класса ................................................................ 166 Функции прототипа........................................................... 170 Привязка (-> и =>) ............................................................ 171 В заключение .................................................................... 177 Примечания ...................................................................... 178 Часть II: Практическое применение CoffeeScript .... 179 Примечания ...................................................................... 180 7. Инструмент сборки Cake и файлы сборки Cakefile ............................................... 181 Вступление ....................................................................... 181 Создание заданий для Cake .............................................. 182 Выполнение заданий ........................................................ 183 Использование параметров .............................................. 183 Вызов других заданий ....................................................... 187 В заключение .................................................................... 189 Примечания ...................................................................... 190 8. Тестирование с помощью Jasmine .................. 191 Установка Jasmine ............................................................ 192 Настройка Jasmine ............................................................ 192 Введение в Jasmine .......................................................... 195 Модульное тестирование .................................................. 197 До и после ........................................................................ 201 Собственные методы сопоставления ................................ 207 В заключение .................................................................... 210 Примечания ...................................................................... 212
Содержание 9. Введение в Node.js ...................................... 213 Что такое Node.js? ............................................................ 213 Установка Node ................................................................. 214 Введение .......................................................................... 215 Потоковые ответы ............................................................. 218 Создание сервера CoffeeScript ......................................... 220 Опробование сервера ...................................................... 233 В заключение .................................................................... 235 Примечания ...................................................................... 235 10. Пример: список задач, часть 1 (серверная) .... 236 Установка и настройка фреймворка Express ..................... 237 Настройка MongoDB с помощью Mongoose ...................... 242 Создание Todo API ............................................................ 245 Выполнение запросов с помощью Mongoose .................... 247 Извлечение всех задач ................................................. 247 Создание новых задач .................................................. 249 Получение, изменение и удаление задачи .................... 251 Реорганизация контроллера ........................................ 253 В заключение .................................................................... 258 Примечания ...................................................................... 258 11. Пример: список задач, часть 2 (клиент на основе jQuery) ................................. 259 Подготовка HTML с помощью Twitter Bootstrap .................. 259 Организация взаимодействий с помощью jQuery .............. 263 Добавление формы создания новой задачи ...................... 264 Отображение списка задач с помощью шаблонов Underscore.js ................................................ 267 Вывод списка имеющихся задач ....................................... 271