𝔖 Scriptorium
✦   LIBER   ✦

πŸ“

Program Development in Java: Abstraction, Specification, and Object-Oriented Design

✍ Scribed by John Guttag & Barbara Liskov [John Guttag]


Publisher
Addison-Wesley Professional
Year
2000
Tongue
English
Category
Library

⬇  Acquire This Volume

No coin nor oath required. For personal study only.

✦ Synopsis


Written by a world-renowned expert on
programming methodology, and the winner of the 2008 Turing
Award,Β this book shows how to build production-quality
programs--programs that are reliable, easy to maintain, and quick
to modify. Its emphasis is on modular program construction: how to
get the modules right and how to organize a program as a collection
of modules. The book presents a methodology effective for either an
individual programmer, who may be writing a small program or a
single module in a larger one; or a software engineer, who may be
part of a team developing a complex program comprised of many
modules. Both audiences will acquire a solid foundation for
object-oriented program design and component-based software
development from this methodology.

Because each module in a program corresponds
to an abstraction, such as a collection of documents or a routine
to search the collection for documents of interest, the book first
explains the kinds of abstractions most useful to programmers:
procedures; iteration abstractions; and, most critically, data
abstractions. Indeed, the author treats data abstraction as the
central paradigm in object-oriented program design and
implementation. The author also shows, with numerous examples, how
to develop informal specifications that define these
abstractions--specifications that describe what the modules do--and
then discusses how to implement the modules so that they do what
they are supposed to do with acceptable performance.

Other topics discussed include:

  • Encapsulation and the need for an implementation to provide the
    behavior defined by the specification

  • Tradeoffs between simplicity and performance

  • Techniques to help readers of code understand and reason about
    it, focusing on such properties as rep invariants and abstraction
    functions

  • Type hierarchy and its use in defining families of related data
    abstractions

  • Debugging, testing, and requirements analysis

  • Program design as a top-down, iterative process, and design
    patterns

  • The Java programming language is used for
    the book's examples. However, the techniques presented are language
    independent, and an introduction to key Java concepts is included
    for programmers who may not be familiar with the language.


    πŸ“œ SIMILAR VOLUMES


    Program Development in Java: Abstraction
    ✍ Barbara Liskov, John Guttag πŸ“‚ Library πŸ“… 2000 πŸ› Addison-Wesley Professional 🌐 English

    Written by a world-renowned expert on programming methodology, and the winner of the 2008 Turing Award,Β this book shows how to build production-quality programs--programs that are reliable, easy to maintain, and quick to modify. Its emphasis is on modular program construction: how to get the modules

    Program Development in Java Abstraction,
    ✍ Ekelund, Robert B.; Guttag, John V.; Liskov, Barbara πŸ“‚ Library πŸ“… 2000 πŸ› Addison Wesley Professional, Pearson Education [Di 🌐 English

    Written by a world-renowned expert on programming methodology, and the winner of the 2008 Turing Award, this book shows how to build production-quality programs--programs that are reliable, easy to maintain, and quick to modify. Its emphasis is on modular program construction: how to get the modules

    Object-oriented Programming in C# for C
    ✍ NΓΈrmark Kurt. πŸ“‚ Library 🌐 English

    Aalborg University, Denmark, 2010. β€” 479 p.<div class="bb-sep"></div>This is a teaching material about object-oriented programming, illustrated with use of the programming language C#. The initial version was written i 2006.<br/>It is assumed, as a prerequisite, that the readers have some knowledge

    Object-Oriented Programming and Java
    ✍ Danny Poo, Derek Kiong, Swarnalatha Ashok πŸ“‚ Library πŸ“… 2007 πŸ› Springer 🌐 English

    Object-Oriented Programming and Java presents two important topics in contemporary software development: object-oriented programming and Java. This book takes a different teaching approach from most available literature, it begins with the description of real-world object interaction scenarios and e

    Object-Oriented Programming and Java
    ✍ Danny Poo, Derek Kiong, Swarnalatha Ashok πŸ“‚ Library πŸ“… 2007 πŸ› Springer 🌐 English

    Object-Oriented Programming and Java presents two important topics in contemporary software development: object-oriented programming and Java. This book takes a different teaching approach from most available literature, it begins with the description of real-world object interaction scenarios and e

    Object-Oriented Programming and Java
    ✍ Danny Poo, Derek Kiong, Swarnalatha Ashok πŸ“‚ Library πŸ“… 2007 πŸ› Springer 🌐 English

    <P>Object-Oriented Programming and Java presents two important topics in contemporary software development: object-oriented programming and Java. This book takes a different teaching approach from most available literature, it begins with the description of real-world object interaction scenarios an