Welcome to The APCS Java Wiki Fr. Chris Started this wiki to help with the exchange of information for helping you ask and answer questions about labs and AP Computer Science Questions. The homework assignments and test dates are [[https://www.mathorama.com/showHWbyChapter.php?block=B&qtr=1|here]]. =====Summer Assignment===== - See **AP Comp Sci A (Summer)** in Portals (Blackbaud) under **Groups** [[https://mathorama.com/wiki/doku.php?id=summer_assignment| Historic Summer Assignments]] =====First Week Labs===== - [[Hello World without an IDE]] - [[Guess My Rule]] - [[Stanford Karel J Robot]] - [[http://apcs.mathorama.com|old wiki]] =====Labs===== -[[Summer Assignment]] -[[First Qtr Labs]] -[[Second Qtr Labs]] -[[Third Qtr Labs]] -[[Fourth Qtr Labs]] -[[Starter Code for Old AP Questions]] =====Projects===== -[[https://mathorama.com/apcs/pmwiki.php?n=Main.Applications|Starter code your own applications]] -[[RaspberyPi Labs]] -[[https://mathorama.com/apcs/pmwiki.php?n=Main.HowToConvertYourAppletToAnApplication|How to Convert an Applet to an Application]] -[[Using The EasySound Library]] -[[High Scores|Saving a Record of Top Scores]] -[[Tile Grid Example]] -[[Bounce Example]] -[[Shooting Example]] =====2023 Final Projects===== * [[Rhythm Game]] (Kevin K) * [[PackPerson]] (Chase) * [[Bricc Breaker]] (AJ) * [[Text To Sounds]] (Cole) * [[Quick Clicks]] (Jake G) * [[Centipede]](Noe) * [[Stacker]](Justin) * [[Mine Sweeper]] (Oliver) * ?(Jake R) * [[Repeat After Me ]] (Lucas) * ? (Aiden S) * ? (Jason) * ? (Sean) * [[Tank]] (Kevin J) * [[Tic Tac Toe for Two]] (Nick) =====2022 Final Projects===== * [[Resources for Tetris]] (Timer drawing a box listening to left and right key arrow keys from user) * [[Resources for Peek-A-Boo]] (Timer with Key input from user) * [[Resources for DotClicker]] (Timer with mouse clicks and collision example) * [[Resources for ConnectFour]] * [[Resources for KnightsTour]] * [[Resources for SnakeGame]] * [[Hangman]] * [[MemoryApp]] * [[ChickenLittle]] =====Study Guides===== -[[https://mathorama.com/wiki/doku.php?id=qtr_1_study_guide|Qtr 1 Exam Study Guide]] -[[https://mathorama.com/wiki/doku.php?id=qtr_2_study_guide|Qtr 2 Exam Study Guide]] -[[Qtr 3 Exam Study Guide]] -[[Qtr 4 Exam Study Guide]] =====Getting Started Links==== -Just for fun: [[http://www.youtube.com/watch?v=pY1_HrhwaXU|Lifted]] Pixar's insight into taking computer science exams -Download and install a JDK (Java Development Kit). You have a choice now: - - [[https://www.oracle.com/java/technologies/javase-downloads.html|Oracle]] Java SE 11 JDK (LTS) (which needs an Opacle License) - OpenJDK -[[https://adoptopenjdk.net|AdoptOpenJDK]] (Use the old HotSpotJVM or the faster OpenJ9 JMV supported by IBM) -[[https://aws.amazon.com/corretto/|Corretto]] Amazon's OpenJDK - If you are using macOS 10.15 Catalina, there is a [[https://wolfpaulus.com/java-on-macos-catalina/|tutorial]]. -Download a IDE (Integrated Development Environment) like - [[http://www.bluej.org/download/download.html|BlueJ IDE]] See [[http://www.archive.org/details/ChrisThielGettingStartedwithBlueJ|See Getting Started with BlueJ Video]]) - Download page for [[https://www.eclipse.org/downloads/|Eclipse| Eclipse IDE for Java Developers]] ([[http://www.archive.org/details/ChrisThielGettingStartedwithEclipse|See Getting Started with Eclipse Video]]) -Download [[https://apcentral.collegeboard.org/courses/ap-computer-science-a/exam|AP Exam Quick Reference]] from AP Central at CollegeBoard.org -Download [[http://media.collegeboard.com/digitalServices/pdf/ap/ap-computer-science-a-course-description-2014.pdf|APCS "Acorn" Book]] -[[http://www.javabat.com]] -[[http://www.youtube.com/watch?v=v5Yhx2UrRLk|Gridworld Bug Battle]] -[[http://www.eimacs.com/Educ_BPCSOverview.htm|Online interactive edition of a AP Comp Sci A Study Guide]] -[[http://www.skylit.com/beprepared-java.html|Litvin's "Be Prepared for The APCS" Study Guide]] -[[http://www.youtube.com/watch?v=rG_U12uqRhE|Pair Programming Video]] -[[http://www.youtube.com/watch?v=yrqcN5EF3t0&feature=related|Extreme Programming]] -[[http://www.youtube.com/user/MrDeathJockey?feature=watch|DeathJockey Tutorials]] are great if you learn well by watching someone writing code. =====Final Project Games==== Here are some executable games written in 2019: * {{ :castle_siege.jar |Castle Siege by James}} * {{ :castle_siege.zip |Source Code for Castle Siege}} * {{ :elevator_game.jar |Elevator Game by Giuseppe}} * {{ :f_zero.jar |F ZERO by Liam}} * {{ :f_zero.zip |Source Code for F ZERO}} [[https://mathorama.com/apcs/pmwiki.php?n=Main.FinalProjectsTrailIndex|Click here for other years]] [[https://mathorama.com/apcs/pmwiki.php?n=Main.SimpleGameTutorial| Simple Game Tutorial]] has resources and videos that walk you through writing an ChickenLittle Applet (BlueJ 3.17 is the last version to support Applets). I am currently writing an application version, using these [[https://mathorama.com/apcs/pmwiki.php?n=Main.HowToConvertYourAppletToAnApplication|tips]], but I am considering using [[https://www.geeksforgeeks.org/play-audio-file-using-java/|this method]] to simplify the way to add audio clips to your game. If your computer doesn't already have the Java Runtime environment installed, you can find it at [[https://www.java.com/en/download/]] On the current MacOS, you would need to Control-Click and Select "Open" to override the security settings that prevent you from running Java apps (the one that end with .jar) =====Quotes===== -A programmer is sent to the grocery store with instructions to "buy butter and see whether they have eggs, if they do, then buy a dozen." Returning with 12 butters, the programmer says, "they had eggs." -There are two ways to write error-free programs; only the third one works. -You can't make a program without broken egos. -Q: Why did the programmer quit his job? A: Because he didn't get arrays. -Programming is 10% science, 25% ingenuity and 65% getting the ingenuity to work with the science. -When Shakespeare asked, "To be, or not to be?," he did not provide the answer. But computer science can! The answer is FF. ( '2B | !2B = FF' .. in binary '001001011 OR 110110100=11111111') -Chuck Norris can delete the Recycling Bin. -When Chuck Norris throws exceptions, it’s across the room. - Have you heard about the new Cray super computer? It’s so fast, it executes an infinite loop in 6 seconds.