Proposed learning goals for the introductory sequence



Proposed Learning Goals for CSC 211

[Last modified: March 14, 2005]

Object-oriented Programming

• Given either an English description or a class diagram, write a Java class that involves: several instance variables of primitive type, several constructors, accessors, mutators, some methods that involve computation (not just output or return), and a toString method

• Given a simple class definition and a problem description, create a program that creates and uses instances of the class to solve the problem.

• Given two or more simple class definitions and a problem description, create a program that creates and uses instances of the classes to solve the problem.

• Given a class definition involving instance variables and static variables, correctly trace the execution of a program that uses both.

• Given a class definition involving instance methods and static methods, correctly trace the execution of a program that uses both.

• Given a class definition, be able to distinguish between public and private visibility.

Input/Output

Be able to write a program that

• prints data to the standard output.

• is able to use the JOptionPane class to present messages to the user and the gather input from the user.

• is able to use the Scanner class to gather input from the user

• is able to use the Formatter class to produce structured output

Java API

• The student should be able to install and run Java SDK.

• Given the name of an unfamiliar method for a familiar Java class, the student should be able to access the Java API document for that method online and learn how to use the new method.

• Given the name of an unfamiliar Java class, the student should be able to access the Java API documentation for that class online.

• Given a string, the student should be able to use the correct methods to provide the length of the string, a substring of the string, append another string to the string, and compare the string against another string.

• Be able to use Math class, for example with pow, sqrt, and random.

Design/Develop/Test

• Given a defective program, identify variables whose values might be useful in tracing the program and identify locations where those variables should be evaluated.

Algorithms

• Given a psuedo-code description of an algorithm, identify appropriate looping and decision constructs to implement the algorithm, and provide a rationale for doing so. They should also be able to formulate appropriate Java expressions as control expressions for the looping and decision constructs.

• Given the code for a switch construct, be able to translate into an if…then…else construct.

• Students should be able to write in Java all the algorithms below:

o Input two numbers and output the sum and/or the difference of the two.

o Input two numbers and output the maximum and/or the minimum of the two.

o Input M and N, and generate a number series from M to N.

o Determine the sum of the first N odd integers = computing N square.

o Input multiple numbers and output their maximum/minimum (no arrays).

o Input multiple numbers and output their sum/average (no arrays).

o Input multiple numbers and their weights and compute a weighted average (no arrays).

o Input a sequence of values into an array (a negative value ends input).

o Find and output the sum/average of values in an array.

o Find and output the maximum/minimum of values in an array.

o Sequentially search for a value in an array.

o Output those values in an array that satisfy a certain condition (such as being above average).

Basic Constructs

• Students should be able to trace and write java code that utilizes primitive data types, assignment statements, and casting

• Students should be able to trace and write java code that utilizes arithmetic and logic operators and their precedence rules.

• Students should be able trace and write java code that utilizes control structures (if, if else, switch, break)

• Students should be able to trace and write java code that utilizes repetition structures (while, do-while, for)

• Students should be able to trace and write java code that utilizes arrays. In particular students should be able to:

o instantiate an array of primitive data types

o assign and retrieve elements of an array of primitive data types

o print to standard output or display with a JOptionPane the content of an array of primitive data type

• Students should be able to articulate orally and in writing the meaning of all modifiers involved in the header of a method

• Students should be able to trace and write java code that utilizes parameter passing, both primitive data types and Object references.

• Students should be able to articulate orally and in writing the difference between class and method scope of variables.

Optional topics:

Basic constructs

• Students should be able to instantiate an array of Objects and assign and retrieve elements in an array of objects.

GUI

• Students should be able to describe a GUI using a frame including a text box, a label, a panel and a button. Border and flow layout is to be used. The students should be able to understand how an ActionListener works with the appropriate action, as, for example, clicking a button.

Machine

• Students should be able to perform conversions between decimal and binary representations of signed integers.

• Students should be able to perform conversions between symbolic and ASCII representations of characters and strings.

................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download