Computer Science

RECOMMENDED COMPUTER SCIENCE COURSE SEQUENCE

COMPUTER SCIENCE


60625W  COMPUTER SCIENCE DISCOVERIES

(Grade 9,10) (0.5 Elective Credit) 

(Prerequisite:  None)


The course takes a wide lens on Computer Science by covering topics such as programming, physical computing, HTML/CSS, and data.  This introductory course empowers students to engage with Computer Science as a medium for creativity, communication, problem solving, and fun.  Students will become inspired as they build their own websites, apps, games, physical computing devices, and robotics.


40469W  INTRODUCTION TO COMPUTER PROGRAMMING

(Grade 9,10,11,12) (0.5 Credit)

(Prerequisite:  None)


Introduction to Computer Programming is a course designed to introduce students to programming in a captivating manner while simultaneously building problem-solving skills and an understanding of the thinking methods used by programmers.  The course will teach students how to write their first programming language using the Python language. The course is predicated on the notion that learning about programming and computer science should be fun and engaging.  All units are project-based, and physical items, such as programmable robots, will be used to teach and apply the Python language.


40473W  COMPUTER PROGRAMMING USING C++

(Grade 10,11,12) (0.5 Credit)

(Prerequisite:  None)


Students will use the Microsoft Visual Studio IDE or JDoodle website compilers to learn the fundamentals of programming in the C++ language.  The course begins with learning the basics of structured programming, including if…else, loops and functions.  The student will then move on to the concepts of object-oriented programming.  The student will learn to use ready-made classes to simplify work with strings, arrays, stacks and queries.  Students will demonstrate their achievement of the outcomes of the course through the completion of programs, projects, and tests.  Students will take the C++ final exam at the end of the course. 


40474W  COMPUTER PROGRAMMING USING JAVA

(Grade 10,11,12) (0.5 Elective Credit)

(Prerequisite:  Course 40473E)


Students will use Eclipse or the JDoodle website composer to program in the Java Language.  The course begins with learning the basics of structured programming, including if …else, loops and functions.  The student will move on to the concepts of object-oriented programming.  The student will implement classes of software libraries.  The student will design classes which instantiate objects and call subroutines from parent programs.  Students will demonstrate their achievement of the outcomes of the course through the completion of programs, projects, and tests.  Students will take the Java final exam at the end of the course.


*40477H  ADVANCED PLACEMENT COMPUTER SCIENCE PRINCIPLES 

(Grade 10,11,12) (1.0 Credit - May be taken for AP Computer Science Credit)

(Prerequisite:  Completion of CP Algebra 1 and/or successful completion of one or more of the following courses: CS Discoveries, Creating Mobile Apps, Business of Game Development, Introduction to Computer Programming, Computer Programming Using Java, Computer Programming Using C++, and Web Design


AP Computer Science Principles introduces students to the core ideas of computer science.  It instills the ideas and practices of computational thinking and allows students to understand the ever changing world of computing.  This course emphasizes the impact that advancements in computing have on society and goes beyond the study of machines and systems to give students the opportunity to investigate computing innovations that span many interests.  The AP Computer Science Principles course does not have a designated programming language, but will use programming languages that are most appropriate to use for specific activities.  Assessments will include quizzes, exams, practice exercises, individual and group projects, and a cumulative final exam.  This AP Course requires a Creative Task to be submitted to the College Board as well as a summative exam. .  Students will have the opportunity to register to take the AP Computer Science Principles Exam in May as well as complete the project based assessment that is critiqued by national guidelines.   


*40478H  ADVANCED PLACEMENT COMPUTER SCIENCE A 

(Grade 10,11,12) (1.0 Credit - May be taken for AP Computer Science Credit)

(Prerequisite:  Completion or concurrent enrollment in Algebra 2 and successful completion of one or more of the following courses: Advanced Placement Computer Science Principles, Computer Programming Using C++ or Java, Computer Science Discoveries, Creating Mobile Apps, Business of Game Development, and Web Design 1 or 2)


AP Computer Science A engages students in advanced topics of computer science.  This course emphasizes problem solving, design strategies, methodologies, organization of data, and approaches to processing data.  The course compares object-oriented programming with procedural programming.  AP Computer Science A is taught using specific packages in the Java Programming language namespace.  The current version of Eclipse or JDoodle website compilers will be used as the Java Integrated Development Environment (IDE).  Emphasis will be on the following structures: classes, interfaces, enumerations, and annotation types.  Java Applets will also be introduced.  Assessments will include quizzes, exams, practice exercise, individual and group projects, and a cumulative final exam.  Students will have the opportunity to register to take the AP Computer Science A Exam in May.



BUSINESS, COMPUTER & INFORMATION TECHNOLOGY RELATED COURSES


60627W  CREATING MOBILE APPS

(Grade 9,10,11,12) (0.5 Elective Credit)

(Prerequisite:  None)


This course is an introductory mobile application design and programming course where students will learn how to design an app’s user interface with the App Inventor Designer, and its behavior with the Blocks Editor.  Creating Mobile Apps also uses “drag-n-drop” programming and progresses to developing original apps.  Students will learn the components of a good app, color theory used in app design, and so much more such as image editing and story-boarding.  By the end of the course, students will be able to successfully demonstrate a self-created app with real world application. 


60628W  THE BUSINESS OF GAME DEVELOPMENT

(Grade 9,10,11,12) (0.5 Elective Credit)

(Prerequisite:  None)


Game Development is a game design course and much more.  The design process of planning, implementing, reviewing, and adjusting will be utilized as students create and program their games.  Technical skills such as programming, graphic design, animation, testing and debugging will be taught in this course.  Game Development will begin with drag-n-drop programming and advance to more complex projects that involve writing code.  Students will also explore the dramatic elements and narrative design behind games.  Once students have learned how to develop and program a game, they will investigate the business of game design and strategies to market an original game idea.


60629W  THE BUSINESS OF GAME DEVELOPMENT 2

(Grade 10,11,12) (0.5 Elective Credit)

(Prerequisite:  Business of Game Development 1)


The Business of Game Development 2 will launch students deeper into the game design and marketing process.  Skills acquired in level one will be reviewed and expanded upon through the use of more robust software.  Furthermore, students will be asked to extend their prior projects created in the level one course to show the advanced use of design elements, coding, and analysis.   At the completion of this course, students will have planned, developed, and field-tested an original computer game using the provided software.  Additionally, students will create an innovative marketing plan and materials for their original creation.  


60633W  WEB DESIGN 1

(Grade 10,11,12) (0.5 Elective Credit)

(Prerequisite:  Basic computer and keyboarding skills are necessary)


Students will learn how to create web pages, format the pages, add graphics to the pages, and create forms with this introduction to HTML.  This course will include the coverage of tables, frames, cascading style sheets, and Web Design considerations.  The focus of this course will be to learn the basics of Web Design in order to possibly design pages for the Whitehall High School Website.  


60634W  WEB DESIGN 2

(Grade 11,12) (0.5 Elective Credit)

(Prerequisite:  Web Design 1)


This course is designed for students who have successfully completed Web Design 1 and would like to move on to more advanced web design and development.  JavaScript, dynamic HTML, and database integration are some of the new web design features to be covered.  Students will learn project management, communication, and leadership skills, as a result of performing group work.