Beautiful code

How do the experts solve difficult problems in software development? In this unique and insightful book, leading computer scientists offer case studies that reveal how they found unusual, carefully designed solutions to high-profile projects. You will be able to look over the shoulder of major codin...

Descripción completa

Detalles Bibliográficos
Otros Autores: Oram, Andy, author (author), Oram, Andrew (-), Wilson, Greg, 1963-
Formato: Libro electrónico
Idioma:Inglés
Publicado: North Sebastapol, California ; Farnham : O'Reilly 2007
Edición:1st edition
Colección:Theory in practice
Theory in practice (Sebastopol, California)
Materias:
Ver en Biblioteca Universitat Ramon Llull:https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009626982606719
Tabla de Contenidos:
  • Contents; Foreword; Preface; How This Book Is Organized; Conventions Used in This Book; Using Code Examples; How to Contact Us; Safari® Enabled; A Regular Expression Matcher; The Practice of Programming; Implementation; Discussion; Alternatives; Building on It; Conclusion; Subversion's Delta Editor: Interface As Ontology; Version Control and Tree Transformation; Expressing Tree Differences; The Delta Editor Interface; But Is It Art?; Abstraction As a Spectator Sport; Conclusions; The Most Beautiful Code I Never Wrote; The Most Beautiful Code I Ever Wrote; More and More with Less and Less
  • PerspectiveA Bonus Analysis; What Is Writing?; Conclusion; Acknowledgments; Finding Things; On Time; Problem: Weblog Data; Regular Expressions; Putting Regular Expressions to Work; Content-Addressable Storage; Time to Optimize?; Problem: Who Fetched What, When?; Binary Search; Binary Search Trade-offs; Escaping the Loop; Search in the Large; Searching with Postings; Ranking Results; Searching the Web; Conclusion; Correct, Beautiful, Fast (in That Order): Lessons from Designing XML Verifiers; The Role of XML Validation; The Problem; Version 1: The Naïve Implementation
  • Version 2: Imitating the BNF Grammar O(N)Version 3: First Optimization O(log N); Version 4: Second Optimization: Don't Check Twice; Version 5: Third Optimization O(1); Version 6: Fourth Optimization: Caching; The Moral of the Story; Framework for Integrated Test: Beauty Through Fragility; An Acceptance Testing Framework in Three Classes; The Challenge of Framework Design; An Open Framework; How Simple Can an HTML Parser Be?; Conclusion; Beautiful Tests; That Pesky Binary Search; Introducing JUnit; Nailing Binary Search; Smoking Allowed (and Encouraged); Pushing the Boundaries
  • Random Acts of TestingPerformance Anxiety; Conclusion; On-the-Fly Code Generation for Image Processing; Top Down Operator Precedence; JavaScript; Symbol Table; Tokens; Precedence; Expressions; Infix Operators; Prefix Operators; Assignment Operators; Constants; Scope; Statements; Functions; Array and Object Literals; Things to Do and Think About; The Quest for an Accelerated Population Count; Basic Methods; Divide and Conquer; Other Methods; Sum and Difference of Population Counts of Two Words; Comparing the Population Counts of Two Words; Counting the 1-Bits in an Array; Applications
  • Secure Communication: The Technology Of FreedomThe Heart of the Start; Untangling the Complexity of Secure Messaging; Usability Is the Key; The Foundation; Design Goals and Decisions; Basic System Design; The Test Suite; The Functioning Prototype; Clean Up, Plug In, Rock On...; Revamping the Mail Store; Persistence of Decryption; Hacking in the Himalayas; Securing the Code; Auditing Crypt::GPG; The Invisible Hand Moves; Speed Does Matter; Communications Privacy for Individual Rights; Hacking the Civilization; Growing Beautiful Code in BioPerl; BioPerl and the Bio::Graphics Module
  • Example of Bio::Graphics Output