{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2024,9,6]],"date-time":"2024-09-06T03:37:47Z","timestamp":1725593867535},"publisher-location":"Berlin, Heidelberg","reference-count":14,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"type":"print","value":"9783642219511"},{"type":"electronic","value":"9783642219528"}],"license":[{"start":{"date-parts":[[2011,1,1]],"date-time":"2011-01-01T00:00:00Z","timestamp":1293840000000},"content-version":"unspecified","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2011]]},"DOI":"10.1007\/978-3-642-21952-8_20","type":"book-chapter","created":{"date-parts":[[2011,6,28]],"date-time":"2011-06-28T06:33:12Z","timestamp":1309242792000},"page":"276-289","source":"Crossref","is-referenced-by-count":0,"title":["Seuss: Better Class Responsibilities through Language-Based Dependency Injection"],"prefix":"10.1007","author":[{"given":"Niko","family":"Schwarz","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Mircea","family":"Lungu","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Oscar","family":"Nierstrasz","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","reference":[{"key":"20_CR1","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"77","DOI":"10.1007\/10722581_8","volume-title":"Modular Programming Languages","author":"F. Achermann","year":"2000","unstructured":"Achermann, F., Nierstrasz, O.: Explicit Namespaces (chapter 8). In: Weck, W., Gutknecht, J. (eds.) JMLC 2000. LNCS, vol.\u00a01897, pp. 77\u201389. Springer, Heidelberg (2000)"},{"issue":"10","key":"20_CR2","doi-asserted-by":"publisher","first-page":"331","DOI":"10.1145\/1035292.1029004","volume":"39","author":"G. Bracha","year":"2004","unstructured":"Bracha, G., Ungar, D.: Mirrors: design principles for meta-level facilities of object-oriented programming languages. SIGPLAN Not.\u00a039(10), 331\u2013344 (2004)","journal-title":"SIGPLAN Not."},{"key":"20_CR3","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"405","DOI":"10.1007\/978-3-642-14107-2_20","volume-title":"ECOOP 2010 \u2013 Object-Oriented Programming","author":"G. Bracha","year":"2010","unstructured":"Bracha, G., von der Ah\u00e9, P., Bykov, V., Kashai, Y., Maddox, W., Miranda, E.: Modules as objects in newspeak. In: D\u2019Hondt, T. (ed.) ECOOP 2010. LNCS, vol.\u00a06183, pp. 405\u2013428. Springer, Heidelberg (2010)"},{"key":"20_CR4","doi-asserted-by":"publisher","first-page":"71","DOI":"10.1145\/74878.74885","volume":"24","author":"R.W. Brock","year":"1989","unstructured":"Brock, R.W., Wilkerson, B.: Object-oriented design: a responsibility-driven approach. SIGPLAN Not.\u00a024, 71\u201375 (1989)","journal-title":"SIGPLAN Not."},{"key":"20_CR5","doi-asserted-by":"publisher","first-page":"302","DOI":"10.1109\/ICSE.2007.85","volume-title":"29th International Conference on Software Engineering (ICSE 2007)","author":"B. Ellis","year":"2007","unstructured":"Ellis, B., Stylos, J., Myers, B.: The Factory Pattern in API Design: A Usability Evaluation. In: 29th International Conference on Software Engineering (ICSE 2007), pp. 302\u2013312. IEEE Computer Society Press, Washington, DC, USA (2007)"},{"key":"20_CR6","volume-title":"Patterns of Enterprise Application Architecture","author":"M. Fowler","year":"2002","unstructured":"Fowler, M.: Patterns of Enterprise Application Architecture. Addison-Wesley, Reading (2002)"},{"key":"20_CR7","volume-title":"Design Patterns: Elements of Reusable Object-Oriented Software","author":"E. Gamma","year":"1994","unstructured":"Gamma, E., Helm, R., Johnson, R., Vlissides, J.M.: Design Patterns: Elements of Reusable Object-Oriented Software, 1st edn. Addison-Wesley, Reading (1994)","edition":"1"},{"key":"20_CR8","doi-asserted-by":"crossref","first-page":"199","DOI":"10.1109\/VLHCC.2004.47","volume-title":"Proceedings of the 2004 IEEE Symposium on Visual Languages - Human Centric Computing, VLHCC 2004","author":"A.J. Ko","year":"2004","unstructured":"Ko, A.J., Myers, B.A., Aung, H.H.: Six Learning Barriers in End-User Programming Systems. In: Proceedings of the 2004 IEEE Symposium on Visual Languages - Human Centric Computing, VLHCC 2004, pp. 199\u2013206. IEEE Computer Society Press, Los Alamitos (2004)"},{"key":"20_CR9","unstructured":"Leon, R.: SandstoneDb, simple ActiveRecord style persistence in Squeak, \n                  \n                    http:\/\/www.squeaksource.com\/SandstoneDb.html"},{"key":"20_CR10","first-page":"287","volume-title":"Endo-testing: Unit testing with mock objects","author":"T. Mackinnon","year":"2001","unstructured":"Mackinnon, T., Freeman, S., Craig, P.: Endo-testing: Unit testing with mock objects, \u00a0ch.17, pp. 287\u2013301. Addison-Wesley Longman Publishing Co., Inc, Boston (2001)"},{"key":"20_CR11","unstructured":"Dhanji Prasanna. Dependency Injection. Manning Publications, pap\/pas edition (August 2009)"},{"key":"20_CR12","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"106","DOI":"10.1007\/978-3-540-75209-7_8","volume-title":"Model Driven Engineering Languages and Systems","author":"L. Renggli","year":"2007","unstructured":"Renggli, L., Ducasse, S., Kuhn, A.: Magritte \u2013 A meta-driven approach to empower developers and end users. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MODELS 2007. LNCS, vol.\u00a04735, pp. 106\u2013120. Springer, Heidelberg (2007)"},{"key":"20_CR13","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"380","DOI":"10.1007\/978-3-642-14107-2_19","volume-title":"ECOOP 2010 \u2013 Object-Oriented Programming","author":"L. Renggli","year":"2010","unstructured":"Renggli, L., G\u00eerba, T., Nierstrasz, O.: Embedding languages without breaking tools. In: D\u2019Hondt, T. (ed.) ECOOP 2010. LNCS, vol.\u00a06183, pp. 380\u2013404. Springer, Heidelberg (2010)"},{"key":"20_CR14","unstructured":"Vanbrabant, R.: Google Guice: Agile Lightweight Dependency Injection Framework. Apress (2008)"}],"container-title":["Lecture Notes in Computer Science","Objects, Models, Components, Patterns"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-642-21952-8_20","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,3,29]],"date-time":"2019-03-29T15:07:31Z","timestamp":1553872051000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-642-21952-8_20"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2011]]},"ISBN":["9783642219511","9783642219528"],"references-count":14,"URL":"https:\/\/doi.org\/10.1007\/978-3-642-21952-8_20","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2011]]}}}