npm init
используется для настройки нового или существующего пакета npm. Так почему это важно для вас? Итак, поскольку вы создаете новый проект Angular с использованием различных библиотек npm
, вам потребуется файл package.json
для управления указанными зависимостями . Таким образом, npm init
помогает вам, создавая новый файл package.json
в вашем текущем каталоге. С учетом сказанного, какова цель этого package.json
файла? Итак, файл package.json
содержит важные метаданные о вашем проекте , такие как имя вашего проекта, версия и список пакетов, от которых зависит ваш проект. Это важно, потому что делает воспроизводимую структуру вашего проекта , и, следовательно, легче поделиться с другими разработчиками. Поэтому, если позже вы поделитесь своим новым Angular-проектом на GitHub, кто-нибудь сможет построить ваш проект с его стороны, загрузив необходимые зависимости, перечисленные в вашем package.json. ( Примечание: это именно то, что вы сделали, когда бежали: npm i --package-lock-only
) И наконец, какой смысл в этом package-lock.json
файле? Ну, этот файл автоматически генерируется для любых операций , где npm изменяет либо дерево node_modules, либо package.json. Что это значит? Это означает, что npm
генерирует этот файл для вас, когда вы вносите изменения в ваш Angular-проект, которые влияют на воспроизводимость построения вашего проекта для других . Короче говоря, это позволяет другим продолжать строить и выполнять ваш проект, когда вы вносите новые важные изменения в ваш проект .
Надеюсь, это поможет!
В книге WCF Жюваля Лоуи он называет этот паттерн паттерном моста . dofactory также имеет несколько хороших материалов.
Я недавно собирал некоторые ссылки на шаблон провайдера для экзамена MS, который я изучал (70-568). Вот список - больше, чем вам когда-либо понадобится знать о модели поставщика:
при добавлении провайдеров. Here is a white paper from MSDN (linking to part 1)
Here is another source for Provider Design Patterns in ASP.NET 2.0 from C-Sharp Corner
наиболее элегантным решением для достижения слабой связи является DI и IoC.
Посмотрите здесь:
Удачи :)
MSDN предлагает пошаговое руководство для шаблона поставщика ASP.NET