ebook img

Object Oriented Programming using C# PDF

254 Pages·2011·8.97 MB·English
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Object Oriented Programming using C#

Object Oriented Programming using  C#  Simon Kendal  Download free books at Simon Kendal Object Oriented Programming using C# 2 Object Oriented Programming using C# © 2011 Simon Kendal & Ventus Publishing ApS ISBN 978-87-7681-814-2 3 Object Oriented Programming using C# Contents Contents Foreword 11 1 An Introduction to Object Orientated Programming 12 1.1 A Brief History of Computing 13 1.2 Different Programming Paradigms 14 1.3 Why use the Object Orientation Paradigm? 16 1.4 Object Oriented Principles 16 1.5 What Exactly is Object Oriented Programming? 20 1.6 The Benefits of the Object Oriented Programming Approach 23 1.7 Software Implementation 23 1.8 An Introduction to the .NET Framework 27 1.9 Summary 30 2 The Unified Modelling Language (UML) 31 2.1 An Introduction to UML 31 2.2 UML Class diagrams 32 2.3 UML Syntax 36 2.4 UML Package Diagrams 50 2.5 UML Object Diagrams 56 Fast-track your career rt e v d a e h k t c cli Masters in Management Stand out from the crowd e as Designed for graduates with less than one year of full-time postgraduate work e experience, London Business School’s Masters in Management will expand your Pl thinking and provide you with the foundations for a successful career in business. The programme is developed in consultation with recruiters to provide you with the key skills that top employers demand. Through 11 months of full-time study, you will gain the business knowledge and capabilities to increase your career choices and stand out from the crowd. London Business School Applications are now open for entry in September 2011. Regent’s Park London NW1 4SA United Kingdom For more information visit www.london.edu/mim/ Tel +44 (0)20 7000 7573 Email [email protected] email [email protected] or call +44 (0)20 7000 7573 www.london.edu/mim/ 4 Object Oriented Programming using C# Contents 2.6 UML Sequence Diagrams 58 2.7 Summary 59 3 Inheritance and Method Overriding 60 3.1 Object Families 61 3.2 Generalisation and Specialisation 61 3.3 Inheritance 63 3.4 Implementing Inheritance in C# 70 3.5 Constructors 70 3.6 Constructor Rules 72 3.7 Access Control 73 3.8 Abstract Classes 77 3.9 Overriding Methods 78 3.10 The ‘Object’ Class 80 3.11 Overriding ToString() defined in ‘Object’ 81 3.12 Summary 82 4 Object Roles and the Importance of Polymorphism 84 4.1 Class Types 84 4.2 Substitutability 87 4.3 Polymorphism 88 4.4 Extensibility 89 d. e v er es hts r g You’re full of energy All ri 0. 1 0 and ideas. And that’s S 2 B U © just what we are looking for. rt e v d a e h Looking for a career where your ideas could really make a difference? UBS’s k t c Graduate Programme and internships are a chance for you to experience cli e for yourself what it’s like to be part of a global team that rewards your input s a and believes in succeeding together. e Pl Wherever you are in your academic career, make your future a part of ours by visiting www.ubs.com/graduates. www.ubs.com/graduates 5 Object Oriented Programming using C# Contents 4.5 Interfaces 96 4.6 Extensibility Again 102 4.7 Distinguishing Subclasses 105 4.8 Summary 107 5 Overloading 108 5.1 Overloading 108 5.2 Overloading To Aid Flexibility 109 5.3 Summary 112 6 Object Oriented Software Analysis and Design 113 6.1 Requirements Analysis 113 6.2 The Problem 115 6.3 Listing Nouns and Verbs 116 6.4 Identifying Things Outside The Scope of The System 117 6.5 Identifying Synonyms 118 6.6 Identifying Potential Classes 119 6.7 Identifying Potential Attributes 121 6.8 Identifying Potential Methods 121 6.9 Identifying Common Characteristics 122 6.10 Refining Our Design using CRC Cards 123 W WIOTRK © Inter IK H EA R eeeducusycecel Iet’sU oSnly an © Inter IK Systems B.V. 2009 dvert opportunity if EA System k the a you act on it s B.V. 2009 c cli e s a IKEA.SE/STUDENT e Pl e v de d er ey s soe ginrgoveneo sd +me 6 Object Oriented Programming using C# Contents 6.11 Elaborating Classes 125 6.12 Summary 126 7 Generic Collections and how to Serialize them 128 7.1 An Introduction to Generic Methods 128 7.2 An Introduction to Collections 133 7.3 Different Types of Collections 134 7.4 Lists 134 7.5 HashSets 135 7.6 Dictionaries 136 7.7 A Simple List Example 138 7.8 A More Realistic Example Using Lists 140 7.9 An Example Using Sets 145 7.10 An Example Using Dictionaries 154 7.11 Serializing and De-serializing Collections 160 7.12 Summary 165 8 C# Development Tools 166 8.1 Tools for Writing C# Programs 166 8.2 Microsoft Visual Studio 167 8.3 SharpDevelop 168 8.4 Automatic Documentation 169 your chance to change the world rt e v d a e h Here at Ericsson we have a deep rooted belief that k t the innovations we make on a daily basis can have a clic profound effect on making the world a better place e for people, business and society. Join us. s a e In Germany we are especially looking for graduates Pl as Integration Engineers for • Radio Access and IP Networks • IMS and IPTV We are looking forward to getting your application! To apply and for all current job openings please visit our web page: www.ericsson.com/careers 7 Object Oriented Programming using C# Contents 8.5 Sandcastle Help File Builder 172 8.6 GhostDoc 173 8.6 Adding Namespace Comments 173 8.8 Summary 175 9 Creating And Using Exceptions 177 9.1 Understanding the Importance of Exceptions 177 9.2 Kinds of Exception 180 9.3 Extending the ApplicationException Class 180 9.4 Throwing Exceptions 182 9.5 Catching Exceptions 184 9.6 Summary 184 10 Agile Programming 185 10.1 Agile Approaches 186 10.2 Refactoring 186 10.4 Support for Refactoring 187 10.5 Unit Testing 188 10.6 Automated Unit Testing 188 10.7 Regression Testing 190 10.8 Unit Testing in Visual Studio 190 10.9 Examples of Assertions 192 what‘s missing in this equation? rt e v d a e h k t c cli e s You could be one of our future talents a e Pl maeRsK inteRnationaL teChnoLogY & sCienCe PRogRamme Are you about to graduate as an engineer or geoscientist? Or have you already graduated? If so, there may be an exciting future for you with A.P. Moller - Maersk. www.maersk.com/mitas 8 Object Oriented Programming using C# Contents 10.10 Several Test Examples 193 10.11 Running Tests 199 10.12 Test Driven Development (TDD) 200 10.13 TDD Cycles 201 10.14 Claims for TDD 201 10.15 Summary 202 11 Case Study 203 11.1 The Problem 204 11.2 Preliminary Analysis 205 11.3 Further Analysis 211 11.4 Documenting the design using UML 216 11.5 Prototyping the Interface 220 11.6 Revising the Design to Accommodate Changing Requirements 221 11.7 Packaging the Classes 224 11.8 Programming the Message Classes 226 11.9 Programming the Client Classes 233 11.10 Creating and Handling UnknownClientException 235 11.11 Programming the Interface 237 11.12 Using Test Driven Development and Extending the System 241 11.13 Generating the Documentation 247 11.14 The Finished System 251 11.15 Running the System 252 11.6 Conclusions 254 9 “To Janice and Cara: jewels forged in heaven, shining here on earth!” Simon Kendal

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.