Q: Where can I learn more about Objective-C and object-oriented programming?

A: The NeXT Technical Documentation provides a brief introduction.  There are a couple of books on Objective-C:

· Object Oriented Programming: An Evolutionary Approach.  
	Brad Cox
	Addison-Wesley, 1986.

· Objective-C : Object-Oriented Programming Techniques
	Lewis J. Pinson, Richard S. Wiener
	Addison-Wesley
	ISBN 0-201-50828-1

The former is the original book on Objective-C, by the language's author.  The latter includes a couple of chapters dedicated to NEXTSTEP.

The following posting from comp.Object provides a fairly comprehensive reading list about object-oriented programming.  

_________________________

In August 1989, I posted "Readings In Object-Oriented Technology" to
several newsgroups. Since then comp.object has been created, _and_
I have slightly updated the reading list. Lately, I have received
a number of requests to repost the article. So here, 'tis. I hope
you will find this to be of some use. Thanks.

                                -- Ed Berard
                                   Berard Software Engineering, Inc.
                                   18620 Mateney Road
                                   Germantown, Maryland 20874
                                   Phone: (301) 353-9652
                                   FAX: (301) 353-9652

---- cut here ---- cut here ---- cut here ---- cut here ---- cut here ----

                Readings In Object-Oriented Technology

                         by Edward V. Berard
                  Berard Software Engineering, Inc.

If you are interested in reading about any rapidly evolving
technology, it is best to keep the following in mind:

        -       Read more than one source. Look for sources which have
                different, and possibly conflicting, views of the
                material. It is often difficult to determine
                fundamental facts when only one viewpoint is present.

        -       Very often, authors confuse concepts with
                implementations. Ask yourself if the author is
                discussing a concept, or a particular implementation
                of the concept.

        -       Always be on the lookout for new sources. In the
                software technology arena in particular, significant
                changes can take place in less than a month.

        -       Take care to distinguish between differing viewpoints
                and conflicting viewpoints.

There are many topic areas in object-oriented software technology, and
literally thousands of books, articles, tutorials, and proceedings
devoted, in whole, or in part, to object-oriented software concepts.
What we will present here is some of the representative reading
material. Just because an item is included in this reading list does
not mean that it is recommended without qualifications, nor does it
mean that it is an authoritative source on a topic. However, the
material listed here is intended to help you understand more about the
technology.

                     Object-Oriented Programming

Object-oriented programming books most often tend to focus on
programming language aspects of object-oriented technology. However,
many fundamental concepts can be found in the books mentioned below:

[Cox, 1986]. B.J. Cox, Object Oriented Programming: An Evolutionary
Approach, Addison-Wesley, Reading, Massachusetts, 1986.

[Goldberg and Robson, 1983]. A. Goldberg and D. Robson, Smalltalk-80:
The Language and Its Implementation, Addison-Wesley, Reading,
Massachusetts, 1983.

[Meyer, 1988]. B. Meyer, Object-Oriented Software Construction,
Prentice-Hall, Englewood Cliffs, New Jersey, 1988.

[Keene, 1989]. S.E.Keene, Object-Oriented Programming in Common Lisp,
Addison-Wesley, Reading, Massachusetts, 1989.

[Stroustrup, 1986a]. B. Stroustrup, The C++ Programming Language,
Addison-Wesley, Reading, Massachusetts, 1986.

                Object-Oriented Requirements Analysis

There are a number of publicly available courses on object-oriented
requirements analysis. Since the technology is still new, these
courses present many differing viewpoints and approaches.  There are,
however, a number of references on the topic:

[Anderson et al, 1989]. J.A. Anderson, J. McDonald, L. Holland, and E.
Scranage, "Automated Object-Oriented Requirements Analysis and
Design," Proceedings of the Sixth Washington Ada Symposium, June
26-29, 1989, pp. 265 - 272.

[Coad and Yourdon, 1989]. P. Coad and E. Yourdon, OOA --
Object-Oriented Analysis, Prentice-Hall, Englewood Cliffs, New Jersey,
1989.

[Shlaer and Mellor, 1988]. S. Shlaer and S.J. Mellor, Object-Oriented
Systems Analysis: Modeling the World In Data, Yourdon Press:
Prentice-Hall, Englewood Cliffs, New Jersey, 1988.

[Stoecklin et al, 1988]. S.E. Stoecklin, E.J. Adams, and S.Smith,
"Object-Oriented Analysis," Proceedings of the Fifth Washington Ada
Symposium, June 27 - 30, 1988, Association for Computing Machinery,
New York, New York, 1988, pp. 133 - 138.

                  Object-Oriented Design/Development

Most of the work which has been done in the area of object-oriented
life-cycle issues, outside of object-oriented programming, has been
accomplished within the Ada community. Some representative sources on
OOD are:

[Abbott, 1983]. R.J. Abbott, "Program Design by Informal English
Descriptions," Communications of the ACM, Vol. 26, No. 11, November
1983, pp. 882 - 894.

[Booch, 1982]. G. Booch, "Object Oriented Design," Ada Letters, Vol.
I, No. 3, March- April 1982, pp. 64 - 76.

[Booch, 1986]. G. Booch, "Object Oriented Development," IEEE
Transactions on Software Engineering, Vol. SE-12, No. 2, February
1986, pp. 211 - 221.

[Booch, 1990]. G. Booch, "On the Concepts of Object-Oriented Design,"
in Modern Software Engineering: Foundations and Current Perspectives,
P.A. Ng and R.T. Yeh, Editors, Van Nostrand Reinhold, New York, New
York, 1990, pp. 165 - 204.

[Heitz, 1988]. M. Heitz, "HOOD: A Hierarchical Object-Oriented Design
Method," Proceedings of the Third German Ada Users Congress, January
1988, Gesellschaft fur Software Engineering, Munich, West Germany, pp.
12-1 - 12-9.

[Masiero and Germano, 1988]. P. Masiero and F.S.R. Germano, "JSD As An
Object-Oriented Design Method," Software Engineering Notes, Vol. 13,
No. 3, July 1988, pp. 22 - 23.

[Stark and Seidewitz, 1987]. M. Stark and E.V. Seidewitz, "Towards a
General Object-Oriented Ada Life-Cycle," Proceedings of the Joint Ada
Conference, Fifth National Conference on Ada Technology and Washington
Ada Symposium, U.S. Army Communications-Electronics Command, Fort
Monmouth, New Jersey, pp. 213 - 222.

                      Object-Oriented Databases

Object-oriented databases are not the same thing as relational
databases. In effect, object-oriented database technology today is at
the same point relational database technology was in the late 1970s.
(I know more than a few vendors who would disagree with this point.)
Some representative information on the subject can be found in:

[Atkinson et al, 1989]. M. Atkinson, F. Bancilhon, D. DeWitt, K.
Dittrich, D. Maier, and S. Zdonik, "The Object-Oriented Database
System Manifesto," (Invited Paper), Proceedings of the First
International Conference on Deductive and Object-Oriented Databases,
Kyoto, Japan, December 4-6, 1989, pp. 40 - 57.

[Babcock, 1987]. C. Babcock, "Object is DBMS Focus," ComputerWorld,
Vol. XXI, No. 40, October 5, 1987, page 25.

[Blaha et al, 1988]. M.R. Blaha, W.J. Premerlani, and J.E. Rumbaugh,
"Relational Database Design Using an Object-Oriented Approach,"
Communications of the ACM, Vol. 31, No. 4, April 1988, pp. 414 - 427.

[Bochenski, 1988]. B.A. Bochenski, "On Object-Oriented Programming,
Databases," Software, Vol. 8, No. 11, September 1988, page 42.

[Dittrich and Dayal, 1986]. K. Dittrich and U. Dayal, Editors,
Proceedings of the 1986 International Workshop on Object-Oriented
Database Systems, IEEE Catalog Number 86TH0161-0, IEEE Computer
Society Press, Washington, D.C., 1986.

[Scannell, 1988]. T. Scannell, "Freeform DBMS the 'Object' of Startup
Company's Affection,"JMini-Micro Systems, Vol. XXI, No. 2, February
1988, pp. 16 - 22.

[Weiss, 1987]. R. Weiss, "Why Object-Oriented Databases?," Electronic
Engineering Times, No. 465, December 21, 1987, page 23.

[Wile and Allard, 1987]. D.S. Wile and D.G. Allard, "Worlds: an
Organizing Structure for Object-Bases," SIGPLAN Notices, Vol. 22, No.
1, January 1987, pp. 16 - 26.

[Zdonik and Maier, 1990]. S.B. Zdonik and D. Maier, "Fundamentals of
Object-Oriented Databases," Readings in Object-Oriented Database
Systems, Morgan Kaufmann Publishers, Inc. San Mateo, California, 1990,
pp. 1 - 32.

                  Object-Oriented Computer Hardware

Even computer hardware can be constructed in an object-oriented
manner. Here are three references:

[Myers, 1982]. G.J. Myers, Advances in Computer Architecture, Second
Edition, John Wiley & Sons, New York, New York, 1982.

[Organick, 1983]. E. Organick, A Programmer's View of the Intel 432
System, McGraw-Hill, New York, New York,1983.

[Pountain, 1988]. D. Pountain, "Rekursiv: An Object-Oriented CPU,"
Byte, Vol. 13, No. 11, November 1988, pp. 341 - 349.

                       Object-Oriented Metrics

As organizations begin shifting to object-oriented approaches, they
find that some of the ways in which they used to measure things are
less appropriate. People have already begun asking about
object-oriented metrics. Although most work in this area is relatively
new, there are a growing number of references, including:

[Duhl and Damon, 1988]. J. Duhl and C. Damon, "A Performance
Comparison of Object and Relational Databases Using the Sun
Benchmark," OOPSLA '88 Conference Proceedings, Special Issue of
SIGPLAN Notices, Vol. 23, No. 11, November 1988, pp. 153 - 163.

[Hufnagel and Brown, 1989]. S.P. Hufnagel and J.C. Brown, "Performance
Properties of Vertically Partitioned Object-Oriented Systems," IEEE
Transactions on Software Engineering, Vol. 15, No. 8, August 1989, pp.
935 - 946.

[Liberherr and Holland, 1989]. K.J. Liberherr and I.M. Holland,
"Assuring Good Style for Object-Oriented Programs," IEEE Software,
Vol. 6, No. 5, September 1989, pp. 38 - 48.

[Liberherr and Riel, 1988]. K.J. Liberherr and A.J. Riel, "Demeter: a
CASE Study of Software Growth Through Parameterized Classes," Journal
of Object-Oriented Programming, Vol. 1, No. 3, August/September 1988,
pp. 8 - 22.

            General Object-Oriented Technology References

There are a number of general references on object-oriented
technology, including:

[ACM, 1986a]. Association for Computing Machinery, Special Issue of
SIGPLAN Notices on the Object-Oriented Programming Workshop, Vol. 21,
No. 10, October 1986.

[ACM, 1986b]. Association for Computing Machinery, OOPSLA '86
Conference Proceedings, Special Issue of SIGPLAN Notices, Vol. 21, No.
11, November 1986.

[ACM, 1987]. Association for Computing Machinery, OOPSLA '87
Conference Proceedings, Special Issue of SIGPLAN Notices, Vol. 22, No.
12, December 1987.

[ACM, 1988a]. Association for Computing Machinery, OOPSLA '87 Addendum
to the Proceedings, Special Issue of SIGPLAN Notices, Vol. 23, No. 5,
May 1988.

[ACM, 1988b]. Association for Computing Machinery, OOPSLA '88
Conference Proceedings, Special Issue of SIGPLAN Notices, Vol. 23, No.
11, November 1988.

[ACM, 1989]. Association for Computing Machinery, OOPSLA '89
Conference Proceedings, Special Issue of SIGPLAN Notices, Vol. 24, No.
10, October 1989.

[Bezivin et al, 1987]. J. Bezivin, J.-M. Hullot, P. Cointe, and H.
Lieberman, ECOOP '87: Proceedings of the European Conference on
Object-Oriented Programming, Lecture Notes on Computer Science, Volume
276, Springer Verlag, New York, New York, 1987.

[Cook, 1989]. S. Cook, ECOOP '89: Proceedings of the European
Conference on Object-Oriented Programming, British Computer Society
Workshop Series, Cambridge University Press, Cambridge, United
Kingdom, 1989.

[Gill, 1988]. P. Gill, "MIS Slowly Warms Up to Object-Oriented
Programming," ComputerWorld, Vol. XXII, No. 8, February 22, 1988, pp
71 - 76.

[Gjessing and Nygaard, 1988]. S. Gjessing and K. Nygaard, ECOOP '88:
Proceedings of the European Conference on Object-Oriented Programming,
Lecture Note on Computer Science, Volume 322, Springer Verlag, New
York, New York, 1988.

[Kim and Lochovsky, 1989]. W. Kim and F. Lochovsky, Object-Oriented
Concepts, Databases, and Applications, ACM Press/Addison Wesley,
Reading, Massachusetts, 1989.

[Millikin, 1989]. M.D. Millikin, "Object Orientation: What It Can Do
For You," ComputerWorld, Vol. 23, No. 11. March 13, 1989, pp. 103 -
113.

[Peterson, 1987a]. G.E. Peterson, Tutorial: Object-Oriented Computing,
Volume 1: Concepts, IEEE Catalog Number EH0257-6, IEEE Computer
Society Press, Washington, D.C., 1987.

[Peterson, 1987b]. G.E. Peterson, Tutorial: Object-Oriented Computing,
Volume 2: Implementations, IEEE Catalog Number EH0257-6, IEEE Computer
Society Press, Washington, D.C., 1987.

[Shriver and Wegner, 1987]. B. Shriver and P. Wegner, Editors,
Research Directions in Object-Oriented Programming, The MIT Press,
Cambridge, Massachusetts, 1987.

QA482

Valid for 2.0, 3.0