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

CoffeeScript. Второе дыхание JavaScript

Покупка
Артикул: 448685.04.99
Доступ онлайн
319 ₽
В корзину
Если вы уже умеете писать на JavaScript, на CoffeeScript вы сможете делать это лучше. А поскольку программный код на CoffeeScript «компилируется» в программный код на JavaScript, он легко впишется практически в любое веб-окружение. В книге автор рассказывает веб-разработчикам, почему язык CoffeeScript так удобен и как он позволяет избежать проблем, часто способствующих появлению ошибок в программном коде на JavaScript и усложняющих его сопровождение. Он познакомит вас со всеми особенностями и приемами, которые необходимо знать, чтобы писать качественный программный код на CoffeeScript, и покажет, как использовать преимущества еще более надежного набора инструментов, входящих в состав языка CoffeeScript. Издание предназначено в первую очередь веб-разработчикам, использующим JavaScript, а также всем тем, кто хочет писать качественный и понятный код.
Бейтс, М. CoffeeScript. Второе дыхание JavaScript : практическое руководство / М. Бейтс ; пер. с англ. А. Н. Киселёва. - 2-е изд. - Москва : ДМК Пресс, 2023. - 311 с. - ISBN 978-5-89818-581-7. - Текст : электронный. - URL: https://znanium.com/catalog/product/2107944 (дата обращения: 11.12.2024). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов
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

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