6.031 Elements of Software Construction
Introduces fundamental principles and techniques of software development: how to write software that is safe from bugs, easy to understand, and ready for change. Topics include specifications and invariants; testing, test-case generation, and coverage; abstract data types and representation independence; design patterns for object-oriented programming; concurrent programming, including message passing and shared concurrency, and defending against races and deadlock; and functional programming with immutable data and higher-order functions. Includes weekly programming exercises and larger group programming projects.
This class has 6.009 as a prerequisite.
Lecture occurs 11:00 AM to 12:30 PM on Mondays, Wednesdays and Fridays in 34-101.
This class counts for a total of 15 credits.
You can find more information at the http://www.google.com/search?&q=MIT+%2B+6.031&btnG=Google+Search&inurl=https site or on the 6.031 Stellar site.
© Copyright 2015 Yasyf Mohamedali