Software Project, Fall 2011-12
0368-2161

 

Instructor: Roded Sharan

Office hours: by appointment.

Teaching Assistant: Dana Silverbush

 


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 exercises and a project. Submission of all is mandatory.

The grade will be determined as follows: exercises (15%), project (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

31 Oct

Introduction to C (Chapter 1)

2

7 Nov

The working environment & Ex. 1 

Basic UNIX commands; Programming Environment (System); Visual studio; The Eclipse Environment

3

14 Nov

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

Floating point representation; Binary representation (bases)

4

21 Nov

Functions (Chapter 5); Runtime environment

 

5

28 Nov

Arrays and pointers (Chapter 6)

6

5 Dec

More on pointers

Dynamic matrix allocation

(Chapter 12.6)

7

12 Dec

Interim rehearsal & Ex. 2

8

19 Dec

Structures and Linked lists (Chapters 9-10)

 

9

26 Dec

Project description (I)                 

10

2 Jan

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

The preprocessor

11

9 Jan

Project description (II); Make (Chapter 11)

GNU Make manual

12

16 Jan

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

 

13

23 Jan

Secure programming

Guest lecture by Dr. Eran Tromer

14

30 Jan

Rehearsal

 



Bibliography and Notes

Bibliography