skip to main content
10.1145/1593105.1593113acmotherconferencesArticle/Chapter ViewAbstractPublication Pagesacm-seConference Proceedingsconference-collections
research-article

A review of using design patterns in CS1

Published: 28 March 2008 Publication History

Abstract

For many years educators have tried to teach object-oriented programming using design patterns. Design patterns have brought with them an additional complexity that may be beyond the scope of entry-level programming courses. With a lot of effort and time some educators have developed courses where they have effectively taught the CS1 student with design patterns.

References

[1]
Astrachan, O. and E. Wallingford. 1998. Loop Patterns. http://www.cs.duke.edu/~ola/patterns/plopd/loops.html (accessed Nov. 25, 2006).
[2]
Bergin, J., A. Brady, R. Duvall, V. Proulx, and R. Rasala. 2001. Using Patterns in the Classroom: Panel Discussion. In the Proceedings of the Consortium for Computing in Small Colleges. Journal of Computing Sciences in Colleges 16, no. 4 (2001):5--7.
[3]
Bergin, J. 2006. Patterns for Selection. http://csis.pace.edu/~bergin/patterns/selection 1.html (accessed Nov. 25, 2006).
[4]
Lewis, T. L., M. B. Rossen, and M. Perez-Quinones. 2004. What Do the Experts Say? Teaching Introductory Design from an Expert's Perspective. In Proceedings of the 35th SIGCSE technical symposium on Computer Science Education, 2004 (Norfolk, VA, Mar. 3--7). ACM, New York, NY, 296--300.
[5]
Parker, D. L. 1995. Structured Design for CS1. In Proceedings of the 26th SIGCSE technical symposium on Computer Science Education, 1995 (Nashville, TN, Mar. 2--4). ACM, New York, NY, 258--262.
[6]
Proulx, V. K. 2000. Programming Patterns and Design Patterns in the Introductory Computer Science Course. In Proceedings of the 31st SIGCSE technical symposium on Computer Science Education, 2000 (Austin, TX, Mar. 8--12). ACM, New York, NY, 80--84.
[7]
Reiss, S. P. 1999. Design Patterns. In A Practical Introduction to Software Design with C++. John wiley & Sons, Inc., RI, 327--355.
[8]
Wallingford, E. 1996. Toward a First Course Based on Object-oriented Patterns. In Proceedings of the 27th SIGCSE technical symposium on Computer Science Education 1996 (Philadelphia, PA, Feb. 15--17). ACM, New York, NY, 27--31.
[9]
Warren, I. 2005. Teaching Patterns and Software Design. In the Proceedings of the Australian Computing Education Conference, 2005 (Newcastle, Australia) 39--49.
[10]
Wick, M. R. 2001. Kaleidoscope: Using Design Patterns. In Proceedings of the 32nd SIGCSE technical symposium on Computer Science Education, 2001 (Charlotte, NC, Feb. 21--25). ACM, New York, NY, 258--262.
[11]
Wick, M. R. 2005. Teaching Design Patterns in CS1: a Closed Laboratory Sequence Based on the Game of Life. In the Proceedings of the 36th SIGCSE technical symposium on Computer Science Education, 2005 (St. Louis, MO, Feb. 23--27). ACM, New York, NY, 487--491.
[12]
Wick, M. R. and A. T. Phillips. 2002. Comparing the Template Method and Strategy Design Patterns in a Genetic Algorithm Application. 33rd SIGCSE technical symposium on Computer Science Education, 2002 (Northern Kentucky, OH, Feb. 27 - Mar. 3). ACM, New York, NY, 76--80.

Cited By

View all
  • (2024)Prompting for Comprehension: Exploring the Intersection of Explain in Plain English Questions and Prompt WritingProceedings of the Eleventh ACM Conference on Learning @ Scale10.1145/3657604.3662039(39-50)Online publication date: 9-Jul-2024
  • (2022)Ranking of problems and solutions in the teaching and learning of object-oriented programmingEducation and Information Technologies10.1007/s10639-022-10929-527:5(7205-7239)Online publication date: 1-Jun-2022
  • (2021)Pattern Census: A Characterization of Pattern Usage in Early Programming CoursesProceedings of the 52nd ACM Technical Symposium on Computer Science Education10.1145/3408877.3432442(45-51)Online publication date: 3-Mar-2021
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
ACMSE '08: Proceedings of the 46th annual ACM Southeast Conference
March 2008
548 pages
ISBN:9781605581057
DOI:10.1145/1593105
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 28 March 2008

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. CS1
  2. design pattern
  3. object-oriented programming
  4. pedagogy
  5. teaching theory

Qualifiers

  • Research-article

Conference

ACM SE08
ACM SE08: ACM Southeast Regional Conference
March 28 - 29, 2008
Alabama, Auburn

Acceptance Rates

Overall Acceptance Rate 502 of 1,023 submissions, 49%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)6
  • Downloads (Last 6 weeks)1
Reflects downloads up to 16 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Prompting for Comprehension: Exploring the Intersection of Explain in Plain English Questions and Prompt WritingProceedings of the Eleventh ACM Conference on Learning @ Scale10.1145/3657604.3662039(39-50)Online publication date: 9-Jul-2024
  • (2022)Ranking of problems and solutions in the teaching and learning of object-oriented programmingEducation and Information Technologies10.1007/s10639-022-10929-527:5(7205-7239)Online publication date: 1-Jun-2022
  • (2021)Pattern Census: A Characterization of Pattern Usage in Early Programming CoursesProceedings of the 52nd ACM Technical Symposium on Computer Science Education10.1145/3408877.3432442(45-51)Online publication date: 3-Mar-2021
  • (2020)Teaching Resources for Young Programmers: the use of Patterns2020 IEEE Frontiers in Education Conference (FIE)10.1109/FIE44824.2020.9273985(1-9)Online publication date: 21-Oct-2020
  • (2020)Teaching Software Design Techniques in University CoursesEncyclopedia of Education and Information Technologies10.1007/978-3-030-10576-1_132(1673-1682)Online publication date: 14-Jun-2020
  • (2019)Novice Programmers and Introductory ProgrammingThe Cambridge Handbook of Computing Education Research10.1017/9781108654555.013(327-376)Online publication date: 15-Feb-2019
  • (2019)The Cambridge Handbook of Computing Education Research10.1017/9781108654555Online publication date: 15-Feb-2019
  • (2019)Teaching Software Design Techniques in University CoursesEncyclopedia of Education and Information Technologies10.1007/978-3-319-60013-0_132-1(1-10)Online publication date: 13-Apr-2019
  • (2018)Introductory programming: a systematic literature reviewProceedings Companion of the 23rd Annual ACM Conference on Innovation and Technology in Computer Science Education10.1145/3293881.3295779(55-106)Online publication date: 2-Jul-2018
  • (2014)A course for teaching integrated system design to computer engineering students2014 IEEE Global Engineering Education Conference (EDUCON)10.1109/EDUCON.2014.6826134(470-474)Online publication date: Apr-2014
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media