Software Project, Fall 2010
0368-2161

 

Instructor: Roded Sharan

Office hours: by appointment.

Teaching Assistant: Ben Riva

 


Syllabus and Handouts

Course web site at virtual TAU

The course consists of two parts. The first part focuses on learning the C programming language; the second part will be devoted for describing the project and advanced topics in C and UNIX.

There will be 2-3 exercises and a project. Submission of all is mandatory.

The grade will be determined as follows: exercises (15-20%), project (50-55%), and final exam (30%).

The main textbook used in the course: ‘A Book on C’, 4th Edition by Kelley and Pohl. Example programs from the book

Following is a tentative outline of the course, which will be updated according to what is actually studied in class:

 

Week

Date

Lecture & handouts

Read more

1

18 Oct

The working environment & Ex. 1 

Basic UNIX commands; Programming Environment (System)

2

25 Oct

Introduction to C (Chapter 1)

3

1 Nov

Lexical elements and fundamental data types (Chapters 2-3); Flow of control (Chapter 4)

Floating point representation; Binary representation (bases)

4

8 Nov

Functions (Chapter 5); Runtime environment

 

5

15 Nov

Arrays and pointers (Chapter 6)

6

22 Nov

More on pointers

Dynamic matrix allocation

(Chapter 12.6)

7

29 Nov

Interim rehearsal & Ex. 2

8

6 Dec

Structures and Linked lists (Chapters 9-10)

 

9

13 Dec

Project technical description (I)                 

10

20 Dec

Project technical description (II); Make (Chapter 11)

GNU Make manual

11

27 Dec

Bitwise operators (Chapter 7); Preprocessor (Chapter 8)

The preprocessor

12

3 Jan

Input/output and files (Chapter 11, till 11.9)

 

13

10 Jan

More on linked lists and files

14

17 Jan

Rehearsal

 



Bibliography and Notes

Bibliography