CSE2031
Software Tools
(2011-12 Winter)
Announcements
Announcements During the Term
Calendar
What Happens When
The Labs
Week of January 03: lab 0 (both lab sections go to Thursday's lab)
A short preview of some material on pointers, etc. that may help you better
understand the man pages and function prototypes can be found
here.
And you should read about printf and scanf
in the man pages (man 3 scanf; man 3 printf) and in the K & R text
(look in the index at the back).
Week of January 10: lab 1
Week of January 17: lab 2
Week of January 24: Lab 3 - no new exercises this week. Finish all exercises from labs 0, 1 and 2.
Slides shown during the course:
The Course
This course introduces software tools that are used for building applications
and in the software development process.
The course covers the following topics:
- C programming (stdio, pointers, memory management, overview of the C libraries).
Primarily C89/ANSI-C, but with a look at C95 and C99.
- Shell programming under Unix (Bourne/Bash shell, filters and pipes)
- Testing and debugging
- Practical programming skills (interfaces, version control systems,
"make" mechanism, performance and optimization)
- Parts of the POSIX system call interface.
The above topics will be applied in practical programming exercises.
Sections and Instructors
Section M
- Instructor: Gordon Turpin (gordon [at] cse [dot] yorku [dot] ca)
- Office Hour: MW 4:00 - 5:00 in CSEB3020
- Lecture: Tuesday, 16:30 - 18:30 in CLH J
- Labs: Note that lab attendance is required.
- Lab01: Tuesday, 12:30 - 2:30 in CSEB 1006
- Lab02: Thursday, 16:30 - 18:30 in CSEB 1006
Teaching Assistant(s)
- Ehsan Fazl
- Morteza Zihayat
Required Texts
- Kernighan, Brian W. and Ritchie, Dennis M.
The C Programming Language, 2nd Ed.
Prentice Hall, 1988
ISBN 0-13-110362-8
Short and well written, covering C89/ANSI-C,
this is the classic C book.
- Practical Programming in the Unix Environment
Edited by W. Stürzlinger
Pearson Custom Publishing, 2003
ISBN 0-536-74996-5
This is a compendium of material from two other texts.
Additional/Recommended Texts
A list can be found
here.
Course Evaluation
- 30% 3 assignments:
- 10% labtest 1
- 10% labtest 2
- 20% midterm
- 30%
final exam