• Использовать методы или самому писать функции?

    @dan_kosenko
    Node.js Developer
    В каких ситуациях есть смысл:
    • Улучшить свои знания. Допустим самому попробовать реализовать какие-то алгоритмы, чтобы лучше понимать как работает поиск, сортировка, обход древовидных структур и так далее;
    • Специфичные требования. Например вам нужна высокая производительность, ваш основной стек на Back-end - это Node.js. Так вышло, что вам не хватает производительности и поэтому вы берёте и переписываете нужный NPM пакет на на c++;
    • Раз коснулись темы NPM, то другой пример. В NPM миллионы пакетов на любой случай жизни и так бывает, что нецелесообразно тянуть зависимость ради пару десятков строчек кода.

    Когда НЕ стоит изобретать велосипед:
    • Проверенные алгоритмы. Например не стоит в продакшене самому писать библиотеки для работы с шифрованием, если конечно у вас не стоит такая задача. Самописная криптография грозит тем, что вы можете допустить ошибку в шифровании и получить уязвимость, а аудит вашего кода скорее всего не будут проводить десятки экспертов.
    • Придумывать новые фреймворки. Тут просто без должного опыта ничего хорошего не получится.
    • Ограниченные ресурсы и время. Программисты чаще всего работают на кого-то и им выделяются конкретные ресурсы и время на проект. Создание/проектирование новых библиотек, фреймворков и компонентов занимает достаточное большое количество времени. И таким образом вы просто не выполните поставленные задачи, если будете придумывать велосипеды.

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