День 25-33: JS Calculator

Слишком много откладывал после проекта JS Calculator, я должен быть более последовательным.

Проект

Цель — создать калькулятор на Javascript с помощью фреймворков и библиотек. Я никогда раньше не создавал калькулятор на каком-либо языке, поэтому я не слишком хорошо знаком с его алгоритмом (и это, конечно, видно, если вы следите за моим Твиттером lol).

Это первый проект, где я использовал Redux для управления состояниями. Там слишком много шаблонного кода, чтобы использовать его в небольших проектах, но теперь, когда я столкнулся с этим, я мог бы использовать его.

В целом я использовал React, Redux, SASS и FontAwesome. Для оценки математических формул я использовал библиотеку math.js.

Результат

Вот он:

Чему я научился

Я все еще не силен в программировании

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

Есть довольно много того, чего я не знал. Алгоритмы и структуры данных, паттерны проектирования, парадигмы программирования и т.д. Это инструменты, которые могут помочь мне в этом проекте и других проектах в будущем.

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

Никогда не недооценивайте сложность проекта

Увидев проблему, я достал клавиатуру, открыл VSCodium и начал печатать. Честно говоря, это моя плохая практика. Застрять на середине пути — это удар по лицу, который я заслужил за свое невежество.

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

Таким образом, я понял, что перед написанием кода необходимо правильно спланировать работу. Вы же не хотите получить ошибку?

Разделение логики в React на самом деле хорошо

Да, теперь я понимаю, почему React делает это. Идея изолировать код пользовательского интерфейса от логики действительно кажется мне простой. Мне нечего сказать об этом LOL.

Обращайте внимание на требования к версии пакета

Хотя FreeCodeCamp этого не требует, их модульные тесты поддерживают только определенные ключевые слова (например: ReactDOM.render), которые не актуальны для React 18. Эта проблема связала мою разработку на неделю, а простое предупреждение о версии пакета сделало бы это намного проще.

Послесловие

Calculator JS был и остается самым большим проектом, который я закончил. Это трудно, но оно того стоит. Теперь, когда я осознал свои слабости, я могу работать над собой, чтобы стать лучшим разработчиком.

Следите за мной на Github!
А также в Twitter!

Оцените статью
Procodings.ru
Добавить комментарий