Show simple item record

dc.contributor.authorJackson, Danielen_US
dc.contributor.authorMiller, Roberten_US
dc.coverage.temporalFall 2008en_US
dc.date.issued2008-12
dc.identifier6.005-Fall2008
dc.identifierlocal: 6.005
dc.identifierlocal: IMSCP-MD5-61503ee9d7b0e5d66401b0b76a60087a
dc.identifier.urihttp://hdl.handle.net/1721.1/75824
dc.description.abstractThis course provides an introduction to the fundamental principles and techniques of software development that have greatest impact on practice. Topics include capturing the essence of a problem by recognizing and inventing suitable abstractions; key paradigms, including state machines, functional programming, and object-oriented programming; use of design patterns to bridge gap between models and code; the role of interfaces and specification in achieving modularity and decoupling; reasoning about code using invariants; testing, test-case generation and coverage; and essentials of programming with objects, functions, and abstract types. The course includes exercises in modeling, design, implementation and reasoning.en_US
dc.languageen-USen_US
dc.rights.uriUsage Restrictions: This site (c) Massachusetts Institute of Technology 2012. Content within individual courses is (c) by the individual authors unless otherwise noted. The Massachusetts Institute of Technology is providing this Work (as defined below) under the terms of this Creative Commons public license ("CCPL" or "license") unless otherwise noted. The Work is protected by copyright and/or other applicable law. Any use of the work other than as authorized under this license is prohibited. By exercising any of the rights to the Work provided here, You (as defined below) accept and agree to be bound by the terms of this license. The Licensor, the Massachusetts Institute of Technology, grants You the rights contained here in consideration of Your acceptance of such terms and conditions.en_US
dc.subjectsoftware developmenten_US
dc.subjectjava programmingen_US
dc.subjectjavaen_US
dc.subjectinvariantsen_US
dc.subjectdecouplingen_US
dc.subjectdata abstractionen_US
dc.subjectstate machineen_US
dc.subjectmodule dependencyen_US
dc.subjectobject modelen_US
dc.subjectmodel view controlleren_US
dc.subjectmvcen_US
dc.subjectclient serveren_US
dc.subjecteclipseen_US
dc.subjectjuniten_US
dc.subjectsubversionen_US
dc.subjectswingen_US
dc.subjectdesignen_US
dc.subjectimplementen_US
dc.subjectmidi playeren_US
dc.subjectsat solveren_US
dc.subjectphoto organizeren_US
dc.subjecttestingen_US
dc.subjectcoverageen_US
dc.subjectevent based programmingen_US
dc.subjectconcurrencyen_US
dc.title6.005 Elements of Software Construction, Fall 2008en_US
dc.title.alternativeElements of Software Constructionen_US
dc.typeLearning Object
dc.contributor.departmentMassachusetts Institute of Technology. Department of Electrical Engineering and Computer Science


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record