How we did it:
For any feedback, any questions, any notes or just for chat - feel free to follow us on social networks
Ralph Johnson, Erich Gamma, John Vlissides, Richard Helm
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. 0201633612B07092001
Features the best practices in the art and science of constructing software--topics include design, applying good techniques to construction, eliminating errors, planning, managing construction activities, and relating personal character to superior software. Original. (Intermediate)
OpenGL is a powerful software interface used to produce high-quality, computer-generated images and interactive applications using 2D and 3D objects, bitmaps, and color images. The OpenGL ® Programming Guide, Seventh Edition , provides definitive and comprehensive information on OpenGL and the OpenGL Utility Library. The previous edition covered OpenGL through Version 2.1. This seventh edition of the best-selling “red book” describes the latest features of OpenGL Versions 3.0 and 3.1. You will find clear explanations of OpenGL functionality and many basic computer graphics techniques, such as building and rendering 3D models; interactively viewing objects from different perspective points; and using shading, lighting, and texturing effects for greater realism. In addition, this book provides in-depth coverage of advanced techniques, including texture mapping, antialiasing, fog and atmospheric effects, NURBS, image processing, and more. The text also explores other key topics such as enhancing performance, OpenGL extensions, and cross-platform techniques. This seventh edition has been updated to include the newest features of OpenGL Versions 3.0 and 3.1, including Using framebuffer objects for off-screen rendering and texture updates Examples of the various new buffer object types, including uniform-buffer objects, transform feedback buffers, and vertex array objects Using texture arrays to increase performance when using numerous textures Efficient rendering using primitive restart and conditional rendering Discussion of OpenGL's deprecation mechanism and how to verify your programs for future versions of OpenGL This edition continues the discussion of the OpenGL Shading Language (GLSL) and explains the mechanics of using this language to create complex graphics effects and boost the computational power of OpenGL. The OpenGL Technical Library provides tutorial and reference books for OpenGL. The Library enables programmers to gain a practical understanding of OpenGL and shows them how to unlock its full potential. Originally developed by SGI, the Library continues to evolve under the auspices of the Khronos OpenGL ARB Working Group, an industry consortium responsible for guiding the evolution of OpenGL and related technologies.
Joseph N. Hall, Randal L. Schwartz
A hands-on, problem-solving guide to Perl programming explains how to enhance one's profiency in Perl and includes useful examples and code, as well as self-documenting, object-oriented modules available with Perl 5. Original. (Intermediate).
Hailed as a "must-have textbook" (CHOICE, January 2010), the first edition of Game Engine Architecture provided readers with a complete guide to the theory and practice of game engine software development. Updating the content to match today’s landscape of game engine architecture, this second edition continues to thoroughly cover the major components that make up a typical commercial game engine. New to the Second Edition Information on new topics, including the latest variant of the C++ programming language, C++11, and the architecture of the eighth generation of gaming consoles, the Xbox One and PlayStation 4 New chapter on audio technology covering the fundamentals of the physics, mathematics, and technology that go into creating an AAA game audio engine Updated sections on multicore programming, pipelined CPU architecture and optimization, localization, pseudovectors and Grassman algebra, dual quaternions, SIMD vector math, memory alignment, and anti-aliasing Insight into the making of Naughty Dog’s latest hit, The Last of Us The book presents the theory underlying various subsystems that comprise a commercial game engine as well as the data structures, algorithms, and software interfaces that are typically used to implement them. It primarily focuses on the engine itself, including a host of low-level foundation systems, the rendering engine, the collision system, the physics simulation, character animation, and audio. An in-depth discussion on the "gameplay foundation layer" delves into the game’s object model, world editor, event system, and scripting system. The text also touches on some aspects of gameplay programming, including player mechanics, cameras, and AI. An awareness-building tool and a jumping-off point for further learning, Game Engine Architecture, Second Edition gives readers a solid understanding of both the theory and common practices employed within each of the engineering disciplines covered. The book will help readers on their journey through this fascinating and multifaceted field.
Beginning C# Object-Oriented Programming brings you into the modern world of development as you master the fundamentals of programming with C# and learn to develop efficient, reusable, elegant code through the object-oriented programming (OOP) methodology. Take your skills out of the 20th century and into this one with Dan Clark's accessible, quick-paced guide to C# and object-oriented programming, completely updated for .NET 4.0 and C# 4.0. As you develop techniques and best practices for coding in C#, one of the world's most popular contemporary languages, you'll experience modeling a “real world” application through a case study, allowing you to see how both C# and OOP (a methodology you can use with any number of languages) come together to make your code reusable, modern, and efficient. With more than 30 fully hands-on activities, you'll discover how to transform a simple model of an application into a fully-functional C# project, including designing the user interface, implementing the business logic, and integrating with a relational database for data storage. Along the way, you will explore the .NET Framework, the creation of a Windows-based user interface, a web-based user interface, and service-oriented programming, all using Microsoft's industry-leading Visual Studio 2010, C#, Silverlight, the Entity Framework, and more. What you’ll learn Learn to use the Universal Modeling Language (UML) to quickly design an application correctly from the first time Understand object-oriented programming principles and how they benefit your work in today's dual Web- and Windows-based world Integrate OOP fundamentals when developing code in C# Discover the .NET Framework and how it can help you create applications quickly and efficiently Walk along as the author develops a complete Windows- and Web-based application using the techniques and best practices covered inside Who this book is for If you're a beginning C# programmer who wants to gain a foundation in object-oriented programming along with the C# language basics, this book is for you. Programmers transitioning from a procedure-oriented programming model to an object-oriented model will also find many practical suggestions and walkthroughs inside. In particular, Visual Basic developers who want to transition to C# programming, but lack a firm grasp of object-oriented programming principles, will find this book an excellent starting point for their journey into C#. The book includes a primer in Appendix A that discusses some fundamental procedural programming concepts. Table of Contents Overview of Object-Oriented Programming Designing OOP Solutions: Identifying the Class Structure Designing OOP Solutions: Modeling the Object Interaction Designing OOP Solutions: A Case Study Introducing the .NET Framework and Visual Studio Creating Classes Creating Class Hierarchies Implementing Object Collaboration Working with Collections Implementing the Data Access Layer Developing Windows Applications Developing Web Applications Developing and Consuming WCF Services Developing the OSO Application Wrapping Up Fundamental Programming Concepts Exception Handling in C# Installing the Required Software
James D. Murray, William VanRyper
A book and CD-ROM package provides a Mosaic navigating browser and a collection of hard-to-find resources from such vendors as Adobe, Apple, IBM, Microsoft, and Silicon Graphics, as well as test images and code examples. Original. (Advanced).
Donald Hearn, M. Pauline Baker
Reflecting the rapid expansion of the use of computer graphics and of C++ as a programming language of choice for implementation, this book converts all programming code into the C++ language. This new edition is a complete revision, bringing the text up to date with current advances in computer graphics technology and applications.Assuming readers have no prior familiarity with computer graphics, the authors—both authorities in their field—present basic principles for design, use, and understanding of computer graphics systems using their well-known, and accessible writing style. It includes an exploration of GL, PHIGS, PHIGS+, GKS and other graphics libraries and covers topics such as distributed ray tracing, radiosity, physically based modeling, particle systems, and visualization techniques.For professionals in any area of computer graphics: CAD, Animation, Software Design, etc.Previously announced in 12/2002 catalog.