_Service Locator нарушает инкапсуляцию в статически типизированных языках, потому что этот паттерн нечётко выражает предусловия._ Лошадь уже давно мертва, но некоторые до сих пор хотят на ней поездить, так что я пну эту лошадь ещё раз. Годами я предпринимал попытки объяснить почему [Service Locator это антипаттерн][1] (например, он [нарушает SOLID][2]), но недавно меня осенила мысль, что большая часть моих аргументов фокусировалась на _симптомах_, упуская из внимания фундаментальную проблему. [Читать дальше →][3]
[1]:
http://blog.ploeh.dk/2010/02/03/ServiceLocatorisanAnti-Pattern
[2]:
http://blog.ploeh.dk/2014/05/15/service-locator-violates-solid
[3]:
http://habrahabr.ru/post/270005/#habracut