Course Syllabus

Syllabus AP Computer Science, SEM 1

Welcome

Welcome to AP Computer Science, SEM 1! We’re so glad you’re here.

Every lesson is designed to help you grow as a thinker, problem solver, and global learner. As a Mizzou Academy global student, you will complete lessons and assignments on your own schedule, interacting with course content, participating in interactives, and completing practice activities, as well as drafting and revising assignments, preparing for quizzes and assessments, and taking exams.

To stay on track, we recommend using a pacing guide. You can find more information about pacing in the Course Resources section, along with helpful tools, technology support, and tips for online learning success.

As you begin, remember that online learning requires both independence and communication. Be curious, stay organized, and don’t hesitate to reach out to your teacher if you need support.

We’re excited to learn with you, and we’re happy you’re part of our Mizzou Academy community! 

Pacing

This 16-week semester course has been designed so that--on average--you will be completing about one lesson each week, with additional time allotted for exams and special projects.

Plan to devote about one hour each weekday to this class, just as you would for one class period in a physical school building, plus some extra “homework” time for bigger assignments as needed.

Unlike other asynchronous courses you may have taken online, AP semester courses have due dates and deadlines that you will need to follow. Pay close attention to the course calendar and establish a routine early that works best for you. Then, pace yourself by setting targeted, attainable, and manageable goals each day. Planning ahead, balance, and routine will be your best friends!

 

AP - Participation 

Participation in online discussions (e.g., discussion forums, chats, group projects, and/or instructor conferences) is expected and will factor into your overall course grade.

All online discussions described in course lesson pages are required unless your instructor notes otherwise. Your instructor may also arrange additional required chats or instructor conferences. Be sure to regularly check the course calendar and announcements from your instructor regarding upcoming discussions and requirements.

Your participation in required online discussions will be evaluated on criteria such as frequency, timeliness, thoughtfulness and effort, and overall contribution to the knowledge base and learning experience of your classmates. You are also expected to monitor and respond to posts on discussion threads that you have started or have previously contributed to; you should not simply make a post and consider the discussion “done,” because it should be an ongoing conversation with your peers and/or instructor.

Postings that begin new discussion forum threads will be reviewed based on their relevance, demonstrated understanding of course concepts, examples cited, and overall quality. Postings that respond to other students’ posts will be evaluated based on relevance, the degree to which they extend discussions, and tone. This may entail asking a question or comparing and/or contrasting your classmate’s post with your own.

In order to earn full credit for discussion forum participation, your posts and responses must be substantive. In other words, you will not earn credit for just replying "Good post" or "I agree" to a classmate.

AP - Late Work and Absences

Work must be turned in on time for full credit. If you are unable to complete an assignment on time, contact your instructor immediately. Prior permission from the online course instructor must be obtained for special circumstances to receive credit for late work. These decisions will be made on an individual basis.

You must notify your instructor if you expect to be offline for more than 1 week.

Course Description

This course has been developed as an introductory Computer Science Class, taught with the Java language and using one major textbook along with the teacher’s commentary to help explain the concepts further and also provide some companion exercises. The class will be taught online, and will require the student to do the teaching examples as well as the assigned exercises for each lesson. The student will be given an evaluation to carry out at the end of each lesson. Students will be asked to do several programming projects throughout the year and will be expected to practice the principles that they have learned. 

Students are to use Java 17 and use the Eclipse Integrated Development Environment for their project work. 

Prerequisites: Algebra I and Algebra II are required, although Algebra II can be taken concurrently. A student in AP Computer Science A should have some experience in problem solving and a good working knowledge of algebra. 

This course is the equivalent of the first level of a college course in computer science, so the student must be prepared to cover material more quickly than in a regular high school class. The student must be prepared to spend the time needed to complete the work and understand the material. At a minimum, the student must have at least ten hours of computer time available each week to complete the lessons and problems. According to the College Board, successful students must also have competence in written communication so that they are able to provide adequate written documentation in their programs.

Most AP courses consist of 2 semesters and you should complete semester 1 before starting semester 2. AP exams are offered early in May.

NOTE: If you enroll after the start date in an AP course, it is important that you adjust the pacing chart accordingly so you can complete your course before the scheduled AP exam dates or use this link to find more information about Advanced Placement and to see the AP Exam Calendar.

Course Overview

AP Computer Science, SEM 1

Lesson

Objectives

Quiz

Assignment

1: Computer Systems

1.1 Identify and apply the multiple steps of problem solving.

1.2 Compute storage capacity of memory in bits and bytes.

1.3 Explain the relevance of binary code and convert binary numbers to decimal and hexadecimal.

1.4 Identify the differences between high- and low-level programming languages and categorize modern languages.

1.5 Identify purposes of modern computer hardware and software components.

1.6 Classify the causes of basic Java errors.

1.7 Identify the basic parts of a simple Java program.

1.8 Describe how computers are connected in networks.

1.9 Identify aspects of the responsible use of computers.

25 MCQ

Lesson 1 Discussion: Responsible Use of Computers

2: Key Elements of Programming

2.1 Recognize the various parts of a Java program.

2.2 Write simple Java programs using proper structure and recognize correct program syntax.

2.3 Describe the difference between objects and primitive data in the Java language.

2.4 Use and understand variables, strings, and objects.

2.5 Apply data abstraction and encapsulation.

2.6 Use re-usable components from class libraries.

2.7 Develop object-oriented programs as a solution to a problem in the form of console output.

2.8 Use the Math class and the Random class and their methods.

2.9 Effectively allow user input with the Scanner class.

2.10 Create graphical Java programs that draw shapes.

25 MCQ

Lesson 2 Programming Activity

3: Programming Problem #1

3.1 Write Java programs using proper structure and syntax.

3.2 Use variables, strings, and objects as necessary.

3.3 Identify and use correct data types in applications.

N/A

Lesson 3 Discussion: Following Steps When Creating Programs

L3: Project Submission

4: Program Development and Flow

4.1 Choose appropriate data representation and design algorithms to help solve problems and design programs that make complex decisions.

4.2 Use top-down development of implementing a program.

4.3 Use program implementation of sequential steps.

4.4 Use program implementation of conditional controls, using if statements.

4.5 Explain the limitations of finite representations with imprecision in rounding and floating-point representations.

4.6 Effectively use repetition statements in the form of for and while statements.

4.7 Use relational, equality, and logical operators effectively to make complex decisions.

4.8 Read and understand a problem description, purpose, and goals.

4.9 Use character comparisons and the String class.

4.10 Use conditionals and loops to draw graphics.

45 MCQ

L4 Discussion: Loops

Midterm Exam - 30 MCQ; 1 Programming Question

5: Creating Classes

5.1 How is writing a class like creating a blueprint?

5.2 Why would you want to create multiple instances of the same object in a single program?

25 MCQ

L5 Discussion: Creating Classes

6: Programming Problem #2

6.1 Use Magpie Lab practice by applying concepts to solve real-life problems.

6.2 Follow directions to create a program that will design and implement a new class.

6.3 Use best practice programming skills and design techniques to create your second Java programming project.

N/A

L6: Submit Activities

L6: Submit Project

7: Designing and Implementing Classes

7.1 Describe how object aliases function.

7.2 Use static modifiers effectively.

7.3 Create effective software interfaces.

7.4 Understand passing objects as parameters and reference aliases.

7.5 Use nested classes and inner classes.

7.6 Explain the importance of software testing, along with exceptions and the general issues associated with commonly thrown exceptions.

7.7 Create dialogue boxes for user interaction.

25 MCQ

L7 Discussion: GUI Programs

8: Arrays

8.1 Define and use one-dimensional arrays of primitive data and of objects.

8.2 Effectively use parallel arrays.

8.3 Describe how to pass arrays as parameters.

8.4 Explore how to search sort information that is contained in arrays.

8.5 Create and use multidimensional arrays.

8.6 Use the ArrayList class.

25 MCQ

L8 Discussion: Using an Array or ArrayList

9: Final Project

9.1

N/A

L9 Final Project Submission

Final Exam - 64 MCQ

 

Grades

Your final grade will be based on the number of points you earn on submitted work and exams. The available points are distributed as follows:

Source Available Points
Lesson Assignments 172
Lesson Quizzes 300
Midterm Exam 100
Final Exam 225
Participation 80
Total 877

 

Textbook & Technology Requirements

To fully participate, make sure you have:

  • A computer that meets our Mizzou Academy technology requirements
  • A microphone and webcam for recording audio and video assignments
  • Any other required textbooks or materials for the course

Textbook

    1. Java Illuminated, J. Anderson, and H. Franceschi, 5th Edition, Jones & Bartlett Learning, 2018.
    2. AP Computer Science A Prep 2022, Penguin Random House, 2021.
    3. Gridworld: Student Manual (pdf). Free download found on the College Board Site. http://www.collegeboard.com/student/testing/ap/compsci_a/case.html 
    4. Quick Reference Guide AP Computer Science A (www.collegeboard.com) 
    5. AP* Computer Science Case Study: GridWorld (Parts 1 – 4). From http://www.collegeboard.com/student/testing/ap/compsci_a/case.html

    In order to complete your required assignments for this course, you also must have:

    1. Speakers or a pair of headphones (headphones preferred)
    2. You will be instructed to download the code, the student manual, and the support materials as needed from the College Board. All of these materials are free of charge. 
    3. Sun Microsystems, Java SE Development Kit (JDK 8.0). Free download. Requires 155 MB of disk space (207 MB for Mac). Installation instructions will be provided in Lesson 2.
    4. Eclipse Integrated Development Environment. Free download. Requires 48 MB of disk space. Installation instructions will be provided in Lesson 2.

    † Materials used in connection with this course may be subject to copyright protection.

Technology

The most up-to-date requirements can be found here: 

Additional requirements for the course are below: 

  • audio and video recording capabilities (e.g., smartphone, camera)

If you ever have trouble accessing course materials or recording tools, reach out to your teacher for support. We are here to help!

Accessibility

If you anticipate barriers related to the format or requirements of this course, please let Mizzou Academy know as soon as possible. If disability-related accommodations are necessary (for example, a scribe, reader, extended time on exams, captioning), please contact Mizzou Academy.

Canvas Technical Support

Canvas will be used as the primary platform for accessing course materials and assignments for this class.

Course Summary:

Course Summary
Date Details Due