Our primary goal for this book is to show you how to take the same Student Registration System case study through a complete object life cycle, from requirements definition via use cases, to object modeling, and from there into C# code as a working application. To do so, however, required us to develop a nontrivial application that was complex enough to be able to demonstrate as many "real-world" issues surrounding OO development as possible within the scope of a single book.
The code that we've written for the SRS application is sizeable; to have included the full listings for each and every C# class intact in every chapter would have been prohibitive. So, to make this as effective a learning experience as possible for you, we've chosen to feature just those portions of code in each chapter that are particularly critical to your understanding of object concepts as they translate into the C# language.
Of course, we realize that you'll need access to the complete source code to round out your understanding of the SRS application as we've implemented it, so we're making an electronic softcopy of the SRS source code files available for download from the Apress web site, http://www.apress.com/book/download.html.
One of the best ways to master a language is to start with code that works, and to experiment with it. We'd like you to get some hands-on experience with C# by actually compiling and running the SRS application; studying it, so as to familiarize yourself with the techniques that we've used; and finally, modifying it yourself. Exercises provided at the end of each chapter provide specific suggestions for experiments that you may wish to try. Therefore, before you dive into this chapter, we encourage you to download the C# source code for this chapter from the Apress web site if you haven't already done so; instructions for doing so are included in Appendix D. You'll also want to install Microsoft's free C# software development kit (SDK) if you haven't already done so; please see Appendix C for details.