[MUSIC]
Теперь, когда у нас есть понимание модулей узлов, давайте сделаем наше первое упражнение,
чтобы улучшить наше понимание модулей узлов с примером в этом упражнении.
Поэтому, чтобы начать работу, давайте перейдем в удобное место на нашем компьютере.
Так вот, я нахожусь в папке Coursera,
где у меня есть файлы из всех предыдущих курсов.
Поэтому я собираюсь создать новую папку здесь с именем NodeJS, и в
этой папке я собираюсь хранить весь код, связанный с курсом NodeJS.
Поэтому, перейдя в папку NodeJS,
давайте создадим здесь подпапку с именем node-examples.
И в этой папке
мы будем создавать файлы, связанные с этим упражнением.
Откройте окно терминала или командное окно, а
затем перейдите в папку node-examples в командной строке,
а затем в командной строке введите npm init, чтобы
инициализировать эту папку как приложение узла.
Поэтому введите npm init, а затем он придумает некоторые
стандартные значения по умолчанию для некоторой информации,
которая будет храниться в файле с именем package.json.
Так что для имени, давайте напечатаем node-примеры,
а версия 1.1.0, а описание,
я просто напечатаю Simple Node Examples.
И точка входа - это значение по умолчанию index.js.
Для тестовой команды просто оставьте его как таковой и репозиторий Git на данный момент,
мы оставим его как таковой.
А для автора, просто заполните свое имя.
И остальное, а затем npm init
покажет значение по умолчанию, которое он будет настроить в файле package.json.
Как мы узнали, файл package.json является файлом манифеста для
приложения узла, и как только вы завершите это, вы заметите, что
файл package.json создается в этой папке node-examples.
Давайте откроем этот проект в редакторе по нашему выбору.
Поэтому я собираюсь открыть свой код Visual Studio в этой папке.
Когда мой код Visual Studio, он открывается в этой папке.
Я собираюсь перейти к сценариям здесь и настроить сценарий здесь, говорящий «start»,
и я скажу «node index».
А затем сохраните изменения в файле package.json.
Затем я собираюсь создать папку здесь и назову ее как index.js, и
как вы поняли, что основной здесь дается как файл index.js,
так что стартовый файл для моего приложения узла.
Поэтому в файле index.js я собираюсь создать простой пример,
чтобы проиллюстрировать различные функции узла и как мы будем строить модули узлов.
Итак, здесь мы построим пример, который оценивает площадь и
периметр прямоугольника.
Очень простой пример, который помогает нам проиллюстрировать
различные аспекты о узлах и узлах модулей.
Таким образом, тип начала работы, Var rect.
И мы собираемся создать объект JavaScript здесь,
это два свойства, периметр, который является функцией.
И, как вы видите, я использую функцию стрелки для определения этой функции здесь.
Таким образом, узел в его текущей версии поддерживает ES 6 или ES 2015.
И поэтому я собираюсь использовать поддержку функции стрелки,
которая доступна в ES 2015, чтобы определить эту функцию здесь.
И если вы прошли предыдущие курсы, где мы используем юбку времени,
это было бы вам знакомо.
Теперь с узлом, у нас есть возможность использования JavaScript или машинописного текста.
Теперь документация для узла, а
также выразить, что мы увидим позже, все используют стандартный JavaScript.
Поэтому я использовал стандартный JavaScript в этом курсе или JavaScript
ES2015 в этом курсе.
Если вы предпочитаете использовать TypeScript,
вы можете настроить свои примеры узлов, чтобы написать свое приложение в TypeScript.
Но тогда вам придется передать этот код в JavaScript,
чтобы его можно было запустить с помощью Node.
Поэтому вам нужно настроить дополнительную инфраструктуру,
чтобы иметь возможность использовать TypeScript.
В этом курсе я собираюсь использовать JavaScript в качестве языка по умолчанию для
остальной части курса.
И я не собираюсь идти в Typescript использовать его в этом курсе,
когда узлы начинают поддерживать Typescript изначально,
тогда имеет смысл перейти к Typescript [НЕразборчиво].
Но если вас интересует Typescript,
я заметил, что было несколько статей в блоге, опубликованных разными
людьми, которые иллюстрируют, как вы можете настроить приложение Node для использования Typescript.
Сказав это, давайте вернемся к файлу index.js, а
затем продолжим наш пример.
Поэтому я устанавливаю периметр здесь, а затем также функцию площади здесь.
Опять же, принимая два значения, x и y,
которые представляют длину и ширину прямоугольника.
Два параметра, и площадь вычисляется как x раз y.
Таким образом, из вашей начальной школы математики
вы знаете, как вычислить периметр и площадь прямоугольника.
Итак, здесь я установил этот объект JavaScript здесь, а
затем позвольте мне определить функцию здесь с именем SolveRect,
которая принимает два значения, (l
, b), в качестве двух параметров, длины и причала прямоугольника.
И он будет использовать этот объект JavaScript, который я
определил ранее, чтобы вычислить периметр и площадь прямоугольника.
Итак, внутри здесь
позвольте мне сделать console.log и
сказать Решение для прямоугольника с l равным
Это только для нашего удобства.
Таким образом, это будет печатать эту информацию на терминале там
, и поэтому в этом console.log я просто печатаю значения l и b, так
что я знаю для прямоугольника, для которого мы вычисляем длину и ширину.
Теперь я собираюсь проверить, чтобы убедиться, что длина и
ширина не меньше или равна нулю.
Если они меньше или равны нулю, то не имеет смысла вычислять
периметр и площадь прямоугольника.
Поэтому я скажу console.log здесь,
поэтому я бы сказал, что
размеры прямоугольника должны быть
больше нуля.
Таким образом, мы распечатаем эти значения на экране, если длина и
ширина меньше или равна нулю.
В противном случае, конечно, имеет смысл вычислить периметр и
площадь прямоугольника.
Так что мы скажем иначе
console.log («Площадь
прямоугольника»).
Аналогичным образом, мы будем вычислять,
периметр прямоугольника.
Вот.
Итак, внутри этой функции мы вычисляем площадь и
периметр прямоугольника и очищаем его.
Теперь нам, очевидно, нужно вызвать эту функцию, используя разные значения
длины и ширины и посмотреть, что она печатает.
Поэтому прямо ниже здесь, я собираюсь сказать SolveRect, а
затем просто использовать некоторые значения здесь.
Так что я скажу 2, 4 и 3, 5.
И давайте скажем 0, 5 и посмотрим, что произойдет.
И -3, 5.
Таким образом, четыре различных варианта параметров здесь, чтобы
проиллюстрировать, как это приложение будет работать.
Так что с этим, давайте сохраним изменения.
Теперь возвращаясь к терминалу, в командной строке введите npm start, и
вы увидите, что он печатает область периметра для
различных прямоугольников, которые мы там указали.
Итак, мы говорим, что решение для прямоугольника с l равно два и
b равно четырем, а площадь периметра для этого прямоугольника.
И для второго, и для третьего, как вы видите, ваши
размеры должны быть больше нуля, а для
четвертого также, он печатает то же значение.
Теперь, очевидно, я замечаю, что мне понадобится место там, поэтому я просто исправлю
код, чтобы добавить это дополнительное пространство там.
Таким образом, мы видели, как мы можем написать простое приложение узла
для вычисления периметра и площади прямоугольника.
Теперь, очевидно, вы хотите иметь возможность настроить репозиторий Git,
где вы можете хранить весь этот код.
Поэтому в командной строке введите git init для инициализации репозитория Git, а
затем вы можете проверить статус репозитория Git, и
вы заметите, что два файла были созданы заново.
Итак, давайте добавим два файла в наш репозиторий Git, и
на этом этапе,
проверяя статус git, вы увидите, что два файла были проверены.
Итак, давайте сделаем git commit разбить
сообщение Simple Node Example.
Во второй части этого упражнения мы собираемся теперь
создать модуль узла в этом примере.
Поэтому в редакторе, в редакторе,
создайте файл с именем rectangle.js.
И внутри этого файла, мы собираемся создать модуль узла.
Таким образом, мы будем использовать
объект экспорта для того, чтобы экспортировать два
значения из этого модуля узла.
Таким образом, как вы узнали, каждый файл в узловом приложении становится собственным модулем узла.
Итак, из этого прямоугольного модуля узла
я собираюсь экспортировать два значения, периметр
и область.
Теперь я собираюсь перейти в файл index.js, а затем просто скопировать это значение.
И это то, что мы будем использовать в качестве экспорта для
периметра здесь и аналогично для
области, которую я просто собираюсь скопировать это из
файла index js, а затем использовать это для области.
Итак, теперь у нас есть простой модуль узла готов, который экспортирует два значения,
периметр и площадь из этого файла rectangle.js.
Таким образом, как мы узнали в лекции, [неразборчивые] модули узлов,
теперь, как только вы создаете модуль узла, вам нужно ввести этот модуль узла
в другой файл, где вы хотите использовать его.
Таким образом, возвращаясь к файлу index.js.
Теперь я собираюсь заменить все это требованием, и
я отмечаю, что этот модуль узла находится в той
же папке, что и текущий проект.
Поэтому я бы сказал, что требуется прямоугольник, и все.
Итак, мои изменения теперь завершены.
Таким образом, этот конкретный файл index.js собирается импортировать
модуль узла прямоугольника, который мы только что создали, а затем использовать его в нашем коде здесь.
Итак, давайте сохраним изменения, а
затем посмотрим на наше приложение снова, в командной строке терминала.
Переходя к терминалу, в командной строке введите npm start.
Вы заметите, что измененная
версия этого приложения дает точно такие же результаты, как и раньше.
С этим мы узнаем о том, как вы можете создать простой
модуль узла в нашем приложении.
Теперь проверяя статус git, вы увидите, что у вас есть два файла,
один из которых был изменен, другой, который только что был добавлен.
Итак, давайте добавим это в наш репозиторий Git, а
затем сделаем git фиксацию с сообщением,
Simple Node Module.
И проверьте журнал git, и
вы заметите, что у нас есть две коммиты, которые мы
зафиксировали в нашем репозитории Git там.
С этим мы завершаем это упражнение.
В этом упражнении мы видели, как мы можем написать простое приложение узла.
А также как мы можем написать простой модуль узла и
использовать его с другим файлом в нашем приложении узла.
[ МУЗЫКА]