ITEC2120:Spring2008:Section 1:Goals and Objectives

From GGCWiki
Jump to: navigation, search

Contents

College Goals

ITEC2120:Introduction to Programming contributes to the following college-wide goals and lesson objectives.

Integrated Educational Experience Goals

  • Demonstrate effective use of information technology.
  • Demonstrate an ability to collaborate in diverse and global contexts.
  • Demonstrate creativity and critical thinking in inter- and multi-disciplinary contexts.
  • Clearly communicate ideas in written and oral form.

General Educational Lesson Objectives

  • Understand and effectively use information technology.
  • Demonstrate critical and creative thinking.
  • Clearly communicate ideas in written and oral form.

Course Goals

G1. Understand the evolution of computer languages (from machine code to object-oriented) and advantages of the fourth generation programming languages.

O1. Describe what machine code is and where it is used (IIIH1)\checkmark
O2. Describe what assembly code is and where it is used\checkmark
O3. Describe the purpose of and name several high level languages\checkmark
O4. Understand and manipulate integer representations including 2’s complement (IIIH1)\checkmark
O5. Understand how floating point numbers are stored (IIIH2)\checkmark
O6. Describe the major primitive data type representations (IVA)\checkmark

G2. Understand the concept of the coding process and code manipulation including: compilation, interpretation, execution, documentation and pseudo code.

O1. Describe the process of compiling Java into byte code (VIB1)\checkmark
O2. Explain the purpose and functions of the Java virtual machine (VIB2)\checkmark
O3. Follow standard naming and coding conventions\checkmark
O4. Use Javadoc style program documentation\checkmark
O5. Understand the differences between applications and applets
O6. Use and understand appropriate programming terminology\checkmark

G3. Analyze real world problems and formalize algorithmic and programming solutions.

O1. Understand problem descriptions (IA1)\checkmark
O2. Choose correct data structures (IB3)\checkmark
O3. Choose correct algorithms (IB3)\checkmark
O4. Decompose problems into sub-problems (IB4, IIA1b, IIA1d)\checkmark
O5. Identify objects from a problem statement (IIA1a)\checkmark
O6. Be able to perform the following on one-dimensional arrays
i. Traverse (VA1)\checkmark
ii. Insert (VA2)\checkmark
iii. Delete (VA3)\checkmark
iv. Sequential search (VB1)\checkmark

G4. Understand the general ideas of classes and objects as elements of a programming environment.

O1. Apply data encapsulation and abstraction (IA2, IIA1c)\checkmark
O2. Use composition (has-a relationship) (IA3, IA4)\checkmark
O3. Use inheritance (is-a relationship) (IA3, IA4, IB5, IIID)\checkmark
O4. Make and identify reusable code (IA5)\checkmark
O5. Design and implement a single class (IB1, IVB)\checkmark
O6. Design and implement multiple interacting classes (IB1)\checkmark
O7. Understand interfaces (IB2)\checkmark
O8. Understand the difference between objects and primitives (IIB1)\checkmark
O9. Understand the difference between declaring and initializing variables (IIB2)\checkmark
O10. Be able to declare, implement, and/or initialize (IIB2)
i. Constant\checkmark
ii. Variable\checkmark
iii. Class\checkmark
iv. Interface\checkmark
v. Method\checkmark
vi. Parameter\checkmark
O11. Use System.out.print and System.out.println (IIB3)\checkmark
O12. Use one-dimensional arrays (IVC) \checkmark

G5. Learn general ideas about conditional expressions, functions, and control structures.

O1. Appropriately use control structures (IIB4)
i. Methods\checkmark
ii. Sequential\checkmark
iii. Conditional\checkmark
iv. Iteration\checkmark
O2. Appropriately use methods
i. Return type\checkmark
ii. Name\checkmark
iii. Parameter list\checkmark

G6. Prepare, execute and debug program code within an interactive programming environment.

O1. Be familiar with basic Java class libraries (IIC)
i. java.lang.Object\checkmark
ii. java.lang.Comparable\checkmark
iii. java.lang.Integer\checkmark
iv. java.lang.Double\checkmark
v. java.lang.String\checkmark
vi. java.lang.Math\checkmark
vii. java.util.ArrayList\checkmark
O2. Prepare unit tests (IIIA1)\checkmark
O3. Identify boundary tests (IIIA2)\checkmark
O4. Perform integration testing (IIIA3)\checkmark
O5. Identify errors as runtime, compile-time or logic (IIIB1)\checkmark
O6. Debug using System.out and tracing (IIIB2, IIIB3, IIIG2)\checkmark
O7. Modify and understand existing code (IIIC)\checkmark
O8. Be able to throw and catch exceptions (IIIE)\checkmark
O9. Understand the concepts of assertions, pre- and post-conditions (IIIF)\checkmark
O10. Informally compare running times (IIIG1)\checkmark


Note: These objectives are based in a large part on the College Board's Advanced Placement Computer Science A Exam. The letters in parenthesis after the objectives are the topics in the AP topic outline. The AP Computer Science A topics not covered in this course are: VIA, VIB3, VIC, VID, VB2, VC. This course is not sponsored by or endorsed by the College Board.

Personal tools