undrgrnd Cliquez ici Toys NEWNEEEW nav-sa-clothing-shoes Cloud Drive Photos FIFA16 cliquez_ici Rentrée scolaire Shop Fire HD 6 Shop Kindle Paperwhite cliquez_ici Jeux Vidéo
Program Development in Java et plus d'un million d'autres livres sont disponibles pour le Kindle d'Amazon. En savoir plus
  • Tous les prix incluent la TVA.
Il ne reste plus que 2 exemplaire(s) en stock (d'autres exemplaires sont en cours d'acheminement).
Expédié et vendu par Amazon.
Emballage cadeau disponible.
Quantité :1
Program Development in Ja... a été ajouté à votre Panier
+ EUR 2,99 (livraison)
D'occasion: Bon | Détails
Vendu par Deal FR
État: D'occasion: Bon
Commentaire: Ce livre a été lu mais il est toujours en bon état. 100% garanti.
Vous l'avez déjà ?
Repliez vers l'arrière Repliez vers l'avant
Ecoutez Lecture en cours... Interrompu   Vous écoutez un extrait de l'édition audio Audible
En savoir plus
Voir les 2 images

Program Development in Java: Abstraction, Specification, and Object-Oriented Design (Anglais) Relié – 6 juin 2000

Voir les formats et éditions Masquer les autres formats et éditions
Prix Amazon Neuf à partir de Occasion à partir de
Format Kindle
"Veuillez réessayer"
"Veuillez réessayer"
EUR 66,40
EUR 66,40 EUR 43,64

Livres anglais et étrangers
Lisez en version originale. Cliquez ici

Offres spéciales et liens associés

Produits fréquemment achetés ensemble

Program Development in Java: Abstraction, Specification, and Object-Oriented Design + Algorithmique - 3ème édition - Cours avec 957 exercices et 158 problèmes
Prix pour les deux : EUR 131,40

Acheter les articles sélectionnés ensemble

Descriptions du produit

Quatrième de couverture

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.

Biographie de l'auteur

Barbara Liskov is professor of computer science at MIT. Well known for her contributions to programming methodology and software engineering, she is co-author (with John Guttag) of the influential book, Abstraction and Specification in Program Development. Barbara is the recipient of the 2008 A.M. Turing Award, one of the highest honors in science and engineering.


Détails sur le produit

En savoir plus sur l'auteur

Découvrez des livres, informez-vous sur les écrivains, lisez des blogs d'auteurs et bien plus encore.

Commentaires en ligne

Il n'y a pas encore de commentaires clients sur Amazon.fr
5 étoiles
4 étoiles
3 étoiles
2 étoiles
1 étoiles

Commentaires client les plus utiles sur Amazon.com (beta)

Amazon.com: 13 commentaires
44 internautes sur 46 ont trouvé ce commentaire utile 
Excellent OO book 12 juillet 2000
Par John P. Bindel - Publié sur Amazon.com
Format: Relié Achat vérifié
Even though "Java" is mentioned in the title of this book, it is not a book on programming in Java. It is much better than that. Plenty of books exist to teach the syntax of Java already; this book provides excellent discussions on designing good programming modules (e.g. classes) that are cohesive units without undesired coupling to other modules in one's design. The discussions of the concepts of mutability, representation-invariants, adequacy, and object specifications are the best I have seen, and Liskov uses these concepts to show how to build extensible classes. This book also has good information about the whole process of developing software; it does not focus on coding, but it does discuss implementing key concepts using Java as the implementation language.
This book is not the Java version of some C++ book, but is an excellent software design and development book updated to use Java instead of a custom language called CLU that was used in the previous version. Those looking for a book on good Java usage should check out _Practical_Java_ by Haggar or something similar.
8 internautes sur 8 ont trouvé ce commentaire utile 
Great book! 18 août 2003
Par Un client - Publié sur Amazon.com
Format: Relié
This is one of the best Computer Science books I have read. It is one of those books where every word is worth reading. And it is so concise. After reading this book, I understood clearly what exceptions were, how good design is done, etc. Also, the fundamental concepts like abstraction, decomposition, etc are so brilliantly described that you will never be hazy about them again. The most favourite topic of mine is the procedural SPECIFICATION part using the REQUIRES, MODIFIES, EFFECTS clauses. It really helped me see how procedures are specified.
Finally, a word of caution. This is not a book for beginners or for those who are looking for learning Java syntax for writing toy programs. If you have been programming in a OO language (any OO language)for some time and have been using terms like abstraction, design etc without FULLY understanding them, or if you want to learn how to methodically approach the programming process, this book is indispensable!
Thanks you Prof. Liskov, I learnt so much from your book.
10 internautes sur 11 ont trouvé ce commentaire utile 
A book more students should use 13 octobre 2003
Par wiredweird - Publié sur Amazon.com
Format: Relié
Barbara Liskov brings name recogntion the text. Respect comes for reasons, though, and this book shows many good reasons for respecting this educator and her co-author.
This would be a good book for a second or third course in comptuer science. Even so, seasoned pros should take this book seriously. The reader is assumed to be familiar with basic programming and data structures. The reader is also assumed to be familiar with Java - "development in Java" means that Java is the vehicle, not the topic being taught.
Techniques in this book are a level above the most concrete. It's premise is that any piece of code must be viewed in many different ways; right and wrong answers are the least of it. The book starts with a simple but rigorous set of commenting conventions - it makes one wish for a truly rigorous programming language. For each method, one specifies its prerequisites or assumptions, the set of objects with state chaged by the method, and the specifics of the change being made. The authors focus clearly on ambiguous specification at this level; explicitly undefined behavior has a valid role in many rigorous designs. This leads naturally to discussion of parameter checking, error handling, and proper use of thrown exceptions.
The authors develop a few unusual but critical ideas, including mutability - the possibility that an objects data content can change after creation. In well-disciplined programs, this property has far-reaching implications. Liskov and Guttag involve mutability in equality testing, object identity vs. data equality, and valid naming or indexing.
Encapsulation and data hiding have long been design staples, but the authors' examination keeps the idea fresh. They discuss, from the standpoint of provable correctness, how data exposure puts programs at risk. They also make clear how, viewed with an eye to maintainability, the risks of even read-only exposure of an object's data content. They stop short of discussing true formal verification or industrial practice, though, a decision I think appropriate to the book's level. Readers with deeper knowledge can still appreciate the discussion at its implicitly deeper levels.
By the time the authors address high-level system specification, it seems almost obvious. Without high-level specification, there would be no way to fill in the more detailed specifications that now come naturally to the reader. The authors also address that tricky moment between specification and implementation: the intuitive process of design.
Only the end of the book disappointed me, a half-hearted presentation of design patterns. It seems almost perfuctory, presenting DPs just because it's the done thing, not because the authors add their usual depth to the topic.
I really wish I had more upper-level students and professional colleagues who had been trained according to these authors' program. Their software designs, as students and as professionals, would be stronger and safer if they had.
9 internautes sur 11 ont trouvé ce commentaire utile 
An excellent book to start becoming an expert in Java 16 juillet 2003
Par reza iqbal - Publié sur Amazon.com
Format: Relié
I have some problems understanding inheritance and other OO terms. This book teach not only the meaning of those term but also teach the advantages and how to use them. After reading this book, i know why those term is very important (inheritance, abstraction, etc) and can use it in my programming life.
If you'd like to become java expert, buy this book.
Poorly written and incoherent 5 février 2015
Par Mark - Publié sur Amazon.com
Format: Relié Achat vérifié
I purchased this book six years ago to prepare for a graduate comprehensive exam. Since then, I used it to look up a few concepts and some examples. This book is very poorly written, and I wouldn't recommend it to anybody trying to learn the theory or practice of programming, Java, object-oriented design, software construction, software architecture or any other related subject.

This book is not a Java programming book and it is not a software construction book, per se. It's an attempt to explain abstraction and specification in general, and how they are done in object-oriented design using Java as the language of choice.

The book is somewhat incoherent. It starts with a good short introduction on a certain subject, say Type Hierarchy or Polymorphism, but then it fails to connect that introduction to the discussion in the following section. In many cases, even going from one paragraph to the next, you feel that something is missing. The examples themselves are easy to follow because they are very simple, but the way they are used to explain the concept is very poorly done.

If you're a student and you are required to purchase this book as a textbook, then you have no choice. However, if you have a choice look elsewhere.

Ces commentaires ont-ils été utiles ? Dites-le-nous


Souhaitez-vous compléter ou améliorer les informations sur ce produit ? Ou faire modifier les images?