Понимание процесса сборки программного обеспечения
Это мое путешествие, чтобы изучить основы сборки в контексте программного обеспечения.
Во-первых, создание здесь не связано с идеей написания программных кодов. Речь идет о процессе после развертывания кода разработчика или что-то в этом роде.
Возможно, вы слышали термин «Мой код строится» или сами инициировали его: сознательно, неосознанно или по ошибке, не удивляйтесь,он существует.
Итак, что такое сборка?
Определение. Сборка — это процесс компиляции кода с использованием всех необходимых компонентов, конфигураций, активов среды и любых других внешних библиотек для создания исполняемого или пригодного для использования приложения.
Надеюсь, вы уловили суть, в основном процесс получения результата.
Почему мы говорим об этом?
Я считаю, что если мы изучим процесс сборки приложений и то, как некоторые механизмы сборки обрабатывают наши коды, мы сможем писать читаемые и масштабируемые коды.
То, что происходит внутри, процесс и то, как мы пишем код, может помочь как нашим пользователям, так и разработчику, вам.
Начнем?
Представьте себе, вы заказываете шаурму в ресторане, и все, что вам нужно сделать, это указать особенности вашего заказа: «Куриная шаурма, без колбасы и немного острого соуса». Я проголодался.
Теперь представьте себе, вы получаете замороженную курицу, немного овощей, шаурму и острый соус. Вы идете домой, разводите огонь, жарите курицу и готовите шаурму так, как хотите. Наверное, это худшая шаурма.
Прежде чем вы сделаете перерыв, я, возможно, вызвал, вот моя точка зрения. Сборка может быть двух категорий: нестандартная или промышленная.
Я бы не стал много говорить о пользовательских, потому что, как и домашняя шаурма, индивидуальная сборка не проста в настройке и иногда может оказаться проблемой.
Промышленное строительство
Этот тип сборки предварительно настроен для конкретного варианта использования. В случае с промышленной конфигурацией, как и в случае с рестораном, все, что вам нужно сделать, это заказать тот тип, который вам подходит.
Теперь мы можем заказать эту шаурму и знаем, где ее хотим, на столе или в руках. То же самое для приложения, на устройстве или в браузере.
Справедливое напоминание, что речь идет о билде, а не о шаурме 🤣.
Итак, продолжим.
Независимо от того, что вы выберете, индивидуальную сборку или промышленную сборку, они оба достигают одинаковых результатов. Развертываемый проект. А теперь приступим, не к шаурме.
Типы сборки
Это два типа сборки: полная сборка и инкрементная сборка.
Полная сборка
Возвращаясь к нашей шаурме, для этого типа сборки ингредиенты шаурмы всегда свежие, и каждый процесс начинается с самого начала, независимо от того, есть ли у вас шаурма в наличии или нет, он просто начинается с нуля и дает вам новую шаурму.
Полная сборка создает новое упакованное приложение каждый раз, когда инициируется процесс сборки, повторно извлекает исходные файлы, запускает процесс с нуля, проверяет каждую среду и развертывает новый проект.
Этот тип сборки требует одинакового времени для получения результата независимо от количества изменений кода.
Инкрементная сборка
Наверное, для нашей шаурмы это невозможно 😂. Кроме того, может быть, этого достаточно, прежде чем я запущу кампанию с шаурмой.
Инкрементная сборка проверяет наличие построенного проекта, затем сравнивает изменения и обновляет только измененные компоненты или часть исходных файлов, не запуская каждый процесс с нуля при запуске команды сборки.
Этот тип времени сборки зависит от количества изменений в исходном файле.
Процесс
Процесс промышленной сборки происходит в облаке ☁️ в большинстве случаев или с помощью настроенного инструмента, предоставленного поставщиком. В основе лежит тот же процесс.
Система извлекает исходный код, подготавливает среду, извлекает зависимости, запускает тесты, если они включены, запускает конфигурации и, наконец, переводит исходный код в исполняемый или машиночитаемый код в зависимости от среды.
Заключение
Надеюсь, вы поняли, что такое сборка и как она применяется. Я также надеюсь, что не подтолкнула вас к приготовлению шаурмы, читая это.
Почему бы не связаться со мной в твиттере, чтобы поговорить о сборке и технологиях @iNidaname