Browse all books

Books published by publisher Addison-Wesley Professional

  • Design Patterns: Elements of Reusable Object-Oriented Software

    Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, Grady Booch

    Hardcover (Addison-Wesley Professional, Nov. 10, 1994)
    Capturing a wealth of experience about the design of object-oriented software, four top-notch designers present a catalog of simple and succinct solutions to commonly occurring design problems. Previously undocumented, these 23 patterns allow designers to create more flexible, elegant, and ultimately reusable designs without having to rediscover the design solutions themselves. The authors begin by describing what patterns are and how they can help you design object-oriented software. They then go on to systematically name, explain, evaluate, and catalog recurring designs in object-oriented systems. With Design Patterns as your guide, you will learn how these important patterns fit into the software development process, and how you can leverage them to solve your own design problems most efficiently. Each pattern describes the circumstances in which it is applicable, when it can be applied in view of other design constraints, and the consequences and trade-offs of using the pattern within a larger design. All patterns are compiled from real systems and are based on real-world examples. Each pattern also includes code that demonstrates how it may be implemented in object-oriented programming languages like C++ or Smalltalk.
  • Learn Python 3 the Hard Way: A Very Simple Introduction to the Terrifyingly Beautiful World of Computers and Code

    Zed A. Shaw

    Paperback (Addison-Wesley Professional, July 7, 2017)
    You Will Learn Python 3! Zed Shaw has perfected the world’s best system for learning Python 3. Follow it and you will succeed—just like the millions of beginners Zed has taught to date! You bring the discipline, commitment, and persistence; the author supplies everything else. In Learn Python 3 the Hard Way, you’ll learn Python by working through 52 brilliantly crafted exercises. Read them. Type their code precisely. (No copying and pasting!) Fix your mistakes. Watch the programs run. As you do, you’ll learn how a computer works; what good programs look like; and how to read, write, and think about code. Zed then teaches you even more in 5+ hours of video where he shows you how to break, fix, and debug your code—live, as he’s doing the exercises. Install a complete Python environment Organize and write code Fix and break code Basic mathematics Variables Strings and text Interact with users Work with files Looping and logic Data structures using lists and dictionaries Program design Object-oriented programming Inheritance and composition Modules, classes, and objects Python packaging Automated testing Basic game development Basic web development It’ll be hard at first. But soon, you’ll just get it—and that will feel great! This course will reward you for every minute you put into it. Soon, you’ll know one of the world’s most powerful, popular programming languages. You’ll be a Python programmer. This Book Is Perfect For Total beginners with zero programming experience Junior developers who know one or two languages Returning professionals who haven’t written code in years Seasoned professionals looking for a fast, simple, crash course in Python 3
  • The Mythical Man-Month: Essays on Software Engineering

    Frederick P. Brooks Jr.

    Paperback (Addison-Wesley Professional, Aug. 12, 1995)
    Few books on software project management have been as influential and timeless as The Mythical Man-Month. With a blend of software engineering facts and thought-provoking opinions, Fred Brooks offers insight for anyone managing complex projects. These essays draw from his experience as project manager for the IBM System/360 computer family and then for OS/360, its massive software system. Now, 20 years after the initial publication of his book, Brooks has revisited his original ideas and added new thoughts and advice, both for readers already familiar with his work and for readers discovering it for the first time. The added chapters contain (1) a crisp condensation of all the propositions asserted in the original book, including Brooks' central argument in The Mythical Man-Month: that large programming projects suffer management problems different from small ones due to the division of labor; that the conceptual integrity of the product is therefore critical; and that it is difficult but possible to achieve this unity; (2) Brooks' view of these propositions a generation later; (3) a reprint of his classic 1986 paper "No Silver Bullet"; and (4) today's thoughts on the 1986 assertion, "There will be no silver bullet within ten years."
  • Essential Scrum: A Practical Guide to the Most Popular Agile Process

    Kenneth S. Rubin

    Paperback (Addison-Wesley Professional, Aug. 5, 2012)
    A Practical Guide to the Most Popular Agile Process The Single-Source, Comprehensive Guide to Scrum for All Team Members, Managers, and Executives If you want to use Scrum to develop innovative products and services that delight your customers, Essential Scrum is the complete, single-source reference you’ve been searching for. Leading Scrum coach and trainer Kenny Rubin illuminates the values, principles, and practices of Scrum, and describes flexible, proven approaches that can help you implement it far more effectively. Whether you are new to Scrum or years into your use, this book will introduce, clarify, and deepen your Scrum knowledge at the team, product, and portfolio levels. Drawing from Rubin’s experience helping hundreds of organizations succeed with Scrum, this book provides easy-to-digest descriptions enhanced by more than two hundred illustrations based on an entirely new visual icon language for describing Scrum’s roles, artifacts, and activities. Essential Scrum will provide every team member, manager, and executive with a common understanding of Scrum, a shared vocabulary they can use in applying it, and practical knowledge for deriving maximum value from it.
  • Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C#

    Jeremy Gibson Bond

    Paperback (Addison-Wesley Professional, July 21, 2014)
    Learn Game Design, Prototyping, and Programming with Today’s Leading Tools: Unity™ and C# Award-winning game designer and professor Jeremy Gibson has spent the last decade teaching game design and working as an independent game developer. Over the years, his most successful students have always been those who effectively combined game design theory, concrete rapid-prototyping practices, and programming skills. Introduction to Game Design, Prototyping, and Development is the first time that all three of these disciplines have been brought together into a single book. It is a distillation of everything that Gibson has learned teaching hundreds of game designers and developers in his years at the #1 university games program in North America. It fully integrates the disciplines of game design and computer programming and helps you master the crucial practice of iterative prototyping using Unity. As the top game engine for cross-platform game development, Unity allows you to write a game once and deliver it to everything from Windows, OS X, and Linux applications to webpages and all of the most popular mobile platforms. If you want to develop games, you need strong experience with modern best practices and professional tools. There’s no substitute. There’s no shortcut. But you can get what you need in this book. COVERAGE INCLUDES In-depth tutorials for eight different game prototypes Developing new game design concepts Moving quickly from design concepts to working digital prototypes Improving your designs through rapid iteration Playtesting your games and interpreting the feedback that you receive Tuning games to get the right “game balance” and “game feel” Developing with Unity, today’s best engine for independent game development Learning C# the right way Using Agile and Scrum to efficiently organize your game design and development process Debugging your game code Getting into the highly competitive, fast-changing game industry
  • PHP and MySQL Web Development

    Luke Welling, Laura Thomson

    Paperback (Addison-Wesley Professional, Sept. 30, 2016)
    PHP and MySQL Web Development, Fifth Edition The definitive guide to building database-driven Web applications with PHP and MySQL PHP and MySQL are popular open-source technologies that are ideal for quickly developing database-driven Web applications. PHP is a powerful scripting language designed to enable developers to create highly featured Web applications quickly, and MySQL is a fast, reliable database that integrates well with PHP and is suited for dynamic Internet-based applications. PHP and MySQL Web Development shows how to use these tools together to produce effective, interactive Web applications. It clearly describes the basics of the PHP language, explains how to set up and work with a MySQL database, and then shows how to use PHP to interact with the database and the server. This practical, hands-on book consistently focuses on real-world applications, even in the introductory chapters. The authors cover important aspects of security and authentication as they relate to building a real-world website and show you how to implement these aspects in PHP and MySQL. They also introduce you to the integration of front-end and back-end technologies by using JavaScript in your application development. The final part of this book describes how to approach real-world projects and takes the reader through the design, planning, and building of several projects, including: User authentication and personalization Web-based email Social media integration Shopping cart The fifth edition of PHP and MySQL Web Development has been thoroughly updated, revised, and expanded to cover developments in PHP through versions 5.6 and 7, as well as features introduced in recent stable releases of MySQL. Free Access to Web Edition Purchase of this book in any format, electronic or print, includes free access to the corresponding Web Edition, which provides several special features: The complete text of the book online Exercises and interactive quizzes to test your understanding of the material Bonus chapters not included in the print or e-book editions Updates and corrections as they become available The Web Edition can be viewed on all types of computers and mobile devices with any modern web browser that supports HTML5. Contents at a Glance Part I: Using PHP 1 PHP Crash Course 2 Storing and Retrieving Data 3 Using Arrays 4 String Manipulation and Regular Expressions 5 Reusing Code and Writing Functions 6 Object-Oriented PHP 7 Error and Exception Handling Part II: Using MySQL 8 Designing Your Web Database 9 Creating Your Web Database 10 Working with Your MySQL Database 11 Accessing Your MySQL Database from the Web with PHP 12 Advanced MySQL Administration 13 Advanced MySQL Programming Part III: Web Application Security 14 Web Application Security Risks 15 Building a Secure Web Application 16 Implementing Authentication Methods with PHP Part IV: Advanced PHP Techniques 17 Interacting with the File System and the Server 18 Using Network and Protocol Functions 19 Managing the Date and Time 20 Internationalization and Localization 21 Generating Images 22 Using Session Control in PHP 23 Integrating JavaScript and PHP 24 Other Useful Features Part V: Building Practical PHP and MySQL Projects 25 Using PHP and MySQL for Large Projects 26 Debugging and Logging 27 Building User Authentication and Personalization 28 (Web Edition) Building a Web-Based Email Client with Laravel Part I 29 (Web Edition) Building a Web-Based Email Client with Laravel Part II 30 (Web Edition) Social Media Integration Sharing and Authentication 31 (Web Edition) Building a Shopping Cart Part VI: Appendix A Installing Apache, PHP, and MySQL
  • Learning React

    Kirupa Chinnathambi

    Paperback (Addison-Wesley Professional, Dec. 1, 2019)
    Learning React A hands-on guide to building maintainable, high-performing web application user interfaces using the React JavaScript library As far as new web frameworks and libraries go, React is quite the runaway success. It not only deals with the most common problems developers face when building complex apps, it throws in a few additional tricks that make building the visuals for such apps much, much easier. What React isn’t, though, is beginner-friendly and approachable. Until now. In Learning React, author Kirupa Chinnathambi brings his fresh, clear, and very personable writing style to help you understand the fundamentals of React and how to use it to build really performant (and awesome) apps. Build your first React app Create components to define parts of your UI Combine components into other components to build more complex UIs Use JSX to specify visuals without writing full-fledged JavaScript Deal with maintaining state Work with React’s way of styling content Make sense of the mysterious component lifecycle Build multi-page apps using routing and views Optimize your React workflow using tools such as Node, Babel, webpack, and others Contents at a Glance Chapter 1 Introducing React Chapter 2 Building Your First React App Chapter 3 Components in React Chapter 4 Styling in React Chapter 5 Creating Complex Components Chapter 6 Transferring Properties (Props) Chapter 7 Meet JSX–Again! Chapter 8 Dealing with State Chapter 9 Going from Data to UI Chapter 10 Working with Events Chapter 11 The Component Lifecycle Chapter 12 Accessing DOM Elements Chapter 13 Creating a Single-Page App Using React Router Chapter 14 Building a Todo List App Chapter 15 Setting Up Your React Development Environment Chapter 16 The End Chapter 17 (Web Edition) Working With External Data Chapter 18 (Web Edition) Creating a Sliding Menu Using React Motion Register your book at informit.com/register for free access to the Web Edition and two exclusive bonus chapters.
  • PHP and MySQL Web Development

    Luke Welling, Laura Thomson

    Paperback (Addison-Wesley Professional, Oct. 11, 2008)
    PHP and MySQL Web Development, Fourth Edition The definitive guide to building database-drive Web applications with PHP and MySQL PHP and MySQL are popular open-source technologies that are ideal for quickly developing database-driven Web applications. PHP is a powerful scripting language designed to enable developers to create highly featured Web applications quickly, and MySQL is a fast, reliable database that integrates well with PHP and is suited for dynamic Internet-based applications. PHP and MySQL Web Development shows how to use these tools together to produce effective, interactive Web applications. It clearly describes the basics of the PHP language, explains how to set up and work with a MySQL database, and then shows how to use PHP to interact with the database and the server. This practical, hands-on book includes numerous examples that demonstrate common tasks such as authenticating users, constructing a shopping cart, generating PDF documents and images dynamically, sending and managing email, facilitating user discussions, connecting to Web services using XML, and developing Web 2.0 applications with Ajax-based interactivity. The fourth edition of PHP and MySQL Web Development has been thoroughly updated, revised, and expanded to cover developments in PHP 5 through version 5.3, such as namespaces and closures, as well as features introduced in MySQL 5.1. TABLE OF CONTENTS Part I: Using PHP 1 PHP Crash Course 2 Storing and Retrieving Data 3 Using Arrays 4 String Manipulation and Regular Expressions 5 Reusing Code and Writing Functions 6 Object-Oriented PHP 7 Error and Exception Handling Part II: Using MySQL 8 Designing Your Web Database 9 Creating Your Web Database 10 Working with Your MySQL Database 11 Accessing Your MySQL Database from the Web with PHP 12 Advanced MySQL Administration 13 Advanced MySQL Programming Part III: E-Commerce and Security 14 Running an E-Commerce Site 15 E-commerce Security Issues 16 Web Application Security 17 Implementing Authentication with PHP and MySQL 18 Implementing Secure Transactions with PHP and MySQL Part IV: Advanced PHP Techniques 19 Interacting with the File System and the Server 20 Using Network and Protocol Functions 21 Managing the Date and Time 22 Generating Images 23 Using Session Control in PHP 24 Other Useful Features Part V: Building Practical PHP and MySQL Projects 25 Using PHP and MySQL for Large Projects 26 Debugging 27 Building User Authentication and Personalization 28 Building a Shopping Cart 29 Building a Web-Based Email Service 30 Building a Mailing List Manager 31 Building Web Forums 32 Generating Personalized PDF Documents 33 Connecting to Web Services with XML and SOAP 34 Building Web 2.0 Applications with Ajax Part VI: Appendixes Appendix A: Installing PHP and MySQL Appendix B: Web Resources
  • Stats: Modeling the World

    David Bock

    Hardcover (Addison-Wesley Professional, Aug. 16, 2010)
    None
  • Concurrent Programming on Windows

    Joe Duffy

    Paperback (Addison-Wesley Professional, Nov. 7, 2008)
    “When you begin using multi-threading throughout an application, the importance of clean architecture and design is critical. . . . This places an emphasis on understanding not only the platform’s capabilities but also emerging best practices. Joe does a great job interspersing best practices alongside theory throughout his book.” – From the Foreword by Craig Mundie, Chief Research and Strategy Officer, Microsoft Corporation Author Joe Duffy has risen to the challenge of explaining how to write software that takes full advantage of concurrency and hardware parallelism. In Concurrent Programming on Windows, he explains how to design, implement, and maintain large-scale concurrent programs, primarily using C# and C++ for Windows. Duffy aims to give application, system, and library developers the tools and techniques needed to write efficient, safe code for multicore processors. This is important not only for the kinds of problems where concurrency is inherent and easily exploitable—such as server applications, compute-intensive image manipulation, financial analysis, simulations, and AI algorithms—but also for problems that can be speeded up using parallelism but require more effort—such as math libraries, sort routines, report generation, XML manipulation, and stream processing algorithms. Concurrent Programming on Windows has four major sections: The first introduces concurrency at a high level, followed by a section that focuses on the fundamental platform features, inner workings, and API details. Next, there is a section that describes common patterns, best practices, algorithms, and data structures that emerge while writing concurrent software. The final section covers many of the common system-wide architectural and process concerns of concurrent programming. This is the only book you’ll need in order to learn the best practices and common patterns for programming with concurrency on Windows and .NET.
  • Network Maintenance and Troubleshooting Guide: Field Tested Solutions for Everyday Problems

    Neal Allen

    eBook (Addison-Wesley Professional, Oct. 18, 2009)
    Network Maintenance and Troubleshooting Guide Field-Tested Solutions for Everyday Problems, Second Edition Neal Allen The 100% practical, real-world guide to anticipating, finding, and solving network problems—fast! Real-life networks don’t always behave “by the book.” Troubleshooting them requires practical intuition that normally comes only with experience. In this book, Fluke Networks’ Neal Allen brings together all that hard-won, hands-on insight: everything you need to discover what’s really happening in your network, so you can anticipate and fix problems before users even notice them. Writing for network technicians and administrators at all levels, Allen presents an approach to troubleshooting that has been proven in networks of all kinds, no matter how complex. He introduces indispensable triage and troubleshooting techniques for everything from copper and fiber cabling to IPv6, and presents unparalleled guidance on identifying and resolving problems at the MAC Layer. He illustrates his advice with diagrams, tables, and screen captures from Fluke Networks’ market-leading instruments. Throughout this book, Allen also offers practical summaries of each of today’s core networking technologies, making it an ideal complement to any network certification study guide. Coverage includes Using the OSI model to more efficiently troubleshoot networks layer by layer Copper and fiber-optic cabling: theory, operation, and troubleshooting Media Access Control (MAC) Layer: Ethernet theory and operation Identifying and resolving problems related to IPv4 and IPv6 protocols Preventing problems before they occur Discovering device behavior Troubleshooting switches Using a protocol analyzer more successfully Creating network documentation that helps you more efficiently prevent and resolve problems Road tested by thousands of Fluke Networks customers, this book’s first edition became the best-kept secret resource for sysadmins, netadmins, and support technicians fortunate enough to discover it. Now, Allen has thoroughly updated his classic for today’s networks. If you’re responsible for maintaining one of those networks, you’ll find this new Second Edition even more indispensable. Neal Allen is a senior staff engineer in the Fluke Networks’ Technical Assistance Center (TAC) focusing on escalated problems. He has been involved in designing, installing, and troubleshooting networks for nearly 20 years. Allen has served on Interop’s trade show Network Operations Center (NOC) team since 1993, troubleshooting show-floor problems at the Las Vegas and Atlanta Interop trade shows, and helped support and troubleshoot the network for the 1996 Atlanta Olympic Games. His responsibilities currently include product feature specification and beta testing, remote and onsite problem solving, and providing training and sales support worldwide. informit.com/aw Cover design by Louisa Adair Cover photography from Image Source / Getty Images
  • Network Maintenance and Troubleshooting Guide: Field Tested Solutions for Everyday Problems

    Neal Allen

    Paperback (Addison-Wesley Professional, Oct. 28, 2009)
    Network Maintenance and Troubleshooting Guide Field-Tested Solutions for Everyday Problems, Second Edition Neal Allen The 100% practical, real-world guide to anticipating, finding, and solving network problems—fast! Real-life networks don’t always behave “by the book.” Troubleshooting them requires practical intuition that normally comes only with experience. In this book, Fluke Networks’ Neal Allen brings together all that hard-won, hands-on insight: everything you need to discover what’s really happening in your network, so you can anticipate and fix problems before users even notice them. Writing for network technicians and administrators at all levels, Allen presents an approach to troubleshooting that has been proven in networks of all kinds, no matter how complex. He introduces indispensable triage and troubleshooting techniques for everything from copper and fiber cabling to IPv6, and presents unparalleled guidance on identifying and resolving problems at the MAC Layer. He illustrates his advice with diagrams, tables, and screen captures from Fluke Networks’ market-leading instruments. Throughout this book, Allen also offers practical summaries of each of today’s core networking technologies, making it an ideal complement to any network certification study guide. Coverage includes Using the OSI model to more efficiently troubleshoot networks layer by layer Copper and fiber-optic cabling: theory, operation, and troubleshooting Media Access Control (MAC) Layer: Ethernet theory and operation Identifying and resolving problems related to IPv4 and IPv6 protocols Preventing problems before they occur Discovering device behavior Troubleshooting switches Using a protocol analyzer more successfully Creating network documentation that helps you more efficiently prevent and resolve problems Road tested by thousands of Fluke Networks customers, this book’s first edition became the best-kept secret resource for sysadmins, netadmins, and support technicians fortunate enough to discover it. Now, Allen has thoroughly updated his classic for today’s networks. If you’re responsible for maintaining one of those networks, you’ll find this new Second Edition even more indispensable. Neal Allen is a senior staff engineer in the Fluke Networks’ Technical Assistance Center (TAC) focusing on escalated problems. He has been involved in designing, installing, and troubleshooting networks for nearly 20 years. Allen has served on Interop’s trade show Network Operations Center (NOC) team since 1993, troubleshooting show-floor problems at the Las Vegas and Atlanta Interop trade shows, and helped support and troubleshoot the network for the 1996 Atlanta Olympic Games. His responsibilities currently include product feature specification and beta testing, remote and onsite problem solving, and providing training and sales support worldwide. informit.com/aw Cover design by Louisa Adair Cover photography from Image Source / Getty Images