Course Syllabus

Syllabus

Hi, name is Mr. Bryan, and this is my 6th year teaching programming and game design at CATA.  I have been a gamer since I first played Super Mario Bros. in 1986 and have been fascinated by the concept ever since.  In college I started out as a computer science major before switching to education.  The myriad of life experiences I have had since that decision eventually brought me to where I am today. 

I am excited for what the future holds in software development and game design as well as our program at CATA.  We have grown tremendously in the past couple of years, and now offer students many cutting edge opportunities such as utilizing a 3D scanner, 3D modeling, rendering and animation, utilizing an Oculus rift for game and simulation design, and working with powerful desktops and dual monitors.

 
I will be in my classroom from 8:15 until 4:00 every day.
My email address is scott.bryan@ucps.k12.nc.us.
You may contact me by email or phone at 704-296-9898.
I will provide my cell phone number upon request.

AP Central

FRQ Examples

LiveLabResources

                To check your practice work for accuracy

MyProgrammingLab

                To check your understanding as you go and turn in your practice code

Student Resources

                     -Solutions to Even-Numbered Exercises

                             To check every other exercise in order to make sure you are understanding correctly

-Source Code for Examples

                To analyze in order to understand how the code is structured

-Related software

                To have the programs needed to do your assignments

-Checkpoint Questions

                To check your understanding of key concepts after a section

-Self Test Questions

                To check your knowledge to make sure you didn’t miss anything important

-Animations

                For when you need a visual explanation of how the code works

-Common Errors and Debugging

                To clear up confusion before it happens

-Supplements

                For when you need resources to research information

-Glossary

                For when you don’t know what something means

-VideoNotes

                To hear from an expert on how to do something you need to learn

 

Lab submission and grades will be made available through Canvas and MyProgrammingLab.

EmpowerED - this provides parents with links to online resources and apps that students can access.

 

The official APcentral homepage for this course can be found here.

 

ONLINE LEARNING PLATFORM

Canvas - ask your student for their login information to see updates on assignments, due dates, and grades

Jgrasp

LiveLab

MyProgrammingLab

 

In order to download and install the compiler that we are using in class, you need to follow these links.  You must download and install jgrasp, the jre, and jdk for it to work.

For jgrasp, select that you agree and download.  You don't need to provide any personal information.

http://spider.eng.auburn.edu/user-cgi/grasp/grasp.pl?;dl=download_jgrasp.html

 

For the jre, select that you accept the licence terms and then your operating system from the top selection box.

http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html

 

For the jdk, select that you accept the licence terms and then your operating system from the top selection box.

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

 

AP Computer Science A

View in a new window

COURSE DESCRIPTION (Description ending with the Exam topic was copied from College Board AP's Computer Science A Course Description)

Goals

The goals of the AP Computer Science A course are comparable to those in the introductory course for computer science majors offered in many college and university computer science departments. It is not expected that all students in the AP Computer Science A course will major in computer science at the university level. The AP Computer Science A course is intended to serve both as an introductory course for computer science majors and as a course for people who will major in other disciplines and want to be informed citizens in today’s technological society.

The following goals apply to the AP Computer Science A course. Students should be able to:

  • design, implement, and analyze solutions to problems.
  • use and implement commonly used algorithms.
  • use standard data structures.
  • develop and select appropriate algorithms and data structures to solve new problems.
  • write solutions fluently in an object-oriented paradigm.
  • write, run, test, and debug solutions in the Java programming language, utilizing standard Java library classes and interfaces from the AP Java subset.
  • read and understand programs consisting of several classes and interacting objects.
  • read and understand a description of the design and development process leading to such a program

(Examples of such solutions can be found in the AP Computer Science Labs.)

  • understand the ethical and social implications of computer use.

Topic Outline

Following is an outline of the major topics considered for the AP Computer Science A Exam. This outline is intended to define the scope of the course, but not the sequence.

I. Object-Oriented Program Design

The overall goal for designing a piece of software (a computer program) is to correctly solve the given problem. At the same time, this goal should encompass specifying and designing a program that is understandable, and can be adapted to changing circumstances. The design process needs to be based on a thorough understanding of the problem to be solved

  1. Program and Class Design
  2. Problem analysis
  3. Data abstraction and encapsulation
  4. Class specifications, interface specifications, relationships (“is-a,” “has-a”), and

extension using inheritance

  1. Code reuse
  2. Data representation and algorithms
  3. Functional decomposition

II. Program Implementation

Part of the problem-solving process is the statement of solutions in a precise form that invites review and analysis. The implementation of solutions in the Java programming language reinforces concepts, allows potential solutions to be tested, and encourages discussion of solutions and alternatives.

  1. Implementation techniques
    1. Top-down
    2. Bottom-up
    3. Object-oriented
    4. Encapsulation and information hiding
    5. Procedural abstraction
  2. Programming constructs
    1. Primitive types vs. reference types
    2. Declaration
      1. Constants
      2. Variables
      3. Methods and parameters
      4. Classes
      5. Interfaces
    3. Text output using System.out.print and System.out.println
    4. Control
      1. Method call
      2. Sequential execution
      3. Conditional execution
      4. Iteration
      5. Recursion
    5. Expression evaluation
      1. Numeric expressions
      2. String expressions
      3. Boolean expressions, short-circuit evaluation, De Morgan’s law
  3. Java library classes and interfaces included in the AP Java Subset

III. Program Analysis

The analysis of programs includes examining and testing programs to determine whether they correctly meet their specifications. It also includes the analysis of programs or algorithms in order to understand their time and space requirements when applied to different data sets.

  1. Testing
    1. Development of appropriate test cases, including boundary cases
    2. Unit testing
    3. Integration testing
  2. Debugging
    1. Error categories: compile-time, run-time, logic
    2. Error identification and correction
    3. Techniques such as using a debugger, adding extra output statements, or hand-tracing code.
  1. Runtime exceptions
  2. Program correctness
    1. Pre- and post-conditions
    2. Assertions
  3. Algorithm Analysis
    1. Statement execution counts
    2. Informal running time comparison
  4. Numerical representations of integers
    1. Representations of non-negative integers in different bases
    2. Implications of finite integer bounds

IV. Standard Data Structures

Data structures are used to represent information within a program. Abstraction is an important theme in the development and application of data structures.

  1. Primitive data types (int, boolean, double)
  2. Strings
  3. Classes
  4. Lists
  5. Arrays (1-dimensional and 2-dimensional)

 

V. Standard Operations and Algorithms

Standard algorithms serve as examples of good solutions to standard problems. Many are intertwined with standard data structures. These algorithms provide examples for analysis of program efficiency.

  1. Operations on data structures
    1. Traversals
    2. Insertions
    3. Deletions
  2. Searching
    1. Sequential
    2. Binary
  3. Sorting
    1. Selection
    2. Insertion
    3. Mergesort

VI. Computing in Context

An awareness of the ethical and social implications of computing systems is necessary for the study of computer science. These topics need not be covered in detail, but should be considered throughout the course.

  1. System reliability
  2. Privacy
  3. Legal issues and intellectual property
  4. Social and ethical ramifications of computer use

 

The Exam

The AP Computer Science A Exam is 3 hours long and seeks to determine how well students have mastered the concepts and techniques contained in the course outline. The exam consists of two sections: a multiple-choice section (40 questions in 1 hour and 15 minutes), which tests proficiency in a wide variety of topics, and a free-response section (4 questions in 1 hour and 45 minutes), which requires the student to demonstrate the ability to solve problems involving more extended reasoning.

The multiple-choice and the free-response sections of the AP Computer Science A Exam require students to demonstrate their ability to solve problems, including their ability to design, write, and analyze programs and subprograms. Minor points of syntax are not tested on the exam. All code given is consistent with the AP Java subset. All student responses involving code must be written in Java. Students are expected to be familiar with and able to use the standard Java classes and interfaces listed in the AP Java subset. For both the multiple-choice and the free-response sections of the exam, a quick reference to the classes and interfaces in the AP Java subset will be provided. The Java Quick Reference is included in Appendix B.

In the determination of the grade for the exam, the multiple-choice section and the free-response section are given equal weight. Because the exam is designed for full coverage of the subject matter, it is not expected that many students will be able to correctly answer all the questions in either the multiple-choice section or the free-response section in the time allotted.

Multiple-choice questions on the exam are classified according to the type of content that is tested in the question. Questions may be listed in one or more of the classification categories. For example, a question that uses a looping construct to traverse the elements of an array would be listed under both the Data Structures and the Programming Fundamentals categories. The table below shows the classification categories and how they are represented in the multiple-choice section of the exam. Because questions can be classified in more than one category, the total of the percentages is greater than 100%.

Classification Category

Percent of multiple-choice items

Programming Fundamentals

55–75%

Data Structures

20–40%

Logic

5–15%

Algorithms/Problem Solving

25–45%

Object-Oriented Programming

15–25%

Recursion

5–15%

Software Engineering

2–10%

 

 

GRADING SCALE

Most assignments will be completed in class.  Only completed assignments turned in on time can receive full credit.  Come to class prepared!  This is part of your grade.  The grading scale is calculated on a points basis without weighted categories: 

A  =  90 -- 100

B  =  80 --   90

C  =  70 --   80

D  =  60 --   70

F  =    0 --   60

                           

First Six Weeks            ……………………………………………………………………………………………….  25%

Second Six Weeks       ………………………………………………………………………………………..……..  25%

Third Six Weeks           ………………………………………………………………………………………………   25%

Final Exam       ………………………………………………………………………………..………………….…...  25%

 

                        TOTAL FOR COURSE                                                                                                 100%

 

SUPPLIES

Students Supplies:      

  • Flash Drive 8G or more
  • Earbuds/Headphones
  • Notebook
  • Pencils

Classroom Supplies Wishlist:

  • Facial Tissues

CLASS ATTENDANCE POLICY

Regular attendance is required.  Your presence in class is crucial since most of the activities in this course occur during class time.  Your active participation will enhance your success as well as that of your classmates.  Be active in class!  Participate in class discussions!  Your opinions, input, and questions are what this class is all about!  Class attendance is part of your final grade.

Credit will not be granted for classes when absences for a student reach eight days for a semester long course and fifteen days for a yearlong course. Absences include those that are lawful, unlawful, and due to suspension.

Following any absence(s), a student is required to present a written document from the parent or guardian stating the reason for the absence.

STUDENT USE OF COMPUTER EQUIPMENT/INTERNET

Please READ pages 53 – 54 in your UCPS handbook and pages 14 -16 of your CATA student handbook regarding appropriate use of computer equipment/internet and consequences for misuse of both.

TUTORING

Students are required to attend mandatory tutoring for each class if grade drops below  “77”.  Tutoring is scheduled on Tuesday and Thursday 8:10 am – 8:50 pm.  Alternate and/or additional dates and times may be scheduled with teacher.

LATE/MAKE-UP WORK

Assignments are due on the announced due date. It is your responsibility to keep up with class activities and assignments and request missing assignments due to absence.  Upon returning from an excused absence, students will be given two days for each day absence to make up missed assignments/test.  All students work at a different pace and will be graded primarily on their quality of work and productivity level during class.  As long as the students are highly productive each day and producing work of high quality, they will receive excellent grades.  Extensions will also be available upon request.

New Schoolwide policy:  Work that has recieved a 0 and cannot be made up will have a 0 in the gradebook.  If it has not been turned in but still may be completed for a grade, it will have a score of 1.

TARDY POLICY

Students are expected to be in class when the tardy bell rings. A student is tardy when he/she is not in the classroom or laboratory where his/her class regularly meets when the bell begins to ring.  Student must report to office for an admittance slip.  A tardy will be recorded.   Please see CATA Handbook for tardy policy and consequences.

CLASSROOM PROCEDURES

 

Please note:  Bottled water is allowed.  The privilege will be removed if containers are not disposed of properly.  Water is not allowed near the computers, and must remain by the desk.

 

Students are expected…………………………………..

  • To act in a manner that is respectful and courteous
  • Show respect and courtesy for all class members and the teachers

Disrespect WILL NOT be tolerated! 

  • Be prepared daily with all required materials
  • Be punctual – be seated quietly and ready to begin when the bell rings
  • Conduct yourself in a manner which respects all students’ right to learn
  • Follow all verbal and written instructions from the teacher
  • Use time between class to take care of restroom needs

(If there is a medical reason, a doctor’s note is required)

  • Stay in the room until the teacher dismisses class
  • Contact teacher with any questions concerning a grade

(Progress reports are issued in the middle of each 6 weeks period.   You may schedule an appointment for tutoring, if needed)

  • ALWAYS PUT FORTH YOUR BEST EFFORT!!!

 

 

PARENT/GUARDIAN AND STUDENT SIGNATURE FORM

After reading and discussing the course syllabus and classroom procedures document with your son/daughter, please sign below, detach this page and return to the teacher.  Your prompt attention in this matter will ensure that your child is aware of what is required of him/her.  Thank you.

 

STUDENT:  I have read the course syllabus and classroom procedures document.  I understand what is expected and will honor these procedures.

 

Student Name:  ______________________________________________   Date: __________________________

                                                (Please Print)

 

Student Signature:   __________________________________________   Date:  __________________________

 

 

PARENT(S):  My child and I have reviewed and discussed the course syllabus and classroom procedures document.  I understand and will support them.

 

Parent (Mother) Name:  _______________________________     Signature:        ________________________________ 

(Please Print)

 

Email:  _____________________________ Contact #:  __________________________ Date:  ____________________

 

 

Parent (Father) Name:  _______________________________      Signature:        ________________________________   

(Please Print)

 

Email:  _____________________________ Contact #:  __________________________ Date:  ____________________

 

 

TEACHER:  I will be fair and consistent when administering consequences for those students not complying with classroom procedures.

 

Teacher Signature:  Scott J. Bryan                       Date: August 16, 2019                                                                        Electronically signed

 

Course Summary:

Date Details Due