Это краткое изложение всего, что я узнал за 10-ю неделю в Encora.
Эта неделя была интересной, потому что мне приходилось искать проблемы в разных проектах с открытым исходным кодом, чтобы я мог внести свой вклад в них.
К началу недели я уже выбрал тему, в которую хочу внести свой вклад.
Мой первый вклад
Пользователь из библиотеки react-bootstrap попросил участников добавить способ для компонента Dropdown отключить поведение нажатия клавиши Escape при активации этого компонента.
Запросив некоторую информацию и получив ее от участников, я решил начать кодировать это. Я узнал, как компонент структурирован в библиотеке, и быстро понял, как работает отключение этого поведения и где его реализовать.
Я также закодировал тестовый пример для этой новой функции! Сначала это было сложно, потому что до этого этапа я безуспешно пытался сделать что-то подобное для проекта в Encora, над которым работает мой наставник.
Однако авторы имели в виду не реализацию этой функции в библиотеке, а техническое использование существующей функции для выполнения того, что хотел пользователь.
И, по сути, мой вклад был отклонен. Тем не менее, из этого вывода следует следующее: Всегда следите за тем, чтобы вы делали именно то, о чем просят.
Мой текущий вклад
Я нашел еще один классный фреймворк, в разработку которого мог бы внести свой вклад: Catch2. Здесь сопровождающий сам попросил реализовать общие сопоставители диапазона, которые, по сути, являются средствами проверки того, выполняется ли данное утверждение.
И, как рекомендовали мне мои наставники:
Запустите его локально и используйте его.
Сейчас я работаю над этим и многому научился на C++, читая код Catch2.
Но последние — не все выводы, которые я сделал на этой неделе:
Парные сеансы программирования
Из сеансов парного программирования с моими наставниками я узнал несколько вещей по нескольким темам.
Я узнал названия из некоторых фреймворков PHP, таких как Laravel, Zend, Codeigniter и Apigility. Да, мне интересно узнать больше о PHP. Мой наставник также порекомендовал мне использовать Laravel, если я буду изучать PHP, поэтому я думаю, что сделаю это где-нибудь на следующей неделе.
Я узнал, что шлюз — это, по сути, URL-адрес, который перенаправляет запросы в микросервисы. Это знание пришло вместе с другим: работа с Docker иногда может быть сложной. Я считаю, что кривая обучения похожа на кривую обучения, когда вы пытаетесь изучить Vim.
Теперь я чувствую себя очень комфортно, когда мои наставники говорят о большей части темы React, потому что, если я не знаю эту тему конкретно, теперь я могу получить общее представление, которое она дает. И это заставляет меня чувствовать себя очень хорошо.
Наконец, я хотел бы закончить эту запись в блоге действительно классным лайфхаком, когда дело доходит до создания новой ветки в Git и переключения на нее без предварительного использования ветви git:
git checkout -b ‹BRANCH_NAME›