Refactoring to Patterns
Joshua Kerievsky - 2004
In 1999, "Refactoring" revolutionized design by introducing an effective process for improving code. With the highly anticipated " Refactoring to Patterns ," Joshua Kerievsky has changed our approach to design by forever uniting patterns with the evolutionary process of refactoring.This book introduces the theory and practice of pattern-directed refactorings: sequences of low-level refactorings that allow designers to safely move designs to, towards, or away from pattern implementations. Using code from real-world projects, Kerievsky documents the thinking and steps underlying over two dozen pattern-based design transformations. Along the way he offers insights into pattern differences and how to implement patterns in the simplest possible ways.Coverage includes: A catalog of twenty-seven pattern-directed refactorings, featuring real-world code examples Descriptions of twelve design smells that indicate the need for this book s refactorings General information and new insights about patterns and refactoringDetailed implementation mechanics: how low-level refactorings are combined to implement high-level patterns Multiple ways to implement the same pattern and when to use each Practical ways to get started even if you have little experience with patterns or refactoring"Refactoring to Patterns" reflects three years of refinement and the insights of more than sixty software engineering thought leaders in the global patterns, refactoring, and agile development communities. Whether you re focused on legacy or greenfield development, this book will make you a better software designer by helping you learn how to make important design changes safely and effectively. "
Growing Object-Oriented Software, Guided by Tests
Steve Freeman - 2009
This one's a keeper." --Robert C. Martin "If you want to be an expert in the state of the art in TDD, you need to understand the ideas in this book."--Michael Feathers Test-Driven Development (TDD) is now an established technique for delivering better software faster. TDD is based on a simple idea: Write tests for your code before you write the code itself. However, this simple idea takes skill and judgment to do well. Now there's a practical guide to TDD that takes you beyond the basic concepts. Drawing on a decade of experience building real-world systems, two TDD pioneers show how to let tests guide your development and "grow" software that is coherent, reliable, and maintainable. Steve Freeman and Nat Pryce describe the processes they use, the design principles they strive to achieve, and some of the tools that help them get the job done. Through an extended worked example, you'll learn how TDD works at multiple levels, using tests to drive the features and the object-oriented structure of the code, and using Mock Objects to discover and then describe relationships between objects. Along the way, the book systematically addresses challenges that development teams encounter with TDD--from integrating TDD into your processes to testing your most difficult features. Coverage includes - Implementing TDD effectively: getting started, and maintaining your momentum throughout the project - Creating cleaner, more expressive, more sustainable code - Using tests to stay relentlessly focused on sustaining quality - Understanding how TDD, Mock Objects, and Object-Oriented Design come together in the context of a real software development project - Using Mock Objects to guide object-oriented designs - Succeeding where TDD is difficult: managing complex test data, and testing persistence and concurrency
Programming in Go: Creating Applications for the 21st Century
Mark Summerfield - 2012
With this guide, pioneering Go programmer Mark Summerfield shows how to write code that takes full advantage of Go's breakthrough features and idioms. Both a tutorial and a language reference, "Programming in Go" brings together all the knowledge you need to evaluate Go, think in Go, and write high-performance software with Go. Summerfield presents multiple idiom comparisons showing exactly how Go improves upon older languages, calling special attention to Go's key innovations. Along the way, he explains everything from the absolute basics through Go's lock-free channel-based concurrency and its flexible and unusual duck-typing type-safe approach to object-orientation. Throughout, Summerfield's approach is thoroughly practical. Each chapter offers multiple live code examples designed to encourage experimentation and help you quickly develop mastery. Wherever possible, complete programs and packages are presented to provide realistic use cases, as well as exercises. Coverage includes:-- Quickly getting and installing Go, and building and running Go programs -- Exploring Go's syntax, features, and extensive standard library -- Programming Boolean values, expressions, and numeric types -- Creating, comparing, indexing, slicing, and formatting strings -- Understanding Go's highly efficient built-in collection types: slices and maps -- Using Go as a procedural programming language -- Discovering Go's unusual and flexible approach to object orientation -- Mastering Go's unique, simple, and natural approach to fine-grained concurrency -- Reading and writing binary, text, JSON, and XML files -- Importing and using standard library packages, custom packages, and third-party packages -- Creating, documenting, unit testing, and benchmarking custom packages
Information is Beautiful
David McCandless - 2001
We need a brand new way to take it all in. 'Information is Beautiful' transforms the ideas surrounding and swamping us into graphs and maps that anyone can follow at a single glance.
Business Analysis Methodology Book
Emrah Yayici - 2015
A real life case study with sample project documents and diagrams is used to more practically explain these international tools, techniques, and lean principles to a broad range of practitioners, including: - Business analysts, systems analysts, developers and project managers - Entrepreneurs, product owners and product managers - Consultants, UX designers and marketing specialists - C-suite executives, investors and managers of companies of all sizes.
Code Complete
Steve McConnell - 1993
Now this classic book has been fully updated and revised with leading-edge practices--and hundreds of new code samples--illustrating the art and science of software construction. Capturing the body of knowledge available from research, academia, and everyday commercial practice, McConnell synthesizes the most effective techniques and must-know principles into clear, pragmatic guidance. No matter what your experience level, development environment, or project size, this book will inform and stimulate your thinking--and help you build the highest quality code. Discover the timeless techniques and strategies that help you: Design for minimum complexity and maximum creativity Reap the benefits of collaborative development Apply defensive programming techniques to reduce and flush out errors Exploit opportunities to refactor--or evolve--code, and do it safely Use construction practices that are right-weight for your project Debug problems quickly and effectively Resolve critical construction issues early and correctly Build quality into the beginning, middle, and end of your project
CompTIA A+ Certification All-in-One Exam Guide, Exams 220-901 & 220-902
Mike Meyers - 2014
New topics include managing and maintaining cellular devices, including tablets; configuring operating systems, including Windows 8, Android, and iOS; and enhanced, mobile-centered security and troubleshooting procedures. The All-in-One Exam Guide enables you to take the test with complete confidence. It also serves as a practical reference for IT support and technical personnel.
Bonus electronic content includes:
Practice exams with hundreds of accurate questions More than an hour of video training featuring Mike Meyers Performance-based simulations that prepare you for the performance-based questions on the exam A collection of Mike's favorite free PC tools
Key Features include:
Written with the “in the trenches” voice and clarity Mike Meyers is known for Features pre-assessment tests, exam tips, and “Try This!” sections to reinforce difficult topics Includes a coupon for 10% off of the exam fee, a $37 value
Digital Expressions: Creating Digital Art with Adobe Photoshop Elements
Susan Tuttle - 2010
Now imagine expressing that dream artistically. With Digital Expressions you can take ordinary photos and, with the help of Adobe Photoshop Elements, voice your flights of fancy. Digital Expressions guides you through 25 digital art projects created with Adobe Photoshop Elements. With this easy-to-follow guide, you'll get inspired to tackle all kinds of digital mixed-media techniques using stock photography, custom brushes, textured backgrounds and your own digital photos. Use your digital palette to:· Manipulate single images by adding texture layers, color fills and text· Re-create the look of traditional art like drawings and abstract paintings· Build collages using transparent layers and photo filters· Blend seamless montages with various effects · Incorporate your own traditional art into digital worksMixed-media artists, art journalers and scrapbookers alike can turn the ordinary into extraordinary! Express yourself in digital form as you learn to master creative digital art techniques. **Bonus CD includes assorted brushes, photos and textures you can use to create on your own digital canvas.** PLEASE NOTE that one of the images was left off of the CD by mistake. You can download it from the "Books" section of the author's website at ilkasattic.com**
Head First Design Patterns
Eric Freeman - 2004
At any given moment, somewhere in the world someone struggles with the same software design problems you have. You know you don't want to reinvent the wheel (or worse, a flat tire), so you look to Design Patterns--the lessons learned by those who've faced the same problems. With Design Patterns, you get to take advantage of the best practices and experience of others, so that you can spend your time on...something else. Something more challenging. Something more complex. Something more fun. You want to learn about the patterns that matter--why to use them, when to use them, how to use them (and when NOT to use them). But you don't just want to see how patterns look in a book, you want to know how they look "in the wild". In their native environment. In other words, in real world applications. You also want to learn how patterns are used in the Java API, and how to exploit Java's built-in pattern support in your own code. You want to learn the real OO design principles and why everything your boss told you about inheritance might be wrong (and what to do instead). You want to learn how those principles will help the next time you're up a creek without a design pattern. Most importantly, you want to learn the "secret language" of Design Patterns so that you can hold your own with your co-worker (and impress cocktail party guests) when he casually mentions his stunningly clever use of Command, Facade, Proxy, and Factory in between sips of a martini. You'll easily counter with your deep understanding of why Singleton isn't as simple as it sounds, how the Factory is so often misunderstood, or on the real relationship between Decorator, Facade and Adapter. With Head First Design Patterns, you'll avoid the embarrassment of thinking Decorator is something from the "Trading Spaces" show. Best of all, in a way that won't put you to sleep! We think your time is too important (and too short) to spend it struggling with academic texts. If you've read a Head First book, you know what to expect--a visually rich format designed for the way your brain works. Using the latest research in neurobiology, cognitive science, and learning theory, Head First Design Patterns will load patterns into your brain in a way that sticks. In a way that lets you put them to work immediately. In a way that makes you better at solving software design problems, and better at speaking the language of patterns with others on your team.
Los Logos: A Selected LOGO Collection
Nicholas Bourquin - 2002
Often deceptively simple, the task of a logo is hardly ever an easy one--via extreme reduction it needs to radically and perfectly distill an image or message into a simple, easily recognizable icon.Assembling the works of designers from around the globe this substantial volume contains an incredible wealth of pictorial representations, providing a broad overview of contemporary logo design of cutting edge designers.
Organize Your Genealogy in Evernote in 10 Easy Steps
Lorine McGinnis Schulze - 2014
You will learn how to create notes, how to create stacks, how to set up a hierarchical structure for tags, how to create virtual genealogy binders, easy ways to transfer your computer files into an Evernote Note, and more. You will be able to follow each step to create your own Genealogy Binders full of your research (documents, photos, audio files, and more) on all your ancestors. Your Genealogy files will be organized, easily accessible and readily available to share with others if desired.
The Dresden Dolls Companion
Amanda Palmer - 2006
This Boston-based alternative pop/German-like cabaret duo hand-designed this book which includes art, photos, commentary and 11 songs from their 2004 release. Songs included are: Bad Habit * Coin Operated Boy * Girl Anachronism * Good Day * Gravity * Half Jack * The Jeep Song * Missed Me *Perfect Fit * Slide * Truce.
Bob Dylan Revisited
Thierry Murat - 2008
Mesmerized by the power of his lyrics and intrigued by the possibilities of translating his powerful, enigmatic personality into art, thirteen leading graphic artists banded together to create this unusual testament to the universality and transcendent vision of an American musical genius. With their vibrant, unexpected colors and dynamic, cinematic imagery, this group has assembled in Bob Dylan Revisited one of the most provocative interpretations of Dylan’s music in decades. These artists capture the tender emotions, the ineffable sadness, and the romantic overtones of Dylan’s classic songs, at the same time reflecting the moral and political urgency of his music. Each artist’s style surprisingly complements Dylan’s lyrics and offers an irresistible window through which to reconsider one of America’s most enigmatic artists. A deeply respectful and brilliant homage to the extraordinary influence of Bob Dylan.
The Cult of Mac
Leander Kahney - 2004
Apple's machines have legions of loyal, sometimes demented fans. The Cult of Mac surveys the devoted following that has grown up around Macintosh computers. Like fans of a football team or a rock group, Macintosh fanatics have their own subculture, with clearly defined obsessions, rites, and passages. Famously dedicated to their computers, many Mac fans eat, sleep, and breathe the Macintosh. Fans who get Mac tattoos and haircuts, people who attend Apple Store openings like they are Grateful Dead shows, counterculture icons who love the Mac, people who turn old Macs into aquariums (or bongs), Ellen Fein lookalike contests, erotic fiction featuring Steve Jobs; it's all here. Technology reporter Leander Kahney exposes all sides of Mac fanaticism, from the innocuous to the insane.
A Short Course in Digital Photography
Barbara London - 2009
"The London, Upton, Stone series has helped over 1,000,000 photography students capture their potential. After a very successful first edition, this second edition returns with the most up-to-date industry knowledge. Modeled after the long-running and widely used "A ""Short Course in Photography, " a brief text which presents the medium entirely in its most updated form.