
48 Classes - 4 Hours, 2 Days per Week for 6 Months
Course Description
Hands-on programming course designed for C and Java languages. No previous programming experience necessary. Covers the ANSI-C standard, the fundamentals of Java language structure and Object Oriented Programming. Also covers more advanced topics such as Threads and the Java AWT.
| Course Schedule |
|
| Week One |
| 1. |
Introduction |
|
- |
writing and compiling the first C program (“Hello world!”) |
|
- |
history and evolution of the C language; its importance |
| 2. |
Overview of language features |
|
- |
variables and arithmetic expressions |
|
- |
the for statement |
|
- |
symbolic constants |
| |
|
|
| Week Two |
| 3. |
Overview of language features |
|
- |
character input/output |
|
- |
file copying |
|
- |
character/word/line counting |
| 4. |
Overview of language features |
|
- |
arrays |
|
- |
functions |
|
- |
character arrays |
| |
|
|
| Week Three |
| 5. |
Overview of language features |
|
- |
multiple file programs |
|
- |
header files |
|
- |
external variables and scope |
| 6. |
Overview of language features |
|
- |
programming (writing and compiling other simple programs) |
| |
|
|
| Week Four |
| 7. |
Constant and variable types |
|
- |
data types |
|
- |
constants |
|
- |
variable scope and variable types (global, local, static) |
|
- |
variable declaration and initialization |
|
- |
type conversions |
| 8. |
Expressions and operators |
|
- |
assignment |
|
- |
increment and decrement operators |
|
- |
arithmetic and logical operators |
|
- |
bitwise operators |
|
- |
conditional expressions |
| |
|
|
| Week Five |
| 9. |
Control flow statements |
|
- |
if-else |
|
- |
switch |
|
- |
loops (while, do-while, for) |
|
- |
break, continue statements |
|
- |
goto |
| 10. |
Programming |
|
- |
writing programs using the already presented language elements |
| |
|
|
| Week Six |
| 11. |
Functions in C |
|
- |
scope of function variables |
|
- |
block structure |
|
- |
passing arguments |
|
- |
recursive functions |
| 12. |
Programming |
| |
|
|
| Week Seven |
| 13. |
Pointers and Arrays |
|
- |
pointers as addresses |
|
- |
pointers and function arguments |
|
- |
pointers and arrays |
|
- |
pointer arrays, pointers to pointers |
|
- |
command line argument |
|
- |
pointers to functions |
| 14. |
Programming |
|
- |
writing programs using pointers and arrays |
| |
|
|
| Week Eight |
| 15. |
Programming |
|
- |
writing programs using pointers and arrays (continue) |
| 16. |
Structures and Unions |
|
- |
basics of structures (defining a structure, accessing members) |
|
- |
structures and functions |
|
- |
arrays of structures |
|
- |
pointers and structures |
|
- |
self-referential structures |
|
- |
dynamic memory allocation |
|
- |
unions |
| |
|
|
| Week Nine |
| 17. |
Programming |
|
- |
writing programs using structures and functions |
| 18. |
Programming |
|
- |
writing programs using structures and functions (continue) |
| |
|
|
| Week Ten |
| 19. |
Input and Output |
|
- |
character input/output (getchar/putchar) |
|
- |
formatted input/output (printf/scanf) |
|
- |
line input/output (gets/puts) |
|
- |
variable length argument lists |
| 20. |
File Handling |
|
- |
file pointers (fopen/fclose) |
|
- |
input/output using file pointers |
|
- |
special characters (EOF,NULL) |
|
- |
error treatments |
| |
|
|
| Week Eleven |
| 21. |
Programs made up of Several Files |
|
- |
the C preprocessor |
|
- |
header files |
|
- |
design of interfaces |
|
- |
modularization mechanisms in C++ |
| 22. |
Standard library |
|
- |
presentation of the different library modules |
|
- |
input and output |
|
- |
string functions |
|
- |
character class tests |
|
- |
mathematical functions |
|
- |
date and time functions |
| |
|
|
| Week Twelve |
| 23. |
Programming |
|
- |
writing of C programs |
| 24. |
Programming |
|
- |
writing of C programs (continue) |
| |
|
|
| Week Thirteen |
| 25. |
Introduction to Java |
|
- |
compiling and running the first Java program |
|
- |
the Java platform architecture |
| 26. |
Introduction to Java |
|
- |
Java and the World Wide Web |
|
- |
The first Java Applet |
| |
|
|
| Week Fourteen |
| 27. |
Java Language Basics |
|
- |
variables |
|
- |
data types |
|
- |
scope |
|
- |
variable initialization |
|
- |
final variables |
|
- |
operators |
|
- |
arithmetic |
|
- |
relational |
|
- |
shift and logical |
|
- |
assignment |
|
- |
others |
|
- |
expressions, statements and blocks |
| 28. |
Java Language Basics |
|
- |
variables |
|
- |
data types |
|
- |
scope |
|
- |
variable initialization |
|
- |
final variables |
|
- |
operators |
|
- |
arithmetic |
|
- |
relational |
|
- |
shift and logical |
|
- |
assignment |
|
- |
others |
|
- |
expressions, statements and blocks |
| |
|
|
| Week Fifteen |
| 29. |
Control flow statements |
|
- |
while |
|
- |
do-while |
|
- |
if-else |
|
- |
switch |
|
- |
branching (break, continue, return) |
|
- |
exception handling |
| 30. |
Programming |
|
- |
writing Java programs with the already presented language features |
| |
|
|
| Week Sixteen |
| 31. |
OO Concepts |
|
- |
what is an Object? |
|
- |
what is a Class? |
|
- |
inheritance |
|
- |
interface |
| 32. |
OO Concepts |
|
- |
what is an object? |
|
- |
what is a class? |
|
- |
inheritance |
|
- |
interface (continue) |
| |
|
|
| Week Seventeen |
| 33. |
Simple Data Objects |
|
- |
characters and strings |
|
- |
numbers |
|
- |
arrays |
|
- |
life cycle of an object |
| 34. |
Classes and Objects |
|
- |
constructors |
|
- |
member variables |
|
- |
methods |
|
- |
access to methods |
|
- |
classes and C-style structures |
| |
|
|
| Week Eighteen |
| 35. |
Classes and Objects |
|
- |
constructors |
|
- |
member variables |
|
- |
methods |
|
- |
access to methods |
|
- |
classes and C-style structures (continue) |
| 36. |
Inheritance |
|
- |
understanding inheritance |
|
- |
overriding methods |
|
- |
final classes and methods |
|
- |
abstract classes and methods |
|
- |
nested classes |
|
- |
inner classes |
| |
|
|
| Week Nineteen |
| 37. |
Inheritance |
|
- |
understanding inheritance |
|
- |
overriding methods |
|
- |
final classes and methods |
|
- |
abstract classes and methods |
|
- |
nested classes |
|
- |
inner classes (continue) |
| 38. |
Interfaces and packages |
|
- |
creating and using interfaces |
|
- |
creating and using packages |
| |
|
|
| Week Twenty |
| 39. |
Interfaces and packages |
|
- |
creating and using interfaces |
|
- |
creating and using packages (continue) |
| 40. |
Programming |
|
- |
writing object oriented programs in Java |
| |
|
|
| Week Twenty One |
| 41. |
Programming |
|
- |
writing object oriented programs in Java (continue) |
| 42. |
Threads |
|
- |
creating threads |
|
- |
synchronization |
|
- |
wait and notify |
|
- |
deadlocks |
|
- |
suspending threads |
|
- |
interrupting threads |
|
- |
the Runnable interface |
| |
|
|
| Week Twenty Two |
| 43. |
Threads |
|
- |
creating threads |
|
- |
synchronization |
|
- |
wait & notify |
|
- |
deadlocks |
|
- |
suspending threads |
|
- |
interrupting threads |
|
- |
the Runnable interface (continue) |
| 44. |
I/O Package |
|
- |
input stream and output stream classes |
|
- |
buffered streams |
|
- |
data streams |
|
- |
the IOException class |
| |
|
|
| Week Twenty Three |
| 45. |
I/O Package |
|
- |
input stream and output stream classes |
|
- |
buffered streams |
|
- |
data streams |
|
- |
the IOException class (continue) |
| 46. |
Exceptions |
|
- |
comparison to the C-style exception handling |
|
- |
use of class hierarchies for exception handling |
| |
|
|
| Week Twenty Four |
| 47. |
Programming |
|
- |
introduction to the Java AWT Classes |
|
- |
introduction to networking in Java |
|
- |
writing of Java programs |
| 48. |
Programming |
|
- |
introduction to the Java AWT Classes |
|
- |
introduction to networking in Java |
|
- |
writing of Java programs (continue) |
| |
|
|

|