Programming Languages. Stages of Problem solving Using Computers. Algorithm – Definition, Properties. C features. Simple Data Types. Simple I/O

Programming Style. Digital Representations. Variables and Expressions

C Statements. C Preprocessing

Functions (Structure, Invocation, Parameter passing, Functions as parameters, Variable scope). Functions for character processing

Modular Programming. Debugging

Pointers. Memory Management.

Pointers and Arrays. Function Pointers

C Character Strings. C library

Structures, unions, enumerations. User-defined Types

File Handling. High Level I/O.

Recursion. Mechanism and Examples

Working with time. I/O redirection. Variable length argument lists. Command line arguments. Self referential structures

Sample Programs Explained. (Combinatorial generation. Simple Sorting Algorithms)

Review

Concepts and paradigms in OOP. On to Java

Control structures in Java.

Classes and Objects. Arrays

Packages. Inheritance and polymorphism.

Java Interfaces. OO Application Development

UML Object and Class Diagrams. Assertions.

Testing. Debugging. Java Errors and Exceptions

Java Collections. Generic Programming.

Introduction to Java I/O

Event handling in Java. Introduction to Java Graphics

Graphical User Interfaces (I)

Introduction to Threads

Graphical User Interfaces (II)

Review