Мой первый опыт развертывания кода

Научиться программировать непросто. Как и при изучении любого нового навыка, вы начинаете с основ и строите основу, а затем расширяете свои знания.

По мере роста ваших знаний вам необходимо что-то построить и продемонстрировать свою работу миру. И здесь требуется развертывание. Сделайте свою работу доступной в Интернете, чтобы другие могли ее увидеть и оценить, если это необходимо.

Как новичок, мой первый опыт развертывания кода был непростой задачей. Я должен был развернуть свою работу на Heroku. И, как всегда, я начал с официальной документации, затем поискал другие статьи о процессе, а затем перешел к видео на YouTube.

Далее следует наиболее частый сценарий при следовании руководствам или статьям: вы следуете описанным шагам; их код работает, а затем вы внедряете их в свой собственный, и он терпит неудачу. Вы возвращаетесь и перепроверяете, и все же это терпит неудачу. Затем вы проверяете StackOverflow, есть множество решений, и вы еще больше запутались.

Я помню, как смотрел журнал ошибок, не имея ни малейшего представления о том, о чем он говорит. Он был настолько длинным, что при преобразовании в ворд документ может занимать более двух страниц. После более чем двух часов изменения одной строки кода за другой, повторных попыток и неудач, я был так зол, что чуть не возненавидел Heroku. Затем я сделал перерыв, чтобы собраться с мыслями (теперь это стало обычной практикой в ​​подобных ситуациях).

Я обратился к коллеге-разработчику, который, как и я, является новичком, но у него есть опыт развертывания приложения на Heroku. По телефону он смог провести меня через процесс, характерный для структуры и языка моего приложения. Я научился разбираться в журнале ошибок, понимать, где проблема в моем коде, и мне пришлось реструктурировать свою настройку.

Расшифровка ошибок и как они были исправлены

Пакеты сборки Heroku не смогли распознать язык приложения: это произошло потому, что Heroku по умолчанию использует главную ветвь репозитория GitHub. Однако моя ветка master не содержит кода, который я развертывал. Мне пришлось указать ветку, содержащую код, который я развертывал в Heroku.
Heroku не мог понять функции языка, которые я использовал в своем коде:Мое приложение было написано на JavaScript с использованием функций ES6. Хотя я использовал babel для переноса своего кода в ES5 во время разработки, развернутый код не был перенесен в ES5. Причина заключалась в том, что зависимости для переноса кода находились в devDependencies файла package.json, и Heroku обрезает эти зависимости при компиляции приложения для развертывания. Поэтому мне пришлось переместить зависимости, необходимые для переноса кода в ES5, в основные зависимости приложения.

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