Over the intervening years, MathWorks developers have learned a great deal about how programmers use objects and what capabilities they require. A key goal in updating the object-oriented programming capabilities of MATLAB in R2008a was to apply some of these lessons while remaining true to three core principles of the MATLAB language: the centrality of arrays and array indexing, the importance of mathematical functions, and the use of multiple named input and output parameters.
For experienced object-oriented programmers, this article explains the rationale behind some of the MATLAB design decisions in R2008a, including why MATLAB object-oriented features differ in significant ways from other popular object-oriented languages. In particular, this article examines methods and parameters, inheritance, handles, properties, and object lifecycle management.
By Dave Foti, The MathWorks
This article was published in MATLAB Digest, September 2008