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

Начните с основ

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

Не перегружайтесь

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

Четко определенная сфера действия

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

Разделяй и учись

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

Учиться в абстракции

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

Сделайте демонстрацию

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

Дополнительные два цента

Не ищите "как это сделать"? Вместо этого начните с нуля и ищите более мелкие проблемы, с которыми вы сталкиваетесь. Вы легко получите ответы. Выбрав этот способ, вы получите глубокое представление о том, что нужно делать, и о потенциальных проблемах в будущем.

Надеюсь, это поможет вам в какой-то мере. Пожалуйста, поделитесь, если сочтете полезным.