Quantcast
Channel: Dufferin-Peel Catholic District School Board - St. Aloysius Gonzaga
Viewing all articles
Browse latest Browse all 411

Computer Programming

$
0
0

Waterloo CCC

Feb 17, 2016

Course Descriptions

About AP®AP

Computer Science A exam is MAY 3, 2016

Hour of code

Star Wars Building a Galaxy with Code

2015

 

 

Gonzaga wins Silver and Gold in

Dufferin Peel Game Making Competition

 

 

Gonzaga wins Silver and Gold in 2015 Dufferin Peel Game Making competition non GameMaker category

 

 

On December 17, 2015, Gonzaga students participated in the Dufferin Peel Game Making competition's non GameMaker category, i.e., they did not use the program Game Maker to create their games.

 

Grade 11 and 12 ICS3U and 4U students created GUI event driven games in Processing and Java.  The theme of the competition was Nightmare, and Derry, Ryan and Hadi entered with Apocalypse Spruce Valley City.  Emilio won Silver with MIssion 2143.zip and Jomar won Bronze with Noise.  All cheers to each and every participant and we are all very proud of you!  To play their games, you have to unzip the linked files and click on the executables.

 

 

 

Computer Science Club

  • The club offers students of all grades (9 - 12) to have fun with creating their own programs and to get ready for different computing contest and exams (e.g. Waterloo Canadian Computing Contest, AP Computer Science A exam, etc.)
  • Each grade will do activities that are of interest to that grade level. It is also a great opportunity to get help and make friends with other students that are not in your own grade level. Meeting is on every Monday after school (room 245) unless it conflicts with a scheduled staff meeting.

Waterloo Computing Competition is February 17, 2016. Check out this site for past competitions and solutions.

Cool video on Girls in Computing

 

 

Computer programming

Course Descriptions 

 

Introduction to Computer Studies, Grade 10, Open (ICS2O)

This course introduces students to computer programming. Students will plan and write simple computer programs by applying fundamental programming concepts, and learn to create clear and maintainable internal documentation using Alice. They will also learn to manage a computer by studying hardware configurations, software selection, operating system functions, networking, and safe computing practices. Students will also investigate the social impact of computer technologies, and develop an understanding of environmental and ethical issues related to the use of computers.

Prerequisite: None

 

 

Introduction to Computer Science, Grade 11, University Preparation (ICS3U)

This course introduces students to computer science. Students will design software independently and as part of a team, using industry-standard programming tools and applying the software development life-cycle model. They will also write and use subprograms within computer programs using Java. Students will develop creative solutions for various types of problems as their understanding of the computing environment grows. They will also explore environmental and ergonomic issues, emerging research in computer science, and global career trends in computer-related fields.

Prerequisite: None

 

Introduction to Computer Science, Grade 11, University Preparation (ICS3UD)

This course introduces students to computer science very much like the ICS3U course described above.  The focus is more on developing web apps and graphics with HTML5, Javascript, processing.js and AppInventor. This course is opened for girls only.

Prerequisite: None

 

Computer Science, Grade 12, University Preparation (ICS4U)

This course enables students to further develop knowledge and skills in computer science. Students will use modular design principles to create complex and fully documented programs, according to industry standards. Student teams will manage a large software development project, from planning through to project review. Students will also analyse algorithms for effectiveness. They will investigate ethical issues in computing and further explore environmental issues, emerging technologies, areas of research in computer science, and careers in the field.

Prerequisite: Introduction to Computer Science, Grade 11, University Preparation

 

 

AP® The Grade 12 (ICS4UP) Advanced Placement Exam  Preparatory Program

This course allows students to cover all the Ontario Ministry requirements for the grade 12 Computer Information Science course as well as the requirements for the AP® Advance Placement Computer Science A exam.  Students taking this course and writing the Advance Placement Computer Science A exam may have the opportunity to be eligible for advance standing in most universities across Canada. There are no additional charges for taking the courses, apart from the registration costs for the exams, which will be approximately $120 per course.  All exams are written in May.  While some students take advantage of the first year course exemption, many students opt to study that first year course at university again, and attain an even higher mark once there. The main advantage of taking an AP course remains better preparation for university. It has been shown that students master in depth content at the university level more easily after completing AP courses at the secondary level. Students also acquire sophisticated academic skills and increased self-confidence in preparation for university.  

Prerequisite:                Introduction to Computer Science, Grade 11, University Preparation

Strongly Recommend:  Introduction to Computer Studies, Grade 10 Open, (ICS2O)

Strongly Recommend:  Functions and Relations, Grade 11 University Preparation (MCR3U1)

*Note: Materials Cost - TBA

 

About AP

AP can change your life. Through college-level AP courses, you enter a universe of knowledge that might otherwise remain unexplored in high school; through AP Exams, you have the opportunity to earn credit or advanced standing at most of the nation's colleges and universities.

Why Participate?

With 37 courses and exams across 22 subject areas, AP offers something for everyone. The only requirements are a strong curiosity about the subject you plan to study and the willingness to work hard. Here are just a few reasons to sign up:

Gain the Edge in College Preparation

  •  Get a head start on college-level work.

  •  Improve your writing skills and sharpen your problem-solving techniques.

  •  Develop the study habits necessary for tackling rigorous course work.

Stand Out in the College Admissions Process

  •  Demonstrate your maturity and readiness for college.

  •  Show your willingness to push yourself to the limit.

  •  Emphasize your commitment to academic excellence.

Broaden Your Intellectual Horizons

  • Explore the world from a variety of perspectives, most importantly your own.

  • Study subjects in greater depth and detail.

  • Assume the responsibility of reasoning, analyzing, and understanding for yourself.

How Do I Enroll?

Once you've decided to take the AP challenge it's easy to enroll.Talk to the teacher and discuss the course's workload and any preparation you might need. The course code has a P at the end of the Ontario Ministry's code e.g. ICS4UP 

 

What is covered in the Grade 12 4UP  Computer Science Course ?

 

This course covers all Ontario Ministry mandated curriculum for grade 12 (ICS4U) course and what is covered in the AP Computer Science A exam. (Download Complete Computer Science Course Description )

 

Following is an outline of the major topics covered by the AP Computer Science

Exams. This outline is intended to define the scope of the course but not necessarily

the sequence. The topics in the right-hand column will not be tested on the Computer

Science A Exam.

 

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, can be adapted to changing circumstances,

and has the potential to be reused in whole or in part. The design process needs to be

based on a thorough understanding of the problem to be solved.

Computer Science A

 

A. Program design

  1. Read and understand a problem description, purpose, and goals.
  2. Apply data abstraction and encapsulation.
  3. Read and understand class specifications and relationships among the classes (“is-a,” “has-a” relationships).
  4. Understand and implement a given class hierarchy.
  5. Identify reusable components from existing code using classes and class libraries.

B. Class design

  1. Design and implement a class.
  2. Design an interface.
  3. Choose appropriate data representation and algorithms.
  4. Apply functional decomposition.
  5. Extend a given class using inheritance.

 

II. Program Implementation

The overall goals of program implementation parallel those of program design. Classes

that fill common needs should be built so that they can be reused easily in other programs. Object-oriented design is an important part of program implementation.  As well, a structured lab component comprising of a minimum of 20 hours of hands-on lab experiences will be integrated throughout the course.

 

A. Implementation techniques

1. Methodology

a. Object-oriented development

b. Top-down development

c. Encapsulation and information hiding

d. Procedural abstraction

B. Programming constructs

1. Primitive types vs. objects

2. Declaration

a. Constant declarations

b. Variable declarations

c. Class declarations

d. Interface declarations

e. Method declarations

f. Parameter declarations

3. Console output (System.out.print/println)

4. Control

a. Methods

b. Sequential

c. Conditional

d. Iteration

e. Recursion

C. Java library classes included in the A-level 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.

 

A. Testing

  1. Test classes and libraries in isolation.
  2. Identify boundary cases and generate appropriate test data.
  3. Perform integration testing.

B. Debugging

  1. Categorize errors: compile-time, run-time, logic.
  2. Identify and correct errors.
  3. Employ techniques such as using a debugger, adding extra output statements, or hand-tracing code.

C. Understand and modify existing code

D. Extend existing code using inheritance

E. Understand error handling

  1. Understand runtime exceptions.

F. Reason about programs

  1. Pre- and post-conditions
  2. Assertions

G. Analysis of algorithms

  1. Informal comparisons of running times
  2. Exact calculation of statement execution counts

H. Numerical representations and limits

  1. Representations of numbers in different bases
  2. Limitations of finite representations (e.g., integer bounds, imprecision of floating-point representations, and round-off error)

 

 

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.

 

A. Simple data types (int, boolean, double)

B. Classes

C. One-dimensional arrays

D. Two-dimensional arrays

 

 

V. Standard 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.

 

A. Operations on A-level data structures previously listed

  1. Traversals
  2. Insertions
  3. Deletions

B. Searching

  1. Sequential
  2. Binary

C. Sorting

  1. Selection
  2. Bubble
  3. Insertion
  4. Mergesort

 

 

VI. Computing in Context

A working knowledge of the major hardware and software components of computer

systems is necessary for the study of computer science, as is the awareness of the

ethical and social implications of computing systems. These topics need not be

covered in detail but should be considered throughout the course.

 

A. Major hardware components

  1. Primary and secondary memory
  2. Processors
  3. Peripherals

B. System software

  1. Language translators/compilers
  2. Virtual machines
  3. Operating systems

C. Types of systems

  1. Single-user systems
  2. Networks

D. Responsible use of computer systems

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

 

 

 


Viewing all articles
Browse latest Browse all 411

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>