{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,19]],"date-time":"2025-06-19T04:41:28Z","timestamp":1750308088904,"version":"3.41.0"},"reference-count":15,"publisher":"Association for Computing Machinery (ACM)","issue":"3","license":[{"start":{"date-parts":[[2005,3,1]],"date-time":"2005-03-01T00:00:00Z","timestamp":1109635200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["SIGPLAN Not."],"published-print":{"date-parts":[[2005,3]]},"abstract":"<jats:p>\n            This paper presents an alternative --- and what we believe\n            <jats:italic>a superior<\/jats:italic>\n            --- approach to designing a solution to the calculator problem due to Alphonce [1]. While Alphonce presents a fictitious one-act play between professors, this paper consists of a narrative explanation of the Java code written by this paper's coauthor, - a student who just completed the freshman year.The purpose of this paper is to illustrate the use of the DESIGN RECIPE pedagogy and the idea of focusing on the design of the structure of data, the classes, and class hierarchies, rather than the design of program actions (the algorithmics) as the core idea for program design. By contrasting the pedagogical approach and the final outcome with the \"traditional\" objects-first approach, we illustrate the advantages of our curriculum that teaches the students how to think about program design in a truly object-oriented style.\n          <\/jats:p>","DOI":"10.1145\/1057474.1057478","type":"journal-article","created":{"date-parts":[[2005,11,14]],"date-time":"2005-11-14T18:08:27Z","timestamp":1131991707000},"page":"4-11","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":6,"title":["Calculator problem and the design recipe"],"prefix":"10.1145","volume":"40","author":[{"given":"Viera K.","family":"Proulx","sequence":"first","affiliation":[{"name":"Northeastern University, Boston, MA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Tanya","family":"Cashorali","sequence":"additional","affiliation":[{"name":"Northeastern University, Boston, MA"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2005,3]]},"reference":[{"issue":"5","key":"e_1_2_1_1_1","first-page":"11","article-title":"A one-act play","volume":"39","author":"Alphonce C.","year":"2004","unstructured":"C. Alphonce , Pedagogy and Practice of Design Patterns and Objects First : A one-act play . ACM SIGPLAN Notices , 39 ( 5 ): 11 -- 14 , May 2004 . C. Alphonce, Pedagogy and Practice of Design Patterns and Objects First: A one-act play. ACM SIGPLAN Notices, 39(5):11--14, May 2004.","journal-title":"ACM SIGPLAN Notices"},{"key":"e_1_2_1_2_1","volume-title":"Objects First With Java: A Practical Introduction Using BlueJ Prentice Hall","author":"Barnes D. J.","year":"2003","unstructured":"D. J. Barnes and M. Koelling . Objects First With Java: A Practical Introduction Using BlueJ Prentice Hall , 2003 . D. J. Barnes and M. Koelling. Objects First With Java: A Practical Introduction Using BlueJ Prentice Hall, 2003."},{"key":"e_1_2_1_3_1","volume-title":"Test Driven Development By Example Addison Wesley","author":"Beck K.","year":"2001","unstructured":"K. Beck . Test Driven Development By Example Addison Wesley , 2001 . K. Beck. Test Driven Development By Example Addison Wesley, 2001."},{"key":"e_1_2_1_4_1","unstructured":"J. Bloch. Effective Java. Addison Wesley 2001.  J. Bloch. Effective Java. Addison Wesley 2001."},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1007\/BF00156001"},{"key":"e_1_2_1_6_1","unstructured":"M. Felleisen R. B. Findler M. Flatt K. E. Gray S. Krishnamurthi and V. K. Proulx. How to Design Class Hierarchies. In preparation (See http:\/\/www.ccs.neu.edu\/home\/vkp\/htdch\/).  M. Felleisen R. B. Findler M. Flatt K. E. Gray S. Krishnamurthi and V. K. Proulx. How to Design Class Hierarchies. In preparation (See http:\/\/www.ccs.neu.edu\/home\/vkp\/htdch\/)."},{"key":"e_1_2_1_7_1","volume-title":"How to Design Programs:An Introduction to Programming and Computing","author":"Felleisen M.","year":"2001","unstructured":"M. Felleisen , R. B. Findler , M. Flatt , and S. Krishnamurthi . How to Design Programs:An Introduction to Programming and Computing . MIT Press , 2001 . M. Felleisen, R. B. Findler, M. Flatt, and S. Krishnamurthi. How to Design Programs:An Introduction to Programming and Computing. MIT Press, 2001."},{"key":"e_1_2_1_8_1","volume-title":"FDPE","author":"Felleisen M.","year":"2002","unstructured":"M. Felleisen , R. B. Findler , M. Flatt , and S. Krishnamurthi . Structure and interpretation of the computer science curriculum . FDPE , 2002 . M. Felleisen, R. B. Findler, M. Flatt, and S. Krishnamurthi. Structure and interpretation of the computer science curriculum. FDPE, 2002."},{"key":"e_1_2_1_9_1","volume-title":"A Little Java A Few Patterns","author":"Felleisen M.","year":"1998","unstructured":"M. Felleisen and D. Friedman . A Little Java A Few Patterns . MIT Press , 1998 . M. Felleisen and D. Friedman. A Little Java A Few Patterns. MIT Press, 1998."},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1017\/S0956796801004208"},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1145\/949344.949394"},{"key":"e_1_2_1_12_1","unstructured":"Junit framework http:\/\/www.junit.org.  Junit framework http:\/\/www.junit.org."},{"key":"e_1_2_1_13_1","first-page":"265","article-title":"Bashir, What are executive functions and self-regulation and what do they have to do with language learning disorders. Language, Speech, and Hearing Services","volume":"30","author":"Singer Bonnie D.","year":"1999","unstructured":"Bonnie D. Singer , and Anthony S . Bashir, What are executive functions and self-regulation and what do they have to do with language learning disorders. Language, Speech, and Hearing Services in Schools , 30 : 265 -- 273 , 1999 . Bonnie D. Singer, and Anthony S. Bashir, What are executive functions and self-regulation and what do they have to do with language learning disorders. Language, Speech, and Hearing Services in Schools, 30:265--273, 1999.","journal-title":"Schools"},{"key":"e_1_2_1_14_1","volume-title":"3rd. ed","author":"Wu C. T.","year":"2004","unstructured":"C. T. Wu . An Introduction to Object-Oreinted Programming with Java , 3rd. ed . McGraw Hill 2004 . C. T. Wu. An Introduction to Object-Oreinted Programming with Java, 3rd. ed. McGraw Hill 2004."},{"key":"e_1_2_1_15_1","doi-asserted-by":"crossref","DOI":"10.1007\/978-1-4612-3618-4","volume-title":"Selfregulated learning and academic achievement: Theory, research and practice","author":"Zimmerman B. J.","year":"1989","unstructured":"B. J. Zimmerman , and D. H. Schnuck (eds.) Selfregulated learning and academic achievement: Theory, research and practice . Springer Verlag , 1989 . B. J. Zimmerman, and D. H. Schnuck (eds.) Selfregulated learning and academic achievement: Theory, research and practice. Springer Verlag, 1989."}],"container-title":["ACM SIGPLAN Notices"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1057474.1057478","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/1057474.1057478","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T16:07:52Z","timestamp":1750262872000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1057474.1057478"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2005,3]]},"references-count":15,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2005,3]]}},"alternative-id":["10.1145\/1057474.1057478"],"URL":"https:\/\/doi.org\/10.1145\/1057474.1057478","relation":{},"ISSN":["0362-1340","1558-1160"],"issn-type":[{"type":"print","value":"0362-1340"},{"type":"electronic","value":"1558-1160"}],"subject":[],"published":{"date-parts":[[2005,3]]},"assertion":[{"value":"2005-03-01","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}