AP Computer Science A: Difference between revisions

Content deleted Content added
m Reverted edits by Shuvosarkarreal (talk): addition of unnecessary/inappropriate external links (HG) (3.4.10)
Tags: Mobile edit Mobile web edit
 
(41 intermediate revisions by 22 users not shown)
Line 1:
{{Short description|Advanced Placement course and exam in Java programming}}
{{Advanced Placement}}
'''Advanced Placement''' ('''AP''') '''Computer Science A''' (also known as '''AP CompSci''', '''AP CompSci A''', '''APCSAP CSA''', '''APCSAAP Computer Science Applications''', or '''AP Java''') is an [[AP Computer Science]] course and examination offered by the [[College Board]] to [[high school]] students as an opportunity to earn college credit for a [[college]]-level [[computer science]] course. AP Computer Science A<ref>[http://apcentral.collegeboard.com/apc/public/courses/teachers_corner/4483.html AP Computer Science A Home Page], The College Board</ref> is meant to be the equivalent of a first-semester course in computer science. The AP exam currently tests students on their knowledge of [[Java (programming language)|Java]].
 
AP Computer Science AB, which was equal to a full year, was discontinued following the May 2009 exam administration.<ref name=CSABdiscontinued>{{cite web | url = http://apcentral.collegeboard.com/apc/public/courses/teachers_corner/195948.html | title = Important Announcement about AP Computer Science AB | work = AP Central | publisher = The College Board | year = 2008 | url-status = dead | archive-url = https://web.archive.org/web/20080409195847/http://apcentral.collegeboard.com/apc/public/courses/teachers_corner/195948.html | archive-date = April 9, 2008}}</ref>
Line 32:
|-
|5
|Writing [[Class (computer programming)|Classes]]
|5–7.5%
|-
|6
|[[Array (data structure)|Array]]
|10–15%
|-
Line 48:
|-
|9
|[[Inheritance (computerobject-oriented scienceprogramming)|Inheritance]] and [[Polymorphism (computer science)|Polymorphism]]
|5–10%
|-
Line 58:
==Case studies and labs==
Historically, the AP exam used several programs in its free-response section to test students' knowledge of object-oriented programs without requiring them to develop an entire environment. These programs were called Case Studies.
 
Students such as Thadius Schultheis and Caspian Jolly Van Bodgraven helped revolutionize the program.
 
This practice was discontinued as of the 2014–15 school year and replaced with optional labs that teach concepts.
Line 66 ⟶ 64:
Case studies were used in AP Computer Science curriculum starting in 1994.<ref>{{cite web | archive-url = https://web.archive.org/web/20120226050416/http://www.collegeboard.com/student/testing/ap/compsci_a/case.html?compscia | archive-date = February 26, 2012 | url = http://www.collegeboard.com/student/testing/ap/compsci_a/case.html?compscia | title = GridWorld Case Study | work = AP | publisher = The College Board }}</ref>
 
====BigLarge Integer case study (1994-1999)====
The BigLarge Integer case study was in use prior to 2000. It was replaced by the Marine Biology case study.
 
====Marine Biology case study (2000-2007)====
The Marine Biology Case Study (MBCS) was a program written in [[C++]] until 2003, then in [[Java (programming language)|Java]], for use with the A and AB examinations. It served as an example of [[object-oriented programming]] (OOP) embedded in a more complicated design project than most students had worked with before.
The case study was designed to allow the [[College Board]] to quickly test a student's knowledge of [[object oriented programming]] ideas such as [[Inheritance (computerobject-oriented scienceprogramming)|inheritance]] and [[encapsulation (computer science)|encapsulation]] while requiring students to understand how objects such as "the environment", "the fish", and the simulation's control module interact with each other without having to develop the entire environment independently, which would be quite time-consuming. The case study also gives all students taking the AP Computer Science exams with a common experience from which to draw additional test questions.
On each of the exams, at least one free-response question was derived from the case study. There were also five multiple-choice questions that are derived from the case study.
Line 79 ⟶ 77:
 
====GridWorld case study (2008-2014)====
'''GridWorld''' is a computer program case study written in [[Java (programming language)|Java]] that was used with the [[AP Computer Science]] program from 2008 to 2014.<ref>Horstmann, Cay. [http://gridworld.info/ "GridWorld".] ''horstmann.com''. Accessed September 15, 2008.</ref> It serves as an example of [[object-oriented programming]] (OOP). GridWorld succeeded the [[Advanced Placement Computer Science#Marine Biology Case Study|Marine Biology Simulation Case Study]], which was used from 2000–2007. The GridWorld framework was designed and implemented by [http://horstmann.com Cay Horstmann], based on the Marine Biology Simulation Case Study. The narrative was produced by Chris Nevison and Barbara Cloud Wells, [[Colgate University]].
 
The [[GridWorld]] Case Study was used as a substitute for writing a single large program as a culminating project. Due to obvious time restraints during the exam, the GridWorld Case Study was provided by the College Board <!-- commented out direct link just in case it can be used as a reference in the future [http://apcentral.collegeboard.com/apc/public/repository/GridWorldCode.zip]--> to students prior to the exam. Students were expected to be familiar with the classes and interfaces (and how they interact) before taking the exam. The case study was divided into five sections, the last of which was only tested on the AB exam. Roughly five multiple-choice questions in Section I were devoted to the GridWorld Case Study, and it was the topic of one free response question in Section II.
Line 86 ⟶ 84:
 
*'''Actors'''
**The GridWorld Case Study employs an Actor class to construct objects in the grid. The Actor class manages the object's color, direction, ___location, what the object does in the simulation, and how the object interacts with other objects.
**Actors are broken down into the classes "Flower", "Rock", "Bug", and "Critter", which inherit the Actor class and often override certain methods (most notably the Act method). Flowers can't move, and when forced to Act, they become darker. Flowers are dropped by Bugs and eaten by Critters. Rocks are also immobile and aren't dropped or eaten. Bugs move directly ahead of themselves, unless blocked by a rock or another bug, in which case the Bug will make a 45 degree turn and try again. They drop flowers in every space they occupy, eat flowers that are directly on their space of grid, and are consumed by Critters. Critters move in a random direction to a space that isn't occupied by a Rock or other Critter and consume Flowers and Bugs.
*'''Extensions'''
**The Case Study also includes several extensions of the above classes. "BoxBug" extends "Bug" and moves in a box shape if its route is not blocked. "ChameleonCritter" extends "Critter" and does not eat other Actors, instead changing its color to match the color one of its neighbors. "Crab Critter" moves left or right and only eats Actors in front of it, but otherwise extends the "Critter" class.
**Students often create their own extensions of the Actor class. Some common examples of student created extensions are [[Four Lords of the Diamond|Warden organisms]] and SimCity-like structures, in which objects of certain types create objects of other types based on their neighbors (much like [[Conway's Game of Life]]). Students have even created versions of the games [[Pac-Man]], [[Fire Emblem]], and [[Tetris]].<ref>{{cite web|last1=Horstmann|first1=Cay|title=Extending GridWorld|url=http://www.horstmann.com/gridworld/extending-gridworld.html|website=Extending GridWorld|access-date=22 February 2016}}</ref>{{self-published inline|date=March 2025}}
*'''Known issues'''
**The version that is available at the College Board website, GridWorld 1.00, contains a bug (not to be confused with the Actor subclass Bug) that causes a SecurityException to be thrown when it is deployed as an [[Java applet|applet]]. This was fixed in the "unofficial code" release on the GridWorld website. Also, after setting the environment to an invalid BoundedGrid, it will cause a [[Null pointer|NullPointerException]].
Line 104 ⟶ 102:
The AP exam in Computer Science was first offered in 1984.
 
Before 1999, the AP exam tested students on their knowledge of [[Pascal Programming Language|Pascal]]. From 1999 to 2003, the exam tested students on their knowledge of [[C++]] instead. Since 2003, the AP Computer Science exam has tested students on their knowledge of computer science through [[Java (Sunprogramming language)|Java]].
 
===Format===
ThePrior to 2015, the exam iswas composed of two sections, formerly consisting of the following times:
 
*Section I: Multiple Choice [1 hour and 15 minutes for 40 multiple-choice questions]
Line 118 ⟶ 116:
 
===Grade distributions===
In the 20142023 administration, 3994,278438 students took the exam. The mean score was a 23.9621 with a standard deviation of 1.5550. The grade distributions since 2003 were:
 
{|class="wikitable"
Line 124 ⟶ 122:
!2003
!2004
!2005<ref name=GradeDistrib2005>{{citation | url = http://media.collegeboard.com/digitalServices/pdf/research/studentgradedistribut_47038.pdf | title = STUDENT GRADE DISTRIBUTIONS | year = 2005 | format = PDF | publisher = College Board | access-date = January 30, 2017}}</ref>
!2006<ref name=GradeDistrib2006>{{citation | url = http://media.collegeboard.com/digitalServices/pdf/research/ap06_student_grade_distribs.pdf | title = STUDENT GRADE DISTRIBUTIONS | year = 2006 | format = PDF | publisher = College Board | access-date = January 30, 2017}}</ref>
!2007<ref name=GradeDistrib2007>{{citation | url = http://media.collegeboard.com/digitalServices/pdf/research/2007_STUDENT_GRADE_DISTRIBUTIONS.pdf | title = STUDENT GRADE DISTRIBUTIONS | year = 2007 | format = PDF | publisher = College Board | access-date = January 30, 2017}}</ref>
!2008
!2009<ref name=GradeDistrib2009>{{citation | url = http://media.collegeboard.com/digitalServices/pdf/research/student-grade-distributions-09.pdf | title = STUDENT GRADE DISTRIBUTIONS | year = 2009 | format = PDF | publisher = College Board | access-date = January 30, 2017}}</ref>
!2010<ref>"[https://reports.collegeboard.org/media/pdf/Student-Score-Distributions-2010_1.pdf Student Score Distributions]" (PDF). Retrieved January 12, 2024.</ref>
!2010
!2011<ref>"[https://reports.collegeboard.org/media/pdf/AP-Student-Score-Distributions-2011_1.pdf Student Score Distributions]" (PDF). Retrieved January 12, 2024.</ref>
!2011
!2012<ref>{{cite web | url=http://apcentral.collegeboard.com/apc/public/repository/ap12_comp_sci_A_ScoringDist.pdf | title=AP Computer Science A 2012 Score Distribution | publisher=College Board | access-date=12 January 2014}}</ref>
!2013<ref>{{cite web | url=http://media.collegeboard.com/digitalServices/pdf/ap/apcentral/ap13_comp_sci_A_ScoringDist.pdf | title=AP Computer Science A 2013 Score Distribution | publisher=College Board | access-date=12 January 2014}}</ref>
!2014<ref>{{cite web | url=http://media.collegeboard.com/digitalServices/pdf/research/2014/STUDENT-SCORE-DISTRIBUTIONS-2014.pdf | title=Student Score Distribution | publisher=College Board | access-date=28 February 2015}}</ref>
!2015<ref>{{cite web | url=http"[https://wwwreports.totalregistrationcollegeboard.netorg/AP-Exam-Registration-Servicemedia/2015-AP-Exampdf/Student-Score-Distributions-2015_1.phppdf | title=2015 AP ExamStudent Score Distributions]" |(PDF). publisher=Retrieved TotalJanuary Registration12, |access-date=8 July 2015}}2024.</ref>
!2016<ref>{{Cite web|url=http"[https://wwwsecure-media.totalregistrationcollegeboard.netorg/AP-Exam-Registration-ServicedigitalServices/pdf/research/2016-AP-Exam/Student-Score-Distributions.php|title=-2016.pdf AP ExamStudent Score Distributions|last=Total]" Registration|website=www(PDF).totalregistration Retrieved January 12, 2024.net|access-date=2016-07-01}}</ref>
!2017<ref>{{Cite web|url="[https://wwwsecure-media.totalregistrationcollegeboard.netorg/AP-Exam-Registration-ServicedigitalServices/pdf/research/2017-AP-Exam/Student-Score-Distributions.php|title=-2017.pdf AP ExamStudent Score Distributions|last=Total]" Registration|website=www(PDF).totalregistration Retrieved January 12, 2024.net|access-date=2017-06-12}}</ref>
!2018<ref>{{cite web|url=https://secure-media.collegeboard.org/digitalServices/pdf/research/2018/Student-Score-Distributions-2018.pdf {{Bare| URLtitle=Student Score Distributions, AP Exams - May 2018 PDF| website=The College Board | access-date=MarchDecember 24, 2022}}</ref>
!2019<ref>{{Cite web|url="[https://wwwsecure-media.totalregistrationcollegeboard.netorg/AP-Exam-Registration-ServicedigitalServices/AP-Exampdf/research/2019/Student-Score-Distributions.php?year=2019|title=-2019.pdf AP ExamStudent Score Distributions|last=Total]" Registration|date=June(PDF). Retrieved 14January 12, 2019|website=www2024.totalregistration.net|access-date=2019-06-17}}</ref>
!2020<ref>{{Cite web|title=STUDENT SCORE DISTRIBUTIONS|url=https://secure-media.collegeboard.org/digitalServices/pdf/research/2020/Student-Score-Distributions-2020.pdf|access-date=June 9, 2021}}</ref>
!2021<ref>"[https://reports.collegeboard.org/media/pdf/2021-ap-student-score-distributions_1.pdf Student Score Distributions]" (PDF). Retrieved January 12, 2024.</ref>
!2021<ref>{{Cite web|last=Total Registration|date=2021-07-17|title=2021 AP Exam Score Distributions|url=https://www.totalregistration.net/AP-Exam-Registration-Service/AP-Exam-Score-Distributions.php?year=2021|url-status=live|access-date=2021-07-18|website=www.totalregistration.net|archive-url=https://web.archive.org/web/20210708203625/https://www.totalregistration.net/AP-Exam-Registration-Service/AP-Exam-Score-Distributions.php?year=2021 |archive-date=2021-07-08 }}</ref>
!2022<ref>"[https://apcentral.collegeboard.org/media/pdf/ap-score-distributions-by-subject-2022.pdf Student Score Distributions]" (PDF). Retrieved October 1, 2023.</ref>
!2022<ref>{{Cite web |last=Total Registration |date=2022-06-23 |title=2022 AP Exam Score Distributions |url=https://www.totalregistration.net/AP-Exam-Registration-Service/AP-Exam-Score-Distributions.php |access-date=2022-06-23 |website=www.totalregistration.net}}</ref>
!2023<ref>"[https://apcentral.collegeboard.org/media/pdf/ap-score-distributions-by-subject-2023.pdf STUDENT SCORE DISTRIBUTIONS]" (PDF). Retrieved January 12, 2024.</ref>
!20212024<ref>{{Cite web |last=Total Registration |date=20212024-0706-1725 |title=20212024 AP Exam Score Distributions |url=https://www.totalregistration.net/AP-Exam-Registration-Service/AP-Exam-Score-Distributions.php?year=2021|url-status=live |access-date=20212024-0706-1827 |website=www.totalregistration.net|archive-url=https://web.archive.org/web/20210708203625/https://www.totalregistration.net/AP-Exam-Registration-Service/AP-Exam-Score-Distributions.php?year=2021 |archive-date=2021-07-08 }}</ref>
!2025
|-
!5
Line 157 ⟶ 158:
|21.3%
|24.4%
|20.78%
|24.42%
|24.7%
|2726.07%
|25.6%
|6923.9%
|2027.3%
|26.58%
|2124%
|25%
|26.5%
|-
!4
Line 179 ⟶ 183:
|23.1%
|24.6%
|20.45%
|20.9%
|21.32%
|2221.19%
|21.7%
|2021.09%
|7020.4%
|6722.74%
|6722%
|22%
|20.3%
|-
!3
Line 200 ⟶ 207:
|13.9%
|16.8%
|15.32%
|23.21%
|21.9%
|21.78%
|2021.80%
|23.2%
|19.3%
|19.9%
|18.8%
|20%
|20%
|20.0%
|-
!2
Line 222 ⟶ 232:
|7.0%
|7.7%
|7.12%
|12.5%
|11.5%
|11.89%
|11.89%
|12.8%
|12.1%
|10.4%
|9.5%
|11%
|10%
|-
!1
Line 244 ⟶ 257:
|25.9%
|31.1%
|28.65%
|23.21%
|21.35%
|20.54%
|18.34%
|16.8%
|21%
|22.8%
|22.1%
|22.5%
|23%
|23%
|-
!|% of scores 3 or higher
Line 261 ⟶ 277:
|57.3%
|62.1%
|6465.90%
|63.9%
|63.5%
Line 267 ⟶ 283:
|61.2%
|64.3%
|64.35%
|67.0%
|67.8%
|69.6%
|70.4%
|65.1%
|67.5%
|68.0%
|66%
|67.2%
|67.7%
|69.9%
|70.4%
|67%
|
|-
!|Mean
Line 289 ⟶ 308:
|2.96
|3.09
|3.0304
|3.1615
|3.18
|3.28
|3.26
|3.2826
|3.12
|3.20
|3.21
|3.13
|3.18
|
|-
!|Standard Deviation
Line 316 ⟶ 338:
|1.44
|1.40
|1.4348
|1.50
|1.50
|1.48
|
|-
Line 332 ⟶ 357:
|31,117
|39,278
|48,994
| 48,994 <ref>{{cite web | url=https://secure-media.collegeboard.org/digitalServices/pdf/research/2015/Program-Summary-Report-2015.pdf | title=PROGRAM SUMMARY REPORT | publisher=College Board | access-date=27 October 2015}}</ref>
|57,937
|60,519
|60,519 <ref>{{cite web | url=https://secure-media.collegeboard.org/digitalServices/pdf/research/2017/Student-Score-Distributions-2017.pdf | title=PROGRAM SUMMARY REPORT | publisher=College Board | access-date=6 March 2018}}</ref>
|65,133
|69,685
|70,580
|6374,980676
|77,753
|94,438
|
|93,124
|}
 
Line 410 ⟶ 438:
|70.6%
|71.2%
|73.10%
|76.0%
|-
Line 438 ⟶ 466:
|5,064
|4,995
|35,881105
|}