skip to content
A guide to MATLAB object-oriented programming Preview this item
ClosePreview this item
Checking...

A guide to MATLAB object-oriented programming

Author: Andy H Register
Publisher: Boca Raton : Chapman & Hall/CRC : SCITECH Pub., ©2007.
Edition/Format:   Print book : EnglishView all editions and formats
Database:WorldCat
Summary:

This is the first book to deliver broad coverage of the documented and undocumented object-oriented features of MATLAB(R). Unlike the typical approach of other resources, this guide explains why each  Read more...

Rating:

(not yet rated) 0 with reviews - Be the first.

Subjects
More like this

 

Find a copy online

Links to this item

Find a copy in the library

&AllPage.SpinnerRetrieving; Finding libraries that hold this item...

Details

Material Type: Internet resource
Document Type: Book, Internet Resource
All Authors / Contributors: Andy H Register
ISBN: 9781584889113 158488911X 9781584889120 1584889128
OCLC Number: 76937439
Notes: Includes index.
Description: xxvi, 354 pages : illustrations ; 26 cm + 1 CD-ROM (4 3/4 in.)
Contents: Code Listings xvii --
1.2 Object-Oriented Software Development 2 --
1.2.1 At the Top of Your Game 3 --
1.2.2 Personal Development 3 --
1.2.3 Wicked Problems 5 --
1.2.4 Extreme Programming 6 --
1.2.5 MATLAB, Object-Oriented Programming, and You 8 --
1.3 Attributes, Behavior, Objects, and Classes 9 --
1.3.1 From MATLAB Heavyweight to Object-Oriented Thinker 9 --
1.3.2 Object-Oriented Design 10 --
1.3.3 Why Use Objects? 11 --
1.3.4 A Quality Focus 12 --
1.3.4.1 Reliability 12 --
1.3.4.2 Reusability 13 --
1.3.4.3 Extendibility 14 --
Part 1 Group of Eight 17 --
Chapter 2 Meeting MATLAB's Requirements 19 --
2.1 Variables, Types, Classes, and Objects 19 --
2.2 What Is a MATLAB Class? 21 --
2.2.1 Example: Class Requirements 21 --
2.2.1.1 Class Directory 22 --
2.2.1.2 Constructor 22 --
2.2.1.3 The Test Drive 24 --
2.4 Independent Investigations 27 --
Chapter 3 Member Variables and Member Functions 29 --
3.1 Members 29 --
3.2 Accessors and Mutators 30 --
3.2.1 A Short Side Trip to Examine Encapsulation 31 --
3.2.1.1 cShape Variables 32 --
3.2.2 cShape Members 33 --
3.2.2.1 cShape Private Member Variables 33 --
3.2.2.2 cShape Public Interface 34 --
3.2.3 A Short Side Trip to Examine Function Search Priority 36 --
3.2.4 Example Code: Accessors and Mutators, Round 1 37 --
3.2.4.1 Constructor 37 --
3.2.4.2 Accessors 37 --
3.2.4.3 Mutators 38 --
3.2.4.4 Combining an Accessor and a Mutator 39 --
3.2.4.5 Member Functions 40 --
3.2.5 Standardization 40 --
3.3 The Test Drive 41 --
3.5 Independent Investigations 43 --
Chapter 4 Changing the Rules ... in Appearance Only 45 --
4.1 A Special Accessor and a Special Mutator 45 --
4.1.1 A Short Side Trip to Examine Overloading 45 --
4.1.1.1 Superiorto and Inferiorto 47 --
4.1.1.2 The Built-in Function 48 --
4.1.2 Overloading the Operators subsref and subsasgn 48 --
4.1.2.1 Dot-Reference Indexing 50 --
4.1.2.2 subsref Dot-Reference, Attempt 1 51 --
4.1.2.3 A New Interface Definition 52 --
4.1.2.4 subsref Dot-Reference, Attempt 2: Separating Public and Private Variables 53 --
4.1.2.5 subsref Dot-Reference, Attempt 3: Beyond One-to-One, Public-to-Private 53 --
4.1.2.6 subsref Dot-Reference, Attempt 4: Multiple Indexing Levels 55 --
4.1.2.7 subsref Dot-Reference, Attempt 5: Operator Conversion Anomaly 57 --
4.1.2.8 subsasgn Dot-Reference 59 --
4.1.2.9 Array-Reference Indexing 62 --
4.1.2.10 subsref Array-Reference 63 --
4.1.2.11 subsasgn Array-Reference 64 --
4.1.2.12 Cell-Reference Indexing 65 --
4.1.3 Initial Solution for subsref.m 66 --
4.1.4 Initial Solution for subsasgn.m 68 --
4.1.5 Operator Overload, mtimes 69 --
4.2 The Test Drive 70 --
4.2.1 subsasgn Test Drive 24 70 --
4.2.2 subsref Test Drive 72 --
4.4 Independent Investigations 75 --
Chapter 5 Displaying an Object's State 77 --
5.1 Displaying Objects 77 --
5.1.1 What Should Be Displayed? 77 --
5.1.2 Standard Structure Display 79 --
5.1.3 Public Member Variable Display 80 --
5.1.3.1 Implementing display.m, Attempt 1 80 --
5.1.3.2 Implementing display.m, Attempt 2 81 --
5.2 Developer View 83 --
5.2.1 Implementing display.m with Developer View Options 84 --
5.3 The Test Drive 86 --
5.5 Independent Investigations 88 --
Chapter 6 fieldnames.m 91 --
6.1 Fieldnames 91 --
6.2 Code Development 91 --
6.3 The Test Drive 93 --
6.5 Independent Investigations 94 --
Chapter 7 struct.m 95 --
7.1 Struct 95 --
7.2 Code Development 96 --
7.3 The Test Drive 97 --
7.5 Independent Investigations 98 --
Chapter 8 get.m, set.m 99 --
8.1 Arguments for the Member Functions get and set 99 --
8.1.1 For Developers 99 --
8.1.2 For Clients 100 --
8.1.3 Tab Completion 101 --
8.2 Code Development 101 --
8.2.1 Implementing get and set 102 --
8.2.2 Initial get.m 104 --
8.2.3 Initial set.m 107 --
8.3 The Test Drive 110 --
8.5 Independent Investigations 112 --
Chapter 9 Simplify Using get, set, fieldnames, and struct 113 --
9.1 Improving subsref.m 114 --
9.2 Improving subsasgn.m 115 --
9.3 Improving display.m 116 --
9.4 Test Drive 118 --
9.6 Independent Investigations 122 --
Chapter 10 Drawing a Shape 123 --
10.1 Ready, Set, Draw 123 --
10.1.1 Implementation 123 --
10.1.1.1 Modify the Constructor 124 --
10.1.1.2 Modify fieldnames 125 --
10.1.1.3 Modify get 125 --
10.1.1.4 Modify set 128 --
10.1.1.5 Modify mtimes 131 --
10.1.1.6 Modify reset 132 --
10.1.1.7 Adding Member Function draw 132 --
10.2 Test Drive 133 --
10.4 Independent Investigations 137 --
Part 2 Building a Hierarchy 139 --
Chapter 11 Constructor Redux 141 --
11.1 Specifying Initial Values 141 --
11.1.1 Private Member Functions 142 --
11.2 Generalizing the Constructor 143 --
11.2.1 Constructor Helper/private/ctor_ini.m 145 --
11.2.2 Constructor Helper Example/private/ctor_1.m 146 --
11.3 Test Drive 147 --
11.5 Independent Investigations 151 --
Chapter 12 Constructing Simple Hierarchies with Inheritance 153 --
12.1 Simple Inheritance 154 --
12.1.1 Constructor 154 --
12.1.2 Other Standard Member Functions 157 --
12.1.2.1 Child Class fieldnames 161 --
12.1.2.2 Child Class get 162 --
12.1.2.3 Child Class set 165 --
12.1.3 Parent Slicing in Nonstandard Member Functions 167 --
12.1.3.1 draw.m 168 --
12.1.3.2 mtimes.m 168 --
12.1.3.3 reset.m 169 --
12.2 Test Drive 169 --
12.4 Independent Investigations 174 --
Chapter 13 Object Arrays with Inheritance 175 --
13.1 When Is a cShape Not a cShape? 175 --
13.1.1 Changes to subsasgn 176 --
13.1.2 Vertcat and horzcat 177 --
13.1.3 Test Drive 178 --
13.3 Independent Investigations 182 --
Chapter 14 Child-Class Members 183 --
14.1 Function Redefinition 183 --
14.1.1 /@cStar/private/ctor_ini.m with Private Member Variables 184 --
14.1.2 /@cStar/fieldnames.m with Additional Public Members 184 --
14.1.3 /@cStar/get.m with Additional Public Members 185 --
14.1.4 /@cStar/set.m with Additional Public Members 186 --
14.1.5 /@cStar/draw.m with a Title 187 --
14.2 Test Drive 187 --
14.4 Independent Investigations 190 --
Chapter 15 Constructing Simple Hierarchies with Composition 191 --
15.1 Composition 191 --
15.1.1 The cLineStyle Class 192 --
15.1.1.1 cLineStyle's private/ctor_ini 193 --
15.1.1.2 cLineStyle's fieldnames 194 --
15.1.1.3 cLineStyle's get 195 --
15.1.1.4 cLineStyle's set 196 --
15.1.1.5 cLineStyle's private/ctor_2 197 --
15.1.2 Using a Primary cShape and a Secondary cLineStyle 198 --
15.1.2.1 Composition Changes to cShape's ctor_ini.m 199 --
15.1.2.2 Adding Line Weight to cShape's fieldnames.m 199 --
15.1.2.3 Composition Changes to cShape's get.m 200 --
15.1.2.4 Composition Changes to cShape's set.m 201 --
15.1.2.5 Composition Changes to cShape's draw.m 202 --
15.1.2.6 Composition Changes to cShape's Other Member Functions 202 --
15.2 lest Drive 203 --
15.4 Independent Investigations 206 --
Chapter 16 General Assignment and Mutator Helper Functions 209 --
16.1 Helper Function Strategy 209 --
16.1.1 Direct-Link Public Variables 210 --
16.1.1.1 Get and subsref 210 --
16.1.1.2 Set and subsasgn 211 --
16.1.2 get and set Helper Functions 212 --
16.1.2.1 Helper functions, get, and set 212 --
16.1.2.2 Final template for get.m 213 --
16.1.2.3 Final Template for set.m 217 --
16.1.2.4 Color Helper Function 221 --
16.1.2.5 The Other Classes and Member Functions 222 --
16.2 Test Drive 222 --
16.4 Independent Investigations 224 --
Chapter 17 Class Wizard 225 --
17.1 File Dependencies 226 --
17.2 Data-Entry Dialog Boxes 226 --
17.2.1 Main Class Wizard Dialog 227 --
17.2.1.1 Header Information Dialog 229 --
17.2.1.2 Parents ... Dialog 231 --
17.2.1.3 Private Variable ... Dialog 232 --
17.2.1.4 Concealed Variables ... Dialog 234 --
17.2.1.5 Public Variables ... Dialog 235 --
17.2.1.6 Constructors ... Dialog 237 --
17.2.1.7 More ... Dialog 238 --
17.2.1.8 Static Variables ... Dialog 239 --
17.2.1.9 Private Functions ... Dialog 240 --
17.2.1.10 Public Functions ... Dialog 242 --
17.2.1.11 File Menu 243 --
17.2.1.12 Data Menu 244 --
17.2.1.13 Build Class Files Button 245 --
17.4 Independent Investigations 247 --
Chapter 18 Class Wizard Versions of the Shape Hierarchy 249 --
18.1 cLineStyle Class Wizard Definition Data 249 --
18.1.1 cLineStyle Header Info 250 --
18.1.2 cLineStyle Private Variables 251 --
18.1.3 cLineStyle Public Variables 253 --
18.1.4 cLineStyle Constructor Functions 255 --
18.1.5 cLineStyle Data Dictionary 257 --
18.1.6 cLineStyle Build Class Files 258 --
18.1.7 cLineStyle Accessor and Mutator Helper Functions 259 --
18.2 cShape Class Wizard Definition Data 261 --
18.2.1 cShape Header Info 261 --
18.2.2 cShape Private Variables 261 --
18.2.3 cShape Concealed Variables 262 --
18.2.4 cShape Public Variables 263 --
18.2.5 cShape Constructor Functions 264 --
18.2.6 cShape Public Functions 265 --
18.2.7 cShape Data Dictionary 265 --
18.2.8 cShape Build Class Files 266 --
18.3 cStar Class Wizard Definition Data 268 --
18.3.1 cStar Parent 268 --
18.3.2 Other cStar Definition Data 269 --
18.4 cDiamond Class Wizard Definition Data 271 --
18.5 Test Drive 271 --
18.7 Independent Investigations 275 --
Part 3 Advanced Strategies 277 --
Chapter 19 Composition and a Simple Container Class 279 --
19.1 Building Containers 279 --
19.2 Container Implementation 280 --
19.2.1 The Standard Framework and the Group of Eight 280 --
19.2.1.1 Container Modifications to fieldnames 281 --
19.2.1.2 Container Modifications to subsref 283 --
19.2.1.3 Container Modifications to subsasgn 285.
Responsibility: Andy H. Register.
More information:

Reviews

User-contributed reviews
Retrieving GoodReads reviews...
Retrieving DOGObooks reviews...

Tags

All user tags (1)

View most popular tags as: tag list | tag cloud

Confirm this request

You may have already requested this item. Please select Ok if you would like to proceed with this request anyway.

Linked Data


Primary Entity

<http://www.worldcat.org/oclc/76937439> # A guide to MATLAB object-oriented programming
    a schema:Book, schema:CreativeWork ;
    library:oclcnum "76937439" ;
    library:placeOfPublication <http://experiment.worldcat.org/entity/work/data/62686733#Place/boca_raton> ; # Boca Raton
    library:placeOfPublication <http://id.loc.gov/vocabulary/countries/flu> ;
    schema:about <http://experiment.worldcat.org/entity/work/data/62686733#Topic/numerisk_analys_databehandling> ; # Numerisk analys--databehandling
    schema:about <http://experiment.worldcat.org/entity/work/data/62686733#Topic/programmation_orientee_objet_informatique> ; # Programmation orientée objet (Informatique)
    schema:about <http://experiment.worldcat.org/entity/work/data/62686733#Topic/matlab_logiciel> ; # MATLAB (logiciel)
    schema:about <http://experiment.worldcat.org/entity/work/data/62686733#Topic/analyse_numerique> ; # Analyse numérique
    schema:about <http://experiment.worldcat.org/entity/work/data/62686733#Topic/analyse_numerique_informatique> ; # Analyse numérique--Informatique
    schema:about <http://dewey.info/class/005.117/e22/> ;
    schema:about <http://experiment.worldcat.org/entity/work/data/62686733#Topic/objektorientierte_programmierung> ; # Objektorientierte Programmierung
    schema:about <http://id.worldcat.org/fast/1365096> ; # MATLAB.
    schema:about <http://experiment.worldcat.org/entity/work/data/62686733#Topic/programmation_orientee_objets_informatique> ; # Programmation orientée objets (informatique)
    schema:about <http://experiment.worldcat.org/entity/work/data/62686733#Topic/objektorienterad_programmering> ; # Objektorienterad programmering
    schema:about <http://id.worldcat.org/fast/1042804> ; # Object-oriented programming (Computer science)
    schema:about <http://experiment.worldcat.org/entity/work/data/62686733#CreativeWork/matlab> ; # MATLAB.
    schema:about <http://id.worldcat.org/fast/1041279> ; # Numerical analysis--Data processing
    schema:about <http://id.loc.gov/authorities/subjects/sh2008108514> ; # Numerical analysis--Data processing
    schema:bookFormat bgn:PrintBook ;
    schema:copyrightYear "2007" ;
    schema:creator <http://viaf.org/viaf/33893508> ; # Andy H. Register
    schema:datePublished "2007" ;
    schema:exampleOfWork <http://worldcat.org/entity/work/id/62686733> ;
    schema:inLanguage "en" ;
    schema:name "A guide to MATLAB object-oriented programming"@en ;
    schema:productID "76937439" ;
    schema:publication <http://www.worldcat.org/title/-/oclc/76937439#PublicationEvent/boca_raton_chapman_&_hall_crc_scitech_pub_2007> ;
    schema:publisher <http://experiment.worldcat.org/entity/work/data/62686733#Agent/scitech_pub> ; # SCITECH Pub.
    schema:publisher <http://experiment.worldcat.org/entity/work/data/62686733#Agent/chapman_&_hall_crc> ; # Chapman & Hall/CRC
    schema:url <http://catdir.loc.gov/catdir/toc/ecip076/2006100724.html> ;
    schema:url <http://www.gbv.de/dms/ilmenau/toc/52181068X.PDF> ;
    schema:url <http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=016761985&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA> ;
    schema:url <http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&doc_number=016761985&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA> ;
    schema:workExample <http://worldcat.org/isbn/9781584889120> ;
    schema:workExample <http://worldcat.org/isbn/9781584889113> ;
    umbel:isLike <http://bnb.data.bl.uk/id/resource/GBA741518> ;
    wdrs:describedby <http://www.worldcat.org/title/-/oclc/76937439> ;
    .


Related Entities

<http://experiment.worldcat.org/entity/work/data/62686733#Agent/chapman_&_hall_crc> # Chapman & Hall/CRC
    a bgn:Agent ;
    schema:name "Chapman & Hall/CRC" ;
    .

<http://experiment.worldcat.org/entity/work/data/62686733#Agent/scitech_pub> # SCITECH Pub.
    a bgn:Agent ;
    schema:name "SCITECH Pub." ;
    .

<http://experiment.worldcat.org/entity/work/data/62686733#Topic/analyse_numerique> # Analyse numérique
    a schema:Intangible ;
    schema:name "Analyse numérique"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/62686733#Topic/analyse_numerique_informatique> # Analyse numérique--Informatique
    a schema:Intangible ;
    schema:name "Analyse numérique--Informatique"@fr ;
    schema:name "Analyse numérique--Informatique"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/62686733#Topic/matlab_logiciel> # MATLAB (logiciel)
    a schema:Intangible ;
    schema:name "MATLAB (logiciel)"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/62686733#Topic/numerisk_analys_databehandling> # Numerisk analys--databehandling
    a schema:Intangible ;
    schema:name "Numerisk analys--databehandling"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/62686733#Topic/objektorienterad_programmering> # Objektorienterad programmering
    a schema:Intangible ;
    schema:name "Objektorienterad programmering"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/62686733#Topic/objektorientierte_programmierung> # Objektorientierte Programmierung
    a schema:Intangible ;
    schema:name "Objektorientierte Programmierung"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/62686733#Topic/programmation_orientee_objet_informatique> # Programmation orientée objet (Informatique)
    a schema:Intangible ;
    schema:name "Programmation orientée objet (Informatique)"@fr ;
    schema:name "Programmation orientée objet (Informatique)"@en ;
    .

<http://experiment.worldcat.org/entity/work/data/62686733#Topic/programmation_orientee_objets_informatique> # Programmation orientée objets (informatique)
    a schema:Intangible ;
    schema:name "Programmation orientée objets (informatique)"@en ;
    .

<http://id.loc.gov/authorities/subjects/sh2008108514> # Numerical analysis--Data processing
    a schema:Intangible ;
    schema:name "Numerical analysis--Data processing"@en ;
    .

<http://id.worldcat.org/fast/1041279> # Numerical analysis--Data processing
    a schema:Intangible ;
    schema:name "Numerical analysis--Data processing"@en ;
    .

<http://id.worldcat.org/fast/1042804> # Object-oriented programming (Computer science)
    a schema:Intangible ;
    schema:name "Object-oriented programming (Computer science)"@en ;
    .

<http://id.worldcat.org/fast/1365096> # MATLAB.
    a schema:CreativeWork ;
    schema:name "MATLAB." ;
    .

<http://viaf.org/viaf/33893508> # Andy H. Register
    a schema:Person ;
    schema:familyName "Register" ;
    schema:givenName "Andy H." ;
    schema:name "Andy H. Register" ;
    .

<http://worldcat.org/isbn/9781584889113>
    a schema:ProductModel ;
    schema:isbn "158488911X" ;
    schema:isbn "9781584889113" ;
    .

<http://worldcat.org/isbn/9781584889120>
    a schema:ProductModel ;
    schema:isbn "1584889128" ;
    schema:isbn "9781584889120" ;
    .


Content-negotiable representations

Close Window

Please sign in to WorldCat 

Don't have an account? You can easily create a free account.