Многие из нас сталкивались с ситуацией, когда нам ставили задачи по созданию новых вещей или добавлению новых функций в существующий продукт. Вначале у нас есть сопротивление из-за недостатка знаний и опыта. Я столкнулся с аналогичной ситуацией, когда мне нужно было добавить генератор PDF и анализатор документов для одного из моих клиентов. Я испытал там, насколько сложно иногда бывает, когда вы не знаете какой-то конкретный домен или инструмент. После завершения внедрения я подумал поделиться своим опытом, а также о том, что можно и чего нельзя делать.
Начните с основ
Я начал читать об основах PDF и наткнулся на совершенно разные термины. Я попытался копнуть немного глубже, чтобы понять недостающие части моих знаний, и попытался поднять график знаний. Сначала это было немного сложнее, но потом все немного изменилось, и я начал понимать концепции.
Не перегружайтесь
Большинство людей начинают с того, что напрямую берут код из GIT и пытаются включить его в свой исходный код. Иногда срабатывает, иногда ужасно ломается. Даже если это сработает, в какой-то момент он сломается, и в этот момент действительно сложно отлаживать, так как в большинстве случаев существует нехватка знаний и недоступность документации.
Четко определенная сфера действия
Прежде чем начинать что-то новое, убедитесь, что вы знаете границы и различные входы и выходы. Обозначьте область видимости. Рассмотрите другие варианты, если вы считаете, что технология не служит цели. Выбирайте технологию с умом, поскольку в долгосрочной перспективе это может быть очень болезненно.
Разделяй и учись
Используйте этот подход, чтобы получить полное представление о концепциях. Сначала возьмите предмет, разделите его на более мелкие компоненты, изучите каждый компонент один за другим, а затем свяжите связи. Учитесь, стройте, ломайте и переучивайтесь. Следуйте этим шагам тщательно и последовательно, чтобы лучше понять суть дела.
Учиться в абстракции
Вам не нужно знать все по предмету. Так что скрывайте сложность темы от своего разума. Убедитесь, что у вас есть минимум знаний, необходимых для выполнения задачи, а не вдаваться в подробности, которые могут вас запутать.
Сделайте демонстрацию
После завершения кривой обучения начните с демонстрационного проекта. Это можно сделать, экспериментируя с разными подходами. Помните, чтобы всегда разделять и учиться, либо разрабатывайте демонстрационный пример бок о бок, изучая отдельные компоненты, либо создавайте его потом. После того, как вы подготовите демонстрацию, включите исходный код в основной продукт, помните, что это наиболее важный шаг. Если прыгнуть прямо в реализацию продукта, шансы сломать вещи довольно высоки.
Дополнительные два цента
Не ищите "как это сделать"? Вместо этого начните с нуля и ищите более мелкие проблемы, с которыми вы сталкиваетесь. Вы легко получите ответы. Выбрав этот способ, вы получите глубокое представление о том, что нужно делать, и о потенциальных проблемах в будущем.
Надеюсь, это поможет вам в какой-то мере. Пожалуйста, поделитесь, если сочтете полезным.