Michigan Virtual

AP Computer Science A (Sem 2)

Other High School

About This Course

This is the second semester of a two-semester course sequence and is aligned to the College Board’s Advanced Placement course and exam description for AP Computer Science A. Curious about what really goes on behind your favorite apps and websites? It all starts with code! In this challenging course, you will discover the design of solutions to problems, the use of data structures to organize large sets of data, the development and implementation of algorithms to process data and discover new information, the analysis of potential solutions, and the ethical and social implications of computing systems. You will explore the power of object-oriented programming and design using the Java programming language.
AP Computer Science is a college-level computer course covering the applications of computing within the context of programming methodology, algorithms, and data structures. The Java computer language which is a free download for either a Macintosh or a Windows platform. This course requires a proctored mid-term and final exam. The course does NOT include the AP Exam; students can contact their school’s AP Coordinator or the College Board to sign up to take the Exam. In order to maintain the integrity of AP standards, all AP course midterm and final exams must be proctored. Prerequisites:  AP Computer Science A (Sem 1), Algebra 1 and prior computer programming coursework

Course Objectives: Upon completion of this course, students will be able to...

  • Analyze the significance of data structures in solving programming problems
  • Create and traverse arrays to store and access collections of data
  • Implement getter and setter methods to control access to array elements
  • Construct arrays of objects to manage complex data collections
  • Apply wrapper classes to convert between primitive types and objects
  • Create and traverse ArrayLists to manage dynamic collections of data
  • Design ArrayLists with multiple attributes to represent complex data structures
  • Implement algorithms to find minimum and maximum values within ArrayLists
  • Apply ArrayList algorithms to manipulate and process data collections
  • Replace values in ArrayLists using appropriate methods and indexing
  • Insert and delete elements in ArrayLists while maintaining data integrity
  • Create and access two-dimensional arrays to represent tabular data
  • Perform calculations on 2D arrays using nested loops and indexing
  • Implement 2D array algorithms to process matrix-like data structures
  • Apply divide and conquer principles to break down complex problems
  • Design recursive algorithms to solve problems through self-referential methods
  • Implement linear and binary search algorithms to locate data in collections
  • Apply insertion, selection, and merge sort algorithms to organize data
  • Evaluate programming ethics and security considerations in software development
  • Analyze artificial intelligence applications and potential bias in algorithmic decision-making

Course Outline:

Module 5: Arrays

Module 6: ArrayLists

Module 7: Two-Dimensional Arrays

Module 8: Implementing Advanced Algorithms

Resources Included: The textbook, CSAwesome2, published online by Runestone Academy LTD, is the newest AP CSA Java curriculum approved to meet the 2025-2026 College Board standards and an introductory college-level computer programming course in Java. Runestone Academy LTD is a 501(c)(3) nonprofit organization providing Open Source interactive textbooks at no cost. The textbooks are ad-free to those who choose to register an account with Runestone Academy (optional), using the code csawesome2 in the Course Name field. Textbook Citation: Runestone Academy LTD. (2025). CSAWESOME2. AP CSA Java 2025+. https://runestone.academy/ns/books/published/csawesome2/csawesome2.html
Online lesson instruction and activities, opportunities to engage with a certified, online instructor and classmates, when appropriate, and online assessments to measure student performance of course objectives and readiness for subsequent academic pursuits.

Additional Costs: None

Scoring System: Michigan Virtual does not assign letter grades, grant credit for courses, nor issue diplomas. A final score out of total points earned will be submitted to your school mentor for conversion to their own letter grading system.

Time Commitment: Semester sessions are 18-weeks long: Students must be able to spend 1 or more hours per day in the course to be successful. Summer sessions are 10 weeks long: Students must be able to spend a minimum of 2 or more hours per day, or about 90 hours during the summer, for the student to be successful in any course. Trimester sessions are 12-weeks long: Students must be able to spend 1.5 or more hours per day in the course to be successful.

Technology Requirements: Completion of course activiites require the download of the latest version of the BlueJ Java IDE as well as the version of the Java SE Development Kit from Oracle) suited to your computer device's operating system. Computers devices used by students in this course should running either Windows 10 (x86 (32-bit) or x64 (64-bit)) OS or Mac OS X (10.8.3+ or 10.9 and above).

Students will require a computer device with headphones, a microphone, webcam, up-to-date Chrome Web Browser, and access to YouTube.

Ensure that your school or district network and device administrator establishes network access permissions or exceptions for online resources relevant to the course in which you are choosing to enroll. Ref., Michigan Virtual Course Allow List

Please review the Michigan Virtual Technology Requirements.

Lightweight devices such as Apple iPads, Google Chromebooks, and tablets have limited support for Java or Flash which still appear in a small percentage of our catalog. While FLVS does not offer technical support for these devices, FLVS is working to remove Flash from their remaining course content. Students will need extra work-around steps or alternate browsers to engage with some portions of those courses. FLVS recommends students have a Windows or Mac based computer available to complete coursework in the event that your selected mobile device does not meet the needs of the course. Fully supported Operating Systems for FLVS courses include Windows (10 or higher) and MacOS (11 or higher). Supported Browsers include the most recent versions of Microsoft Edge, Mozilla Firefox, Google Chrome, and Apple Safari on devices that support Java and HTML5. Browsers need to be up to date, and some FLVS courses may require installation or enabling of the following Plug-ins: JavaScript enabled, Cookies enabled, Java installed. https://www.flvs.net/student-parent-resources/more/system-requirements

Instructor Support System: For technical issues within your course, contact the Customer Care Center by email at CustomerCare@michiganvirtual.org or by phone at (888) 889-2840.

Instructor Contact Expectations: Students can use email or the private message system within the Student Learning Portal to access highly qualified teachers when they need instructor assistance. Students will also receive feedback on their work inside the learning management system. The Instructor Info area of their course may describe additional communication options.

Academic Support Available: In addition to access to a highly qualified, Michigan certified teacher, students have access to academic videos and outside resources verified by Michigan Virtual. For technical issues within the course, students can contact the Michigan Virtual Customer Care by email at customercare@michiganvirtual.org or by phone at (888) 889-2840.

Required Assessment: Online assessments consist of formative and summative assessments represented by computer-graded multiple choice, instructor-graded writing assignments including hands-on projects, model building, discussion-based assessments (one-on-one conversations with your teacher), and other forms of authentic assessments.

Technical Skills Needed: Basic technology skills necessary to locate and share information and files as well as interact with others in a Learning Management System (LMS), include the ability to:

  • Download, edit, save, convert, and upload files
  • Download and install software
  • Use a messaging service similar to email
  • Communicate with others in online discussion or message boards, following basic rules of netiquette
  • Open attachments shared in messages
  • Create, save, and submit files in commonly used word processing program formats and as a PDF
  • Edit file share settings in cloud-based applications, such as Google Docs, Sheets, or Slides
  • Save a file as a .pdf
  • Copy and paste and format text using your mouse, keyboard, or an html editor’s toolbar menu
  • Insert images or links into a file or html editor
  • Search for information within a document using Ctrl+F or Command+F keyboard shortcuts
  • Work in multiple browser windows and tabs simultaneously
  • Activate a microphone or webcam on your device, and record and upload or link audio and/or video files
  • Use presentation and graphics programs
  • Follow an online pacing guide or calendar of due dates
  • Use spell-check, citation editors, and tools commonly provided in word processing tool menus
  • Create and maintain usernames and passwords

Additional Information: The official course descriptions for Advanced Placement courses and information about their exams are located on the College Board site at Course and Exam Descriptions.

Michigan Virtual prepares students in AP courses for the AP exam, but does not offer the exam test itself. It is the responsibility of the school or parent to register for a local administration of the AP exam.

There are required due dates in AP courses. The pacing of due dates in AP courses aligns to the completion of all lessons and required assignments and assessments prior to the national AP exam date related to this course title. The calendar of AP exam dates is published by the College Board (Exam Calendar).

Terms Offered

  • (25-26) Semester 2

NCAA Approved?

Yes

Course Type

Advanced Placement

Standards

College Board: AP Course Topics and Objectives