Dòng Nội dung
1
An introduction to object-oriented programming with Java / C. Thomas Wu
Boston : McGraw-Hill, 1999
987 p : ill. ; 23 cm

An introductory text for beginners with no background in programming, this book teaches students how to write object-oriented programs and is appropriate for any first programming course in Java

2
3
Objective-C for iPhone developers : a beginner s guide / James A. Brannan.
New York : McGraw-Hill, 2010
365 p. : ill. ; 23 cm.



4
Object-oriented and classical software engineering / Stephen R Schach.
New York : McGraw-Hill, 2011
xix, 667 p. : ill. ; 25 cm.

Using detailed case studies to show the object-oriented approach to software engineering, Object-Oriented and Classical Software Engineering, Eighth Edition presents an excellent introduction to software engineering fundamentals. The book covers both traditional and object-oriented techniques.

5
Program development in Java : abstraction, specification, and object-oriented design / Barbara Liskov, John Guttag
Boston : Addison-Wesley, 2001
XIX, 443 p. : ill. ; 29 cm.

Of all the books that have sought to explain object-oriented, component-based development, this one is unique in its clarity. MIT Professor Barbara Liskov presents a start-to-finish methodology for constructing reliable, understandable, easy-to-maintain Java software.Developers will learn exactly how to decompose a programming problem into its key elements, and then build an optimal program from independent modules -- crucial for success in large-scale, team development projects. Liskov masterfully introduces key concepts of abstraction, specification, and object-oriented design in the context of small programs; then scales the techniques up to enterprise-class development, where they work equally well. The book includes detailed coverage of developing and writing accurate specifications; optimizing tradeoffs between simplicity and performance; and making code easier to evaluate, debug, and test. In the second half of the book, Liskov focuses on modular development of large-scale programs: discovering useful abstractions, program design, analysis, implementation, testing, and the value of design patterns. All examples are based on Java (though the concepts are equally applicable to any object-based language)