course #: · web viewcourse #: cb40 grade level:9-12 course name:ap computer science a level...
TRANSCRIPT
Course #: CB40 Grade Level: 9-12Course Name: AP Computer Science A Level of Difficulty: AveragePrerequisites: CB09 # of Credits: 1 year – 1 Credit
The following is a Career and Technical Education (CTE) class under the Information Technology Program
AP Computer Science UnitsUnit 1: Introduction to JAVA and OOPUnderstand how to use the JDK in the development environment to compile and output simple JAVA Code.Unit 2: JAVA and Computer BasicsTSW understand how software utilizes and interfaces with computer hardware.Unit 3: More JAVA BasicsTSW solve basic mathematic problems using critical thinking skills.Unit 4: Defining Variables, Arithmetic ExpressionsTSW access the API to locate examples of proper syntax for defining variables and arithmetic expressions.Unit 5: Conditionals and LoopingTSW code conditional statements that execute loops in a controller manner.Unit 6: Introduction to Classes and OOPTSW design and implement user defined classes.Unit 7: Advanced Control StatementsTSW code conditional statements of increased difficulty and depth.Unit 8: ArraysTSW implement arrays in a program.Unit 9: Advanced Operations: Strings, Arrays & Array ListsTSW write JAVA code using more difficult programming constructs.Unit 10: Recursion, Complexity Searching & SortingTSW increase the efficiency of the code by using advanced data structures and methods.Unit 11: More on Classes, Inheritance, Interfaces, Polymorphism and CollectionsTSW use inheritance to extend a class and implement an interface for a new class.Unit 12: Case StudyTSW use all of the knowledge obtained to design and create according to case study requirements.
1
CB40 AP Computer Science–Suggested Teaching TimelineFirst Semester Second Semester
August Sept. Oct. Nov. Dec. Jan. Feb. March April May
Unit 1: Intro to JAVA and OOPUnit 2: JAVA and Computer Basics
Unit 3: More JAVA Basics
Unit 4: Defining Variables, Arithmetic ExpressionsUnit 5: Conditionals and LoopingUnit 6: Introduction to Classes and OOPUnit 7: Advanced Control Statements
Unit 8: Arrays
Unit 9: Advanced Operations: Strings, Arrays & Array ListsUnit 10: Recursion, Complexity Searching & SortingUnit 11: More on Classes, Inheritance, Interfaces, Polymorphism and CollectionsUnit 12: Case Study
2
Career & Technical EducationUnit 1: Introduction to JAVA and OOP
3
TSW: Understand how to use the JDK in the development environment to compile and output simple JAVA Code.Knowledge and Skills Arizona CTE Standards Resources
Knowledge Java Development Kit (JDK) Integrated Development
Environment (IDE) Object Oriented Programming
(OOP)
Skills Examine JDK terms and OOP
concepts: classes, objects and methods
Identify the different IDE’s Develop proficiency in writing
code and producing output through the IDE
STANDARD 8.0 ─ CREATE A PROGRAM USING SOFTWARE8.1 Use a program editor to enter and modify code8.2 Compile and execute programs8.5 Access program and language documentation
Java Development Kit (JDK) Integrated Development
Environment (IDE) Access to the Oracle Site on
the Internet
Career & Technical EducationUnit 2: JAVA & Computer BasicsTSW understand how software utilizes and interfaces with computer hardware.
4
Knowledge and Skills Arizona CTE Standards ResourcesKnowledge
Subsystems of the computer: CPU, RAM, User interfaces, I/O Devices, network connections and auxiliary storage
Basic JAVA Concepts: objects, classes, methods, and commands
Copyright laws, ethics and intellectual property
Skills Write, edit, compile and run basic
JAVA programs Categorize subsystems by
functionDifferentiate between computer ethics, copyright laws and intellectual property
STANDARD 1.0 ─ APPLY PROBLEM-SOLVING AND CRITICAL THINKING SKILLS TO INFORMATIONTECHNOLOGY1.3 Use problem-solving processesSTANDARD 2.0 ─ MAINTAIN A SAFE GREEN INFORMATION TECHNOLOGY WORK ENVIRONMENT2.7 Explain environmental considerations when disposing of computer/networking componentsSTANDARD 3.0 ─ RECOGNIZE SECURITY ISSUES RELATED TO INFORMATION TECHNOLOGY3.1 Explain procedures to maintain data integrity and security3.2 Identify security issues related to the network, computer hardware, software, and data3.3 Describe computer threats and methods to protect a computer, i.e., viruses, phishing, e-mail, socialengineering, spoofing, identify theft, and spamming3.4 Explain concepts such as denial of service, hacking/cracking, intrusion, detection, and preventionSTANDARD 4.0 ─ EXPLORE LEGAL AND ETHICAL ISSUES RELATED TO INFORMATION TECHNOLOGY4.1 Explore intellectual property rights including software licensing and software duplication4.2 Understand the legal and ethical issues related to the difference between open source and proprietary systems4.3 Identify issues and trends affecting computers and information privacy4.4 Differentiate between ethical and legal uses of information technology, i.e., data pricing, use of public and private networks, social networking, industry-related data, and data piracySTANDARD 6.0 ─ DESCRIBE THE DEVELOPMENT/EVOLUTION OF COMPUTERS AND INFORMATIONTECHNOLOGY6.1 Describe a computer, its components and functions6.2 Explain the historical evolution of the computer and computer networks6.3 Explain how the development of computers has impacted modern life6.4 Discuss future trends in information technologySTANDARD 8.0 ─ CREATE A PROGRAM USING
Java Development Kit (JDK) Integrated Development
Environment (IDE) Access to the Oracle Site on
the Internet
5
SOFTWARE8.1 Use a program editor to enter and modify code8.2 Compile and execute programsSTANDARD 18.0 ─ EMPLOY OBJECT-ORIENTED PROGRAMMING TECHNIQUES18.1 Make a distinction between an object and a class
Career & Technical EducationUnit 3: Basic JAVA and General MathematicsTSW solve basic mathematic problems using critical thinking skills.
Knowledge and Skills Arizona CTE Standards ResourcesKnowledge STANDARD 1.0 ─ APPLY PROBLEM-SOLVING AND Access to JAVA utilities
6
Binary, Hexadecimal and decimal conversions
Random number generator Program modules,
parameters and return values
Skills Convert Binary and
Hexadecimal Representation to decimal
Implement a random number generator
Import java.util.random to generate random numbers
Design program modules to solve problems
CRITICAL THINKING SKILLS TO INFORMATIONTECHNOLOGY1.3 Use problem-solving processes1.4 Explain the purpose, types, and content of documentationSTANDARD 5.0 ─ DEMONSTRATE BASIC COMPUTER MATHEMATICS REQUIRED FOR INFORMATION TECHNOLOGY5.1 Relate the function of general mathematics to computer hardware5.2 Perform binary to decimal, decimal to hexadecimal, hexadecimal to decimal, binary to hexadecimal, and binary to hexadecimal conversions as needed to solve problems with hardware and softwareSTANDARD 11.0 ─ EMPLOY MODULARITY IN WRITING PROGRAMS11.1 Access standard library functions11.2 Demonstrate the use of parameters to pass data into program modules11.3 Demonstrate the use of return values from modulesSTANDARD 18.0 ─ EMPLOY OBJECT-ORIENTED PROGRAMMING TECHNIQUES18.1 Make a distinction between an object and a class18.4 Identify appropriate statements to invoke an object's accessor methods
subset i.e. java.util.random JDK, IDE Pima JTED Wiki
Career & Technical EducationUnit 4: Defining Variables, Arithmetic Expressions
TSW access the API to locate examples of proper syntax for defining variables and arithmetic expressions.7
Knowledge and Skills AZ CTE Standards ResourcesKnowledge
Different types of variables Arithmetic Expressions
including mixed mode Different types of errors i.e.
syntax, run-time, and logic Casting of different data
types for predictable results
Skills Declare and use variables
of different data types Construct mixed mode
expressions that produce accurate results
Differentiate between primitive data types
Correctly use JAVA subset commands such as assignment and casting
Categorize, identify and correct errors in code, including syntax, logic, and run-time
STANDARD 1.0 ─ APPLY PROBLEM-SOLVING AND CRITICAL THINKING SKILLS TO INFORMATIONTECHNOLOGY1.3 Use problem-solving processesSTANDARD 8.0 ─ CREATE A PROGRAM USING SOFTWARE8.1 Use a program editor to enter and modify code8.2 Compile and execute programs8.5 Access program and language documentationSTAMDARD 9.0 TEST AND DEBUG TO VERIFY PROGRAM OPERATION9.1 Identify errors in program modules9.3 Perform integration testing including tests within a program to protect execution from bad input or other run-time errors9.4 Categorize, identify, and correct errors in code, including syntax, logic, and run-timeSTANDARD 14.0 ─ UTILIZE SIMPLE DATA TYPES AND STRINGS14.1 Declare numeric, Boolean, character, and string variables14.2 Choose the appropriate data type for a given situationSTANDARD 19.0 ─ APPLY KNOWLEDGE OF CODE TO PERFORM RUN-TIME ERROR-HAND19.1 Identify (catch) run-time errors and take appropriate action
19.2 Identify the proper syntax for user-created errors (throw errors
Online JAVA Application Programming Interface (API) Manual
JDK and IDE
Career & Technical Education8
Unit 5: Conditionals and LoopingTSW code conditional statements that execute loops in a controller manner.
Knowledge and Skills AZ CTE Standards ResourcesKnowledge
Conditionals i.e. if, if/else statements
Looping constructs i.e. while and for
Flow charts for designing decision structures
Desk-checking code for errors
Skills Create conditional
statements that execute loops in a controlled manner
Evaluate conditional statements
Utilize loops and conditionals to convert flow chart into executable code
Code and test nested loops
STANDARD 7.0 ─ DEMONSTRATE PROGRAM ANALYSIS AND DESIGN7.2 Interpret a problem statement and identify program requirements7.3 Apply pseudo code or a graphical representation to show7.5 Choose appropriate data structuresSTANDARD 9.0 TEST AND DEBUG TO VERIFY PROGRAM OPERATION9.5 Hand trace codeSTANDARD 12.0 ─ UTILIZE CONDITIONAL STRUCTURES IN WRITING PROGRAMS12.1 Compare values using relational operators, i.e., =, >, <, >=, <=, and not equal12.2 Evaluate Boolean expressions12.3 Select an appropriate decision structure for a given situation12.4 Select correct syntax for decision statements, i.e., if/else, if, and switch case12.5 Select the correct nesting syntax for decision structures
JDK and IDE Online JAVA Notes 6.0 (free
source) http://math.hws.edu/javanotes/
9
Career & Technical EducationUnit 6: Introduction to Classes and OOPTSW design and implement user defined classes.
Knowledge and Skills AZ CTE Standards ResourcesKnowledge
User defined classes Internal structure of
classes and objects Scope and lifetime of
variables Structure and behavior of
methods Constructor, accessor,
mutator, instance variable, encapsulation, information hiding
Skills Design and implement a
simple class Differentiate between public
and private access in a class
Define a method and declare parameters in that method
Create constructors, mutators and accessors using parameters
STANDARD 1.0 ─ APPLY PROBLEM-SOLVING AND CRITICAL THINKING SKILLS TO INFORMATIONTECHNOLOGY1.3 Use problem-solving processes STANDARD 8.0 ─ CREATE A PROGRAM USING SOFTWARE8.1 Use a program editor to enter and modify code8.2 Compile and execute programs8.3 Follow established documentation standardsSTANDARD 9.0 TEST AND DEBUG TO VERIFY PROGRAM OPERATION9.1 Identify errors in program modules9.2 Identify boundary cases and generate appropriate test dataSTANDARD 14.0 ─ UTILIZE SIMPLE DATA TYPES AND STRINGS14.1 Declare numeric, Boolean, character, and string variables14.2 Choose the appropriate data type for a given situation14.3 Identify the correct syntax for constants in a program14.4 Identify the correct syntax for initializing and modifying variables14.5 Identify the correct syntax for operations on strings, including length, substring, and concatenationSTANDARD 16.0 ─ IDENTIFY WAYS TO INPUT AND OUTPUT INFORMATION16.1 Identify appropriate methods to input data on a console and/or GUI16.2 Identify correct input/output statements in a program16.3 Choose the correct method of assigning input to variables16.4 Choose the correct method of outputting text with formattingSTANDARD 18.0 ─ EMPLOY OBJECT-ORIENTED PROGRAMMING TECHNIQUES18.5 Change the state of an object by invoking a modifier method18.6 Determine the requirements for constructing new objects by reading the API18.7 Identify the correct syntax for an original user-defined
JDK and IDE Online JAVA Notes 6.0 (free
source) http://math.hws.edu/javanotes/
10
class18.8 Identify the correct syntax for a class that extends an existing class
11
Career & Technical EducationUnit 7: Advanced Control StatementTSW code conditional statements of increased difficulty and depth.
Knowledge and Skills AZ CTE Standards ResourcesKnowledge
Logical Operators Truth Tables Advanced topics with loops
i.e. nested, creating test data, verification and debugging
Boolean statements Switch / Try-Catch
statements
Skills Construct Boolean
statements using logical operators
Construct nested loops Create test data that
adequately tests the code i.e. equivalence, boundaries, and extremes
Hand trace the logic Incorporate switch and try-
catch statements Process an external data
source
STANDARD 3.0 ─ RECOGNIZE SECURITY ISSUES RELATED TO INFORMATION TECHNOLOGY3.1 Explain procedures to maintain data integrity and security3.4 Explain concepts such as denial of service, hacking/cracking, intrusion, detection, and preventionSTANDARD 9.0 TEST AND DEBUG TO VERIFY PROGRAM OPERATION9.5 Hand trace codeSTANDARD 12.0 ─ UTILIZE CONDITIONAL STRUCTURES IN WRITING PROGRAMS12.4 Select correct syntax for decision statements, i.e., if/else, if, and switch caseSTANDARD 13.0 ─ UTILIZE REPETITIVE STRUCTURES IN WRITING PROGRAMS13.1 Identify various types of repetition structures13.2 Identify the role of a loop control variable13.3 Select the correct syntax for nested loops13.4 Compute the values of variables involved with nested loopsSTANDARD 14.0 ─ UTILIZE SIMPLE DATA TYPES AND STRINGS14.1 Declare numeric, Boolean, character, and string variablesSTANDARD 17.0 ─ USE EXTERNAL DATA SOURCES WITHIN A PROGRAM17.1 Input data from a sequential file and databaseSTANDARD 19.0 ─ APPLY KNOWLEDGE OF CODE TO PERFORM RUN-TIME ERROR-HAND19.1 Identify (catch) run-time errors and take appropriate action
JDK and IDE Online JAVA Notes 6.0 (free source) http://math.hws.edu/javanotes/
12
Career & Technical EducationUnit 8: ArraysTSW implement arrays in a program.
Knowledge and Skills AZ CTE Standards ResourcesKnowledge
Basic and multi-dimensional arrays
Parallel arrays Arrays and methods
Skills Declare and initialize arrays Determine when parallel
arrays are best used Access elements within an
array Manipulate data stored in an
array Differentiate how to control
arrays of primitive data types and reference variables
STANDARD 15.0 ─ IMPLEMENT ARRAYS IN PROGRAMS15.3 Access elements within an array15.4 Manipulate data stored in an array15.5 Search and sort data in an array
JDK and IDE Online JAVA Notes 6.0 (free source) http://math.hws.edu/javanotes/
13
Career & Technical EducationUnit 9: Advanced Operations: Strings, Arrays, & ArrayListsTSW write JAVA code using more difficult programming constructs.
Knowledge and Skills AZ CTE Standards ResourcesKnowledge
Strings and their methods Linear and binary search Selection, insertion and bubble
sort Insertions and removals in arrays
and arraylists
Skills Use the Arraylist class Solve problems by using
appropriate syntax for operations on strings, including length, substring, and concatenation
Determine which search is most efficient in a given situation
Evaluate results to determine the most efficient sorting algorithm
STANDARD 1.0 ─ APPLY PROBLEM-SOLVING AND CRITICAL THINKING SKILLS TO INFORMATIONTECHNOLOGYschedule information technology tasks1.3 Use problem-solving processesSTANDARD 5.0 ─ DEMONSTRATE BASIC COMPUTER MATHEMATICS REQUIRED FOR INFORMATION TECHNOLOGY5.1 Relate the function of general mathematics to computer hardwareSTANDARD 8.0 ─ CREATE A PROGRAM USING SOFTWARE8.1 Use a program editor to enter and modify code8.2 Compile and execute programsSTANDARD 14.0 ─ UTILIZE SIMPLE DATA TYPES AND STRINGS14.5 Identify the correct syntax for operations on strings, including length, substring, and concatenationSTANDARD 15.0 ─ IMPLEMENT ARRAYS IN PROGRAMS15.1 Identify the correct syntax for declaring and initializing arrays of simple data types15.2 Identify the correct syntax for declaring and initializing user-defined data types15.3 Access elements within an array15.4 Manipulate data stored in an array15.5 Search and sort data in an array15.6 Identify correct syntax for defining and using two-dimensional arrays
JDK and IDE API Online JAVA Notes 6.0 (free source) http://math.hws.edu/javanotes/
14
Career & Technical EducationUnit 10: Recursion, Complexity, Searching and SortingTSW increase the efficiency of the code by using advanced data structures and methods.
Knowledge and Skills AZ CTE Standards ResourcesKnowledge
Recursion Complexity analysis Quicksort Merge sort Binary search
Skills Create a recursive method
to solve a problem Differentiate between
recursive and iterative solutions to a problem
Code the merge sort to solve a problem
Compare the quicksort and merge sort
STANDARD 10.0 ─ WRITE CODE TO PERFORM ARITHMETIC CALCULATIONS10.1 Identify and correctly use arithmetic operations applying the order of operations with respect to programming10.2 Interpret and construct mathematical formulas STANDARD 15.0 ─ IMPLEMENT ARRAYS IN PROGRAMS15.3 Access elements within an array15.4 Manipulate data stored in an array15.5 Search and sort data in an array
JDK and IDE API Online JAVA Notes 6.0 (free source) http://math.hws.edu/javanotes/
15
Career & Technical EducationUnit 11: Inheritance, Interfaces, Polymorphism and CollectionsTSW use inheritance to extend a class and implement an interface for a new class.
Knowledge and Skills AZ CTE Standards ResourcesKnowledge
Inheritance Abstract classes Interfaces Polymorphism Collections
Skills Use inheritance to extend a class Create and extend an abstract
class Understand polymorphism and
override methods in a super class when appropriate
Implement an interface when creating a new class
STANDARD 8.0 ─ CREATE A PROGRAM USING SOFTWARE8.1 Use a program editor to enter and modify code8.2 Compile and execute programs8.3 Follow established documentation standards8.5 Access program and language documentationSTANDARD 18.0 ─ EMPLOY OBJECT-ORIENTED PROGRAMMING TECHNIQUES18.1 Make a distinction between an object and a class18.2 Distinguish between is-a, has-a, and class relationships18.3 Exemplify objects from existing classes18.4 Identify appropriate statements to invoke an object's accessor methods18.5 Change the state of an object by invoking a modifier method18.6 Determine the requirements for constructing new objects by reading the API18.7 Identify the correct syntax for an original user-defined class18.8 Identify the correct syntax for a class that extends an existing class
STANDARD 19.0 ─ APPLY KNOWLEDGE OF CODE TO PERFORM RUN-TIME ERROR-HAND19.1 Identify (catch) run-time errors and take appropriate action19.2 Identify the proper syntax for user-created errors (throw errors)
JDK and IDE API Online JAVA Notes 6.0 (free source) http://math.hws.edu/javanotes/
16
Career & Technical EducationUnit 12: Case StudyTSW use all of the knowledge obtained to design and create according to case study requirements.
Knowledge and Skills AZ CTE Standards ResourcesKnowledge
Advanced JAVA concepts and programming solutions
Skills Run the case study and
analyze output Observe and experiment
with the new case study Research the existing
classes in the case study API
Analyze the case study subset
Utilize appropriate testing methods
STANDARD 1.0 ─ APPLY PROBLEM-SOLVING AND CRITICAL THINKING SKILLS TO INFORMATIONTECHNOLOGY1.1 Describe methods of establishing priorities1.2 Prepare a plan of work and schedule information technology tasks1.3 Use problem-solving processes1.4 Explain the purpose, types, and content of documentationSTANDARD 7.0 ─ DEMONSTRATE PROGRAM ANALYSIS AND DESIGN7.1 List the steps in a program development cycle7.2 Interpret a problem statement and identify program requirements7.3 Apply pseudo code or a graphical representation to show the structure of a program or module7.4 Determine input and output7.5 Choose appropriate data structures7.6 Apply stepwise refinement to improve design7.7 Develop a testing plan7.8 Choose appropriate documentation for a module7.9 Use essential object analysis and design concepts
17
COMMON CORE ENGLISH LANGUAGE ARTS CONNECTIONS
18
COMMON CORE ENGLISH LANGUAGE ARTS CONNECTIONS
19