Когда я начал учиться программировать с помощью JavaScript, я подумал, что теперь начинаю разбираться в программировании. Я думал так, потому что я мог следовать руководству практически без проблем. Я также был довольно уверен в своей памяти. Тем не менее, я мало знал, что учебные пособия - это лишь самая верхняя часть того, на что похоже реальное программирование. Я понятия не имел, что уроки были только для того, чтобы вы могли намочить ноги. Я был шокирован, когда столкнулся с реальными задачами JavaScript, поскольку они сильно отличались от того, как это делалось в учебниках.

Не поймите меня неправильно, я не говорю, что учебные пособия не помогают, конечно, помогают, но я пришел к выводу, что они могут только продвинуть ваше обучение. На самом деле кодирование самостоятельно - это то, что действительно заставит вас расти. Я подумал, что это должно быть то же самое, что и плавание. Человек может прочитать книгу о том, как плавать, но если он дочитает эту книгу, если он не попытается плавать самостоятельно, он никогда не научится плавать.

Если вы новичок в JavaScript, пусть мои слова вас не пугают. Не буду лгать, я нахожу JS сложной задачей для новичков, но разве не стоит усердно заниматься большинством вещей, когда мы их впервые изучаем? Однако, как бы тяжело это ни было, мы продолжаем делать это, потому что хотим совершенствоваться. Возьмем, к примеру, игру, которая сейчас довольно популярна среди ваших друзей. Игра может показаться вам чрезвычайно сложной, но, поскольку вашим друзьям она нравится, и вы хотите играть с ними, у вас есть сила воли, чтобы продолжать играть и становиться лучше. То же самое и с кодированием, будь то JavaScript или любой другой язык. мы все начинаем как новички, но если мы продолжим, нас ждут великие дела. Давайте продолжим, и вместе мы станем отличными программистами!

Теперь позвольте мне рассказать вам о своем опыте того, почему я думаю, что учебные пособия только намочат ноги. После того, как я закончил свое учебное пособие по React JS, мой босс дал мне задание изменить дизайн пользовательского интерфейса для веб-сайта, над которым мы работали, я бы не хотел, чтобы это та же задача, о которой я рассказываю в своем другом блоге, и когда Я покончил с этим, он решил, что мне следует прекратить изучать то, что я изучал в то время, и сосредоточиться на изучении React Native. Он сказал, что я должен создать мобильное приложение. Я был так взволнован и напуган одновременно, но не собирался отступать. Время движется только вперед, поэтому я знал, что должен двигаться вместе с ним. Я принял задание с энтузиазмом, думая про себя: «Ого, я собираюсь сделать приложение, которым будут пользоваться многие люди из моей страны». этого было достаточно, чтобы поразить меня, и что я начал изучать React Native так быстро, как только мог.

Поскольку я уже закончил React JS, изучить React JS было не так уж и сложно. Я обнаружил лишь несколько отличий, например компонент представления и текстовый компонент. С точки зрения дизайна было немного сложно кодировать в меньшей среде. Мне пришлось поискать в Google несколько дизайнов мобильных приложений и найти в них вдохновение.

Когда я наконец определился с дизайном, я начал писать код в нашем мобильном приложении и, к своему удивлению, был ужасен. Я понял, что упустил пробелы в моих знаниях. Основная проблема, с которой я столкнулся, заключалась в моем недостаточном знании redux. Я не знал, как создать редюсер, как выполнить действие и как его отправить. К этому моменту, поскольку я уже прошел курс React JS, мой начальник думал, что я готов. Но меня переоценили, и в результате я проиграл.

Я был в состоянии неверия в себя, что я все еще новичок после полутора лет программирования. Несмотря на то, что я начал изучать React JS только 2 месяца назад, общее время, которое я потратил на обучение программированию, составило около полутора лет, и я все еще не мог работать независимо. Это заставило меня почувствовать себя таким жалким.

Однако я собрался и сделал единственную логичную вещь, которую мог, когда обнаружил, что не могу сделать это сам. Я попросил помощи у своего старшего. По его лицу я видел, что он разочарован скоростью, с которой я учился. Он нуждался во мне, чтобы быть быстрее, чтобы я мог быть активом. Я был просто обузой, и я хотел, чтобы это прекратилось, поэтому я заключил сделку со старшим: «Научите меня всему, что вы знаете, и я дам вам часть того, что я зарабатываю в течение года». К счастью, он согласился и решил обучать меня по часу в день.

Прошла неделя наставничества, и я многому научился. Я мог видеть, что все проблемы, которые я хотел, чтобы он решил, на самом деле были довольно простыми, и просто ускользнул от меня, потому что я думал не так, как он. Примером может быть, когда я пытался передать локальное состояние другому компоненту. У меня были проблемы с этим, и он спросил меня, что не так. Когда я сказал ему, что не так, он спросил меня, почему я не использую redux, и меня осенило: «Это великолепно. Почему я не подумал об этом? "

Он взял на себя и сделал за меня, пока я был рядом с ним, наблюдая за каждой строчкой кода, который он написал. Я был одновременно удивлен и смущен. Код, который он написал, был настолько прост, но из-за того, что я был настолько зациклен на определенной схеме кодирования, я не мог думать, что есть другие способы решения проблемы. Именно тогда я обнаружил реальность обучающих программ. Я обнаружил, что в лучшем случае я могу сохранить около 40% того, что я узнал в учебных пособиях, и мне приходится пересматривать остальное, потому что я уже забыл их. Между прочим, я ни в коем случае не гений. Я обычный человек, который изо всех сил старается научиться программировать.

Возвращаясь к тому моменту, когда мой старший решил проблему за меня, когда он закончил ее решать, он сказал мне: «Не думайте о том, чтобы придерживаться шаблонов, которые вы уже знаете, или придерживаться того, чему вас научили в руководстве. Используйте то, что имеет смысл ». Это действительно поразило меня, поэтому я применил его к следующим задачам, которые у меня были, и, конечно же, я смог выполнить их самостоятельно.

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

Если вы читаете это и являетесь кем-то вроде меня, который еще не так хорошо разбирается в коде, продолжайте, и я надеюсь, что эта статья помогла вам или вдохновила вас продолжать!

Спасибо за чтение!