Dịch vụ là một phiên bản đơn giản và đơn giản của Nhà máy. Mặc dù Factory là một phiên bản đơn giản của Provider, nhưng Factory linh hoạt hơn so với phương thức dịch vụ và rất thuận tiện để định cấu hình dịch vụ khi phương thức $ get được yêu cầu. Nhà cung cấp tạo đối tượng mới bằng hàm $ get factory. Nhà cung cấp không thể được đưa vào trong giai đoạn chạy hoặc thời gian chạy trong khi tất cả các phần khác là (Không đổi, Biến, Dịch vụ và Nhà máy), tuy nhiên, Nhà cung cấp có thể đưa vào trong giai đoạn cấu hình hoặc thời gian biên dịch.