- Copertina flessibile: 454 pagine
- Editore: O'Reilly Media; 1 edizione (22 maggio 2007)
- Lingua: Inglese
- ISBN-10: 0596529260
- ISBN-13: 978-0596529260
- Peso di spedizione: 612 g
- Posizione nella classifica Bestseller di Amazon: n. 220.691 in Libri in altre lingue (Visualizza i Top 100 nella categoria Libri in altre lingue)
- Visualizza indice completo
RESTful Web Services (Inglese) Copertina flessibile – 22 mag 2007
|Nuovo a partire da||Usato da|
"Ti preghiamo di riprovare"
Chi ha acquistato questo articolo ha acquistato anche
Descrizione del libro
Web services for the real world
Leonard Richardson (http://www.crummy.com/) is the author of the Ruby Cookbook (O'Reilly) and of several open source libraries, including Beautiful Soup. A California native, he currently lives in New York.
Sam Ruby is a prominent software developer who has made significant contributions to the many of the Apache Software Foundation's open source projects, and to the standardization of web feeds via his involvement with the Atom web feed standard and the popular Feed Validator web service.He currently holds a Senior Technical Staff Member position in the Emerging Technologies Group of IBM. He resides in Raleigh, North Carolina.
Non è necessario possedere un dispositivo Kindle. Scarica una delle app Kindle gratuite per iniziare a leggere i libri Kindle sul tuo smartphone, tablet e computer.
Per scaricare una app gratuita, inserisci il numero di cellulare.
Garanzia e recesso: Se vuoi restituire un prodotto entro 30 giorni dal ricevimento perché hai cambiato idea, consulta la nostra pagina d'aiuto sul Diritto di Recesso. Se hai ricevuto un prodotto difettoso o danneggiato consulta la nostra pagina d'aiuto sulla Garanzia Legale. Per informazioni specifiche sugli acquisti effettuati su Marketplace consulta… Maggiori informazioni la nostra pagina d'aiuto su Resi e rimborsi per articoli Marketplace.
Se sei un venditore per questo prodotto, desideri suggerire aggiornamenti tramite il supporto venditore?
Le recensioni clienti più utili su Amazon.com (beta) (Potrebbero essere presenti recensioni del programma "Early Reviewer Rewards")
- Provides rigorous (and somewhat academic) description of RESTful-ness and Resource Oriented Architecture (ROA)
- Wonderful book if you have complex and large data
- This book is great for intended audiences:
-- web app/service architect/designers
-- who have complex / large data
-- who are looking to surface those data via web service and web applications
-- who think good organization is very very important (a little bit of OCD would help :)
- Not wonderful book if you do not have complex and large data
- It would be boring or irrelevant for:
-- a reader who doesn't satisfy any of the above criteria
The authors are geniuses and have deep knowledge on the whole web space. They also have firm idea on how web-apps and web-services have to be designed to make the entire web better organized, while (almost succeeding in) not being a religious fanatic on the design principles. Hence their presentation is deep and insightful. It opens up your eyes on simple, yet overarching principles of web (HTTP, URI, ...) and teaches you how considering RESTful-ness would improve your web service / app architecture.
Like some geniuses, there writing style could be sometimes lengthy and pedantic, not compact. But their writing is still crisp and precise. Academic-degree preciseness. That may be why some are put off by this book but I view it as a small price to pay to learn from their wisdom.
I found this book while designing REST API to use for our existing web application. Our web-app is a niche player, but very large and complex system and I was looking to add REST API to make the whole system more "modern". I had some doubt about the book from reading some of negative reviews, but after I completed reading it (on kindle during 8-hour flight), I was sold. The book answered my short term questions, and something much, much bigger and fundamental: RESTful way of looking at web service and applications. It actually convinced me that our web-app could have been designed much better had we known of RESTful / ROA principles and applied them early on. I definitely will remember to re-read this book when our web app/service project comes along.
I do think he could have covered more about what to do with large return data sets -- he briefly mentioned using a page arg in the query string, like google's search results uses, and returning "next" link in the response to help the client know how to get to the next page. But, he also says an Atom feed is a good way of providing lists of other resources, although an Atom feed doesn't provide a paging mechanism nor a way to link to the next page at the end of your current page. I wish he took these concepts further to suggest to the developer how he could provide paging of large returned data sets that you'd typically have with collections of a large number of resources of a particular type.
One thing he did not touch on at all was the disagreement out there on whether a PUT to an existing resource should always completely replace the entire resource, or modify just the properties of that resource that were sent in the body of the PUT, or some combination of both. I lean towards a PUT defaulting to replacing the entire resource (or failing if you're not allowed to replace a resource), and optionally using query string args to control how the existing resource is modified. If you look at the growing OSLC specifications, their strategy is to have query strings that say which properties are being updated for an existing resource.
And, if a PUT is updating an existing resource, you'd want to do a GET of it first, remember the ETag, then do a PUT while passing the header If-Match: <that-etag>. That helps deal with conflicts from simultaneous updates from multiple clients.
I also had some issues with his URI design choices for his fake "map" service. Map type and scale should not be part of the path; they are really more appropriate as part of the query string. The path is referring to the same map location regardless of the map type or scale.
And finally, the Ruby examples were very distracting and completely unnecessary. I don't know Ruby, so I found it painful trying to figure out what the strange-looking syntax was really doing. To explain REST, it is not necessary to give Ruby examples... it is sufficient to explain what the URI, headers, entity-body and HTTP return status code look like. Which, fortunately, he DID do, making his own examples unnecessary. Any good developer can readily write HTTP and XML code in the language he needs to use; it isn't that difficult. So, no need to focus on one language. I'd give it 5 stars except for this annoyance, so that's why I give it 4 stars.
I definitely recommend this book despite a few of the negatives.
If you've used SOAP and/or other Web Services-related technologies/schemas/etc. etc. etc. you should have no problem following this. For beginners, however, it is definitely not the place to start. You will need to read-up a bit more on Web Services in general and some of the options and practices out there.
The repetition in the book isn't so bad. It drives home a lot of good points and covers quite a bit of in-depth information (sometimes too much, but it has come in handy when talking with other professionals/engineers).
To work with Web Services and not have at least glanced over this book would be a huge mistake. Just be careful: it may take you a while to get through. It does get a little boring from time to time.