Saturday, March 23, 2013

Mac OS X Internals


Mac OS X was released in March 2001, but many components, such as Mach and BSD, are considerably older. Understanding the design, implementation, and workings of Mac OS X requires examination of several technologies that differ in their age, origins, philosophies, and roles.Mac OS X Internals: A Systems Approach is the first book that dissects the internals of the system, presenting a detailed picture that grows incrementally as you read. For example, you will learn the roles of the firmware, the bootloader, the Mach and BSD kernel components (including the process, virtual memory, IPC, and file system layers), the object-oriented I/O Kit driver framework, user libraries, and other core pieces of software. You will learn how these pieces connect and work internally, where they originated, and how they evolved. The book also covers several key areas of the Intel-based Macintosh computers.A solid understanding of system internals is immensely useful in design, development, and debugging for programmers of various skill levels. System programmers can use the book as a reference and to construct a better picture of how the core system works. Application programmers can gain a deeper understanding of how their applications interact with the system. System administrators and power users can use the book to harness the power of the rich environment offered by Mac OS X. Finally, members of the Windows, Linux, BSD, and other Unix communities will find the book valuable in comparing and contrasting Mac OS X with their respective systems.Mac OS X Internals focuses on the technical aspects of OS X and is so full of extremely useful information and programming examples that it will definitely become a mandatory tool for every Mac OS X programmer.

Download Link

The Design of the UNIX Operating System


Classic description of the internal algorithms and the structures that form the basis of the UNIX operating system and their relationship to programmer interface. The leading selling UNIX internals book on the market.

Download Link

The Design and Implementation of the 4.4 BSD Operating System


This book describes the design and implementation of the BSD operating system--previously known as the Berkeley version of UNIX. Today, BSD is found in nearly every variant of UNIX, and is widely used for Internet services and firewalls, timesharing, and multiprocessing systems. Readers involved in technical and sales support can learn the capabilities and limitations of the system; applications developers can learn effectively and efficiently how to interface to the system; systems programmers can learn how to maintain, tune, and extend the system. Highlights: Details major changes in process and memory management Describes the new extensible and stackable file system interface Includes an invaluable chapter on the new network file system Updates information on networking and interprocess communication Written from the unique perspective of the system's architects, this book delivers the most comprehensive, up-to-date, and authoritative technical information on the internal structure of the latest BSD system.

Download Link

IPv6 Core Protocols Implementation



The authoritative reference text on KAME and IPv6!IPv6 was introduced in 1994 and has been in development at the IETF for over 10 years. It has now reached the deployment stage. KAME, the de-facto open-source reference implementation of the IPv6 standards, played a significant role in the acceptance and the adoption of the IPv6 technology. The adoption of KAME by key companies in a wide spectrum of commercial products is a testimonial to the success of the KAME project, which concluded not long ago. This book is the first and the only one of its kind, which reveals all of the details of the KAME IPv6 protocol stack, explaining exactly what every line of code does and why it was designed that way. Through the dissection of both the code and its design, the authors illustrate how IPv6 and its related protocols have been interpreted and implemented from the specifications. This reference will demystify those ambiguous areas in the standards, which are open to interpretation and problematic in deployment, and presents solutions offered by KAME in dealing with these implementation challenges.About the AuthorsQing Li is a senior architect at Blue Coat Systems, Inc. leading the design and development efforts of the next-generation IPv6 enabled secure proxy appliances. Qing holds multiple US patents. Qing is a contributing author of the book titled Handbook of Networked and Embedded Control Systems published in June 2005. He is the author of the embedded systems development book titled Real-Time Concepts for Embedded Systems published in April 2003. Tatuya Jinmei Ph.D. is a research scientist at Corporate Research & Development Center, Toshiba Corporation. He had been a core developer of the KAME project since the launch of the project through its conclusion. In 2003, he received the Ph.D. degree from Keio University, Japan, based on his work at KAME. Keiichi Shima is a senior researcher at Internet Initiative Japan Inc. He was a core developer of the KAME project from 2001 to the end of the project and developed Mobile IPv6/NEMO Basic Support protocol stack. He is now working on the new mobility stack (the SHISA stack) for BSD operating systems.IPv6 Core Protocols Implementation addresses with technical depth and clarity an IPv6 implementation on University California Berkeley Source Code Distribution (BSD), from the KAME project that was based in Japan, which is both a commercial and academic success in the world wide networking implementation market. The book begins with an overview of the KAME project and source code distribution, and then provides a concise, but thorough overview of the BSD network implementation. Then the book provides the architecture and an implementation code base component for IPv6 added to the current BSD TCP/IP Internet Protocol layer code base, the implications of the changes to the Transport Layer, and then provides a review of the BSD Socket Application Interface changes for IPv6. The authors did a very good job of representing the source code implementation and it was easy to read and comprehend, with discussion for each programmatic presentation of the code base functions and data structures. This book will be valuable to both networking architects and programmers that have to absorb and understand the implementation of IPv6 within the TCP/IP network implementation and reference model. The book was a pleasure to read and reminded me of the TCP/IP technical books by the late Dr. Richard Stevens, and afforded me the same technical depth. CTO IPv6 Forum www.ipv6forum.com ~Jim Bound. 
  • Covering a snapshot version of KAME dated April 2003 based on FreeBSD 4.8
  • Extensive line-by-line code listings with meticulous explanation of their rationale and use for the KAME snapshot implementation, which is generally applicable to most recent versions of the KAME IPv6 stack including those in recent releases of BSD variants
  • Numerous diagrams and illustrations help in visualizing the implementation 
  • In-depth discussion of the standards provides intrinsic understanding of the specifications

Download Link

PANIC - UNIX System Crash Dump Analysis Handbook


For systems and network administrators and technical support engineers responsible for maintaining UNIX computer systems and networks. A first aid guide for UNIX system and network administrators, this book provides quick solutions to a variety of UNIX system problems. It discusses in detail UNIX system panics, crashes and hangs, their causes, what to do when they occur, how to collect information about them, how to analyze that information, and how to get the problem resolved.

Download Links

Storage Network Performance Analysis


Features vendor-neutral coverage applicable to any storage networkIncludes a special case-study section citing real-world applications and examplesThe first vendor-neutral volume to cover storage network performance tuning and optimizationExacting performance monitoring and analysis maximizes the efficiency and cost-effectiveness of existing storage networksMeets the needs of network administrators, storage engineers, and IT professionals faced with shrinking budgets and growing data storage demands 

Download Link

Storage Area Networks


Every month, enterprises require more information, delivered faster, with greater reliability -- and traditional data storage methods no longer suffice. Enter the Storage Area Network (SAN), which can store enormous amounts of data, serve it at lightning speed, scale to meet accelerating growth, and deliver unprecedented reliability. Now, there's a complete guide to SAN technology for every IT professional and decision-maker. Storage Area Networks covers it all: key concepts, components, applications, case studies, implementation, management, and much more. Start with the basics: what SANs are, what they can do, and how they overcome the critical limitations of previous approaches to data storage. Understand Fibre Channel, the key enabling technology for SANs. Next, compare approaches to configuring SANs; walk through typical SAN backup, restore, and disaster recovery scenarios; and discover today's best practices for building SANs atop your legacy storage topology. Finally, preview the future of SANs, including policy-based SANs, ASP and storage rental applications, self-healing devices, and the growing role of the storage management professional. The book also includes an interview with Duane Zitzner, President of Computing Systems at HP.
Download Link

IP Storage Networking


"For those considering network storage consolidation, Straight to the Core walks the reader through both the how and why of IP and Ethernet's flexibility." Larry Boucher, CEO Alacritech"A forward-looking work with excellent technical content. Orenstein knows his stuff...enough technical meat to satisfy the engineers and business overview of continuance strategies to satisfy CIOs/managers/planners."Tom Clark, SNIA board member and author of IP SANsMaximizing the business value of enterprise storage technology Soon, you'll be managing 100x more data than you are today -- with even greater demands for availability and business continuity. IP Storage Networking: Straight to the Core gives you a complete blueprint for meeting that challenge. Enterprise storage expert Gary Orenstein delivers expert guidance for evaluating, architecting, and implementing IP-based storage technologies...and for maximizing the business value of storage across a range of your requirements. Orenstein covers all this, and more: 
  • Enterprise storage networking: current options, future trends 
  • New storage strategies: from disaster recovery to operational agility 
  • A complete software infrastructure for managing enterprise storage 
  • The evolution of distributed storage intelligence 
  • Outsourcing storage and managing storage-related SLAs 
  • IP-based SANs: iSCSI, topologies, security, and other key issues 
  • Implementing policies that protect data and facilitate recovery 
  • Measuring and maximizing ROI on enterprise storage investments 
Whether you're a technical or business professional, IP Storage Networking: Straight to the Core will help you develop storage action plans that leverage innovation to maximize value on every dime you invest.

Download Link

Information Storage and Management


The new edition of a bestseller, now revised and update throughout!This new edition of the unparalleled bestseller serves as a full training course all in one and as the world's largest data storage company, EMC is the ideal author for such a critical resource. They cover the components of a storage system and the different storage system models while also offering essential new material that explores the advances in existing technologies and the emergence of the "Cloud" as well as updates and vital information on new technologies. Features a separate section on emerging area of cloud computing Covers new technologies such as: data de-duplication, unified storage, continuous data protection technology, virtual provisioning, FCoE, flash drives, storage tiering, big data, and more Details storage models such as Network Attached Storage (NAS), Storage Area Network (SAN), Object Based Storage along with virtualization at various infrastructure componentsExplores Business Continuity and Security in physical and virtualized environment Includes an enhanced Appendix for additional information This authoritative guide is essential for getting up to speed on the newest advances in information storage and management. 
Download Link

Designing Storage Area Networks


This is a fully updated revision of Designing Storage Area Networks. It collapses or removes dated material from the original edition and adds new content, particularly in the area of Fibre Channel fabrics, IP SANs and storage virtualization. Storage area networks are now recognized as the preferred solution for fulfilling a wide range of critical data storage needs for institutions and enterprises. The success of SANs in establishing real end-user value is affirmed by the adoption of the technology by all major solution providers as their flagship server and storage offerings. IBM, Hewlett-Packard, Sun, Dell and others now provide certified SAN configurations for performance, high availability and backup of storage data, while storage vendors such as EMC, Hitachi Data Systems, XIOtech and others offer SAN interfaces on their premier products. While the current market penetration of SAN-based solutions is only 20% of the total storage market, SANs are expected to capture the majority of the market within a few years.

Download Link

iSCSI


There are two core ways to implement Storage Area Networks (SANs) -- the traditional way, Fibre Channel, which is a direct link via cable, and the emerging way, IP SANs, whereby you access storage via the internet. Within IP SANs there are a number of important protocols including FCIP, iFCP, and iSCSI. iSCSI is an evolution of SCSI protocol that allows computers to talk to their hard disks, tapes, etc. The new iSCSI protocol carries SCSI commands over IP networks to facilitate data transfers over intranets and to manage storage over long distances. This book offers System and Storage engineers a quick and easy way to become familiar with the iSCSI protocols, with needed insight to its applicability.

Download Link

Storage Networking Protocol Fundamentals


A comparative analysis of Ethernet, TCP/IP, and Fibre Channel in the context of SCSI Introduces network administrators to the requirements of storage protocols Explains the operation of network protocols to storage administrators Compares and contrasts the functionality of Ethernet, TCP/IP, and Fibre Channel Documents the details of the major protocol suites, explains how they operate, and identifies common misunderstandings References the original standards and specifications so you can get a complete understanding of each protocol Helps you understand the implications of network design choices Discusses advanced network functionality such as QoS, security, management, and protocol analysis. Corporations increasingly depend on computer and communication technologies to remain competitive in the global economy. Customer relationship management, enterprise resource planning, and e-mail are a few of the many applications that generate new data every day. Effectively storing, managing, and accessing that data is a primary business challenge in the information age. Storage networking is a crucial component of the solution to meet that challenge. Written for both storage administrators who need to learn more about networking and network administrators who need to learn more about storage, Storage Networking Protocol Fundamentals is a concise introduction to storage networking protocols. The book picks up where Storage Networking Fundamentals left off by focusing on the networking protocols that underlie modern open systems: block-oriented storage networks. The first part of the book introduces you to the field of storage networking and the Open Systems Interconnection (OSI) reference model. The second part compares networked storage technologies, including iSCSI (Small Computer Systems Interface over IP) and Fibre Channel. It also examines in detail each of the major protocol suites layer-by-layer within the OSI reference model. The third part discusses advanced functionalities of these technologies, such as quality of service (QoS), load-balancing functions, security, management, and protocol analysis. You can read this book cover to cover or use it as a reference, directly accessing the particular topics of interest to you. Storage networking is a critical concept for today's businesses, and this book provides a unique and helpful way to better understand it. Storage networking is also continuously evolving, and as such this book may be seen as an introduction to the information technology infrastructures of the future.

Download Link

Storage Networking Fundamentals


An Introduction to Storage Devices, Subsystems, Applications, Management, and File Systems Learn fundamental storage concepts with this comprehensive introduction Compare storage device technologies, including Fibre Channel, SCSI, ATA, and SATA and understand their uses in network storage subsystems Learn about key storage processes such as volume management, storage virtualization, data snapshots, mirroring, RAID, backup, and multipathing Clarify the roles of file systems and databases within network storage Take the next step.this book prepares you to become a storage networking expert Storage networking has become an essential ingredient in Internet information infrastructures. Becoming competent in this new and important technology area requires a sound understanding of storage technologies and principles. Storage Networking Fundamentals gives you an in-depth look into the most important storage technologies. The entire storage landscape is described, incorporating a complete view of system, device, and subsystem operations and processes. Learn how to protect data effectively using mirroring, RAID, remote copy, and backup/ recovery systems. Virtual storage technologies, such as volume management, RAID, and network virtualization, are analyzed and discussed in detail. High-availability storage through dynamic multipathing and clustered/distributed file systems is explained as are designs for robust storage subsystems. Finally, the confusing and arcane worlds of file systems and SCSI are clarified, including the role of initiators, targets, logical units, and LUNs. . Storage Networking Fundamentals is a comprehensive overview of storage technologies that also provides insights on designing and running SAN and NAS implementations. This book is part of the Cisco Press Fundamentals Series. Books in this series introduce networking professionals to new networking technologies, covering network topologies, example deployment concepts, protocols, and management techniques.

Download Link

Design Patterns For Dummies


There's a pattern here, and here's how to use it!Find out how the 23 leading design patterns can save you time and troubleEver feel as if you've solved this programming problem before You -- or someone -- probably did, and that's why there's a design pattern to help this time around. This book shows you how (and when) to use the famous patterns developed by the "Gang of Four," plus some new ones, all designed to make your programming life easier. Discover how to:
  • Simplify the programming process with design patterns
  • Make the most of the Decorator, Factory, and Adapter patterns
  • Identify which pattern applies
  • Reduce the amount of code needed for a task
  • Create your own patterns
Download Link

Working Effectively with Legacy Code


Get more out of your legacy systems: more performance, functionality, reliability, and manageability Is your code easy to change. Can you get nearly instantaneous feedback when you do change it. Do you understand it. If the answer to any of these questions is no, you have legacy code, and it is draining time and money away from your development efforts.In this book, Michael Feathers offers start-to-finish strategies for working more effectively with large, untested legacy code bases. This book draws on material Michael created for his renowned Object Mentor seminars: techniques Michael has used in mentoring to help hundreds of developers, technical managers, and testers bring their legacy systems under control. The topics covered include Understanding the mechanics of software change: adding features, fixing bugs, improving design, optimizing performance Getting legacy code into a test harness Writing tests that protect you against introducing new problems Techniques that can be used with any language or platform.with examples in Java, C++, C, and C# Accurately identifying where code changes need to be made Coping with legacy systems that aren't object-oriented Handling applications that don't seem to have any structureThis book also includes a catalog of twenty-four dependency-breaking techniques that help you work with program elements in isolation and make safer changes.. Copyright Pearson Education. All rights reserved.

Download Link

Software Systems Architecture



Software Systems Architecture is a practitioner-oriented guide to designing and implementing effective architectures for information systems. It is both a readily accessible introduction to software architecture and an invaluable handbook of well-established best practices. It shows why the role of the architect is central to any successful information-systems development project, and, by presenting a set of architectural viewpoints and perspectives, provides specific direction for improving your own and your organization's approach to software systems architecture.With this book you will learn how toDesign an architecture that reflects and balances the different needs of its stakeholdersCommunicate the architecture to stakeholders and demonstrate that it has met their requirementsFocus on architecturally significant aspects of design, including frequently overlooked areas such as performance, resilience, and location. Use scenarios and patterns to drive the creation and validation of your architectureDocument your architecture as a set of related viewsUse perspectives to ensure that your architecture exhibits important qualities such as performance, scalability, and security The architectural viewpoints and perspectives presented in the book also provide a valuable long-term reference source for new and experienced architects alike.Whether you are an aspiring or practicing software architect, you will find yourself referring repeatedly to the practical advice in this book throughout the lifecycle of your projects.A supporting Web site containing further information can be found at www.viewpoints-and-perspectives.info
Download Link


Head First Object-Oriented Analysis and Design


"Head First Object Oriented Analysis and Design is a refreshing look at subject of OOAD. What sets this book apart is its focus on learning. The authors have made the content of OOAD accessible and usable for the practitioner." --Ivar Jacobson, Ivar Jacobson Consulting "I just finished reading HF OOA&D and I loved it! The thing I liked most about this book was its focus on why we do OOA&D-to write great software!" --Kyle Brown, Distinguished Engineer, IBM "Hidden behind the funny pictures and crazy fonts is a serious, intelligent, extremely well-crafted presentation of OO Analysis and Design. As I read the book, I felt like I was looking over the shoulder of an expert designer who was explaining to me what issues were important at each step, and why." --Edward Sciore, Associate Professor, Computer Science Department, Boston College Tired of reading Object Oriented Analysis and Design books that only makes sense after you're an expert You've heard OOA&D can help you write great software every time-software that makes your boss happy, your customers satisfied and gives you more time to do what makes you happy. But how Head First Object-Oriented Analysis & Design shows you how to analyze, design, and write serious object-oriented software: software that's easy to reuse, maintain, and extend; software that doesn't hurt your head; software that lets you add new features without breaking the old ones. Inside you will learn how to: Use OO principles like encapsulation and delegation to build applications that are flexible Apply the Open-Closed Principle (OCP) and the Single Responsibility Principle (SRP) to promote reuse of your code Leverage the power of design patterns to solve your problems more efficiently Use UML, use cases, and diagrams to ensure that all stakeholders are communicating clearly to help you deliver the right software that meets everyone's needs. By exploiting how your brain works, Head First Object-Oriented Analysis & Design compresses the time it takes to learn and retain complex information. Expect to have fun, expect to learn, expect to be writing great software consistently by the time you're finished reading this!

Download Link


Head First Design Patterns



You're not alone. 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.

Download Link

Thursday, March 21, 2013

Patterns of Enterprise Application Architecture



The practice of enterprise application development has benefited from the emergence of many new enabling technologies. Multi-tiered object-oriented platforms, such as Java and .NET, have become commonplace. These new tools and technologies are capable of building powerful applications, but they are not easily implemented. Common failures in enterprise applications often occur because their developers do not understand the architectural lessons that experienced object developers have learned. Patterns of Enterprise Application Architecture is written in direct response to the stiff challenges that face enterprise application developers. The author, noted object-oriented designer Martin Fowler, noticed that despite changes in technology--from Smalltalk to CORBA to Java to .NET--the same basic design ideas can be adapted and applied to solve common problems. With the help of an expert group of contributors, Martin distills over forty recurring solutions into patterns. The result is an indispensable handbook of solutions that are applicable to any enterprise application platform. This book is actually two books in one. The first section is a short tutorial on developing enterprise applications, which you can read from start to finish to understand the scope of the book's lessons. The next section, the bulk of the book, is a detailed reference to the patterns themselves. Each pattern provides usage and implementation information, as well as detailed code examples in Java or C#. The entire book is also richly illustrated with UML diagrams to further explain the concepts. Armed with this book, you will have the knowledge necessary to make important architectural decisions about building an enterprise application and the proven patterns for use when building them.  The topics covered include  Dividing an enterprise application into layers  The major approaches to organizing business logic  An in-depth treatment of mapping between objects and relational databases  Using Model-View-Controller to organize a Web presentation  Handling concurrency for data that spans multiple transactions  Designing distributed object interfaces 

Download Link

Refactoring to Patterns

In 1994, Design Patterns changed the landscape of object-oriented development by introducing classic solutions to recurring design problems. 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 books refactorings General information and new insights about patterns and refactoring Detailed 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.

Download Link

Refactoring Workbook


Refactoring has gained widespread acceptance in the software engineering community as a proven means of improving software. Martin Fowler's seminal book on this topic, Refactoring, has been used in the classroom to explain that existing code could be improved and enhanced without significantly altering the fundamental structure of an application. But many find that this concept has a steep learning curve that inhibits its use. In this new book, William Wake offers a more introductory look at this important topic. The author outlines a proven workbook approach to learning and applying refactoring to "everyday" projects. This approach relies on examples that force the student to apply the main concepts of refactoring. As a result, readers gain thorough knowledge of how refactoring can help improve their software.

Download Link

Refactoring




Your class library works, but could it be better? Refactoring: Improving the Design of Existing Code shows how refactoring can make object-oriented code simpler and easier to maintain. Today refactoring requires considerable design know-how, but once tools become available, all programmers should be able to improve their code using refactoring techniques. Besides an introduction to refactoring, this handbook provides a catalog of dozens of tips for improving code. The best thing about Refactoring is its remarkably clear presentation, along with excellent nuts-and-bolts advice, from object expert Martin Fowler. The author is also an authority on software patterns and UML, and this experience helps make this a better book, one that should be immediately accessible to any intermediate or advanced object-oriented developer. (Just like patterns, each refactoring tip is presented with a simple name, a "motivation," and examples using Java and UML.) Early chapters stress the importance of testing in successful refactoring. (When you improve code, you have to test to verify that it still works.) After the discussion on how to detect the "smell" of bad code, readers get to the heart of the book, its catalog of over 70 "refactorings"--tips for better and simpler class design. Each tip is illustrated with "before" and "after" code, along with an explanation. Later chapters provide a quick look at refactoring research. Like software patterns, refactoring may be an idea whose time has come. This groundbreaking title will surely help bring refactoring to the programming mainstream. With its clear advice on a hot new topic, Refactoring is sure to be essential reading for anyone who writes or maintains object-oriented software. --Richard DraganTopics Covered: Refactoring, improving software code, redesign, design tips, patterns, unit testing, refactoring research, and tools.

Download Link

Wednesday, March 20, 2013

Interconnecting Cisco Network Devices, Part 2


Authorized Self-Study Guide Interconnecting Cisco Network Devices, Part 2 (ICND2) Third Edition Foundation learning for CCNA ICND2 Exam 640-816 Steve McQuerry, CCIE No. 6108  Interconnecting Cisco Network Devices, Part 2 (ICND2), is a Cisco-authorized, self-paced learning tool for CCNA? foundation learning. This book provides you with the knowledge needed to install, operate, and troubleshoot a small to medium-size branch office enterprise network, including configuring several switches and routers, connecting to a WAN, and implementing network security. In Interconnecting Cisco Network Devices, Part 2 (ICND2), you will study actual router and switch output to aid your understanding of how to configure these devices. Many notes, tips, and cautions are also spread throughout the book. Specific topics include constructing medium-size routed and switched networks, OSPF and EIGRP implementation, access control lists (ACL), address space management, and LAN extensions into a WAN. Chapter-ending review questions illustrate and help solidify the concepts presented in the book. Whether you are preparing for CCNA certification or simply want to gain a better understanding of how to build medium-size Cisco networks, you will benefit from the foundation information presented in this book. Interconnecting Cisco Network Devices, Part 2 (ICND2), is part of a recommended learning path from Cisco that includes simulation and hands-on training from authorized Cisco Learning Partners and self-study products from Cisco Press. To find out more about instructor-led training, e-learning, and hands-on instruction offered by authorized Cisco Learning Partners worldwide, please visit www.cisco.com/go/authorizedtraining. Steve McQuerry, CCIE No. 6108, is a consulting systems engineer with Cisco focused on data center architecture. Steve works with enterprise customers in the Midwestern United States to help them plan their data center architectures. He has been an active member of the internetworking community since 1991 and has held multiple certifications from Novell, Microsoft, and Cisco. Before joining Cisco Steve worked as an independent contractor with Global Knowledge, where he taught and developed coursework around Cisco technologies and certifications. Review the Cisco IOS? Software command structure for routers and switches Build LANs and understand how to overcome problems associated with Layer 2 switching Evaluate the differences between link-state and distance vector routing protocols Configure and troubleshoot OSPF in a single area Configure and troubleshoot EIGRP Identify and filter traffic with ACLs Use Network Address Translation (NAT) and Port Address Translation (PAT) to conserve IPv4 address space and implement IPv6 Connect different sites over WANs or the Internet using IPsec VPN, SSL VPN, leased line, and Frame Relay connections. This volume is in the Certification Self-Study Series offered by Cisco Press. Books in this series provide officially developed self-study solutions to help networking professionals understand technology implementations and prepare for the Cisco Career Certifications examinations.

Download Link

Interconnecting Cisco Network Devices, Part 1


Interconnecting Cisco Network Devices, Part 1 (ICND1), Second Edition, is a Cisco-authorized, self-paced learning tool for CCENT and CCNA foundation learning. This book provides you with the knowledge needed to configure Cisco switches and routers to operate in corporate internetworks. By reading this book, you will gain a thorough understanding of concepts and configuration procedures required to build a multiswitch, multirouter, and multigroup internetwork that uses LAN and WAN interfaces for the most commonly used routing and routed protocols. In Interconnecting Cisco Network Devices, Part 1 (ICND1), you will study installation and configuration information that network administrators need to install and configure Cisco products. Specific topics include building a simple network, Ethernet LANs, wireless LANs (WLANs), LAN and WAN connections, and network management. Chapter-ending review questions illustrate and help solidify the concepts presented in the book.. Whether you are preparing for CCENT or CCNA certification or simply want to gain a better understanding of how to build small Cisco networks, you will benefit from the foundation information presented in this book. Interconnecting Cisco Network Devices, Part 1 (ICND1), is part of a recommended learning path from Cisco that includes simulation and hands-on training from authorized Cisco Learning Partners and self-study products from Cisco Press. To find out more about instructor-led training, e-learning, and hands-on instruction offered by authorized Cisco Learning Partners worldwide, please visit www.cisco.com/go/authorizedtraining. Steve McQuerry, CCIE No. 6108, is a consulting systems engineer with Cisco. He focuses on data center architecture. Steve works with enterprise customers in the Midwestern United States to help them plan their data center architectures. Steve has been an active member of the internetworking community since 1991 and has held multiple certifications from Novell, Microsoft, and Cisco. Prior to joining Cisco, Steve worked as an independent contractor with Global Knowledge where he taught and developed coursework around Cisco technologies and certifications. Understand the principles on which basic networks operateExplore the operation and configuration of LANs Extend the boundaries of the network by implementing and securing wireless connectivityConfigure routers to provide connectivity between different networks Learn about IP addressing number conversion Establish WAN interconnectivity using point-to-point links, DSL, and cable servicesConfigure Network Address Translation (NAT) Use Cisco IOS commands to determine the layout of a Cisco network topology Manage the router startup and work with IOS configuration files and Cisco IOS images. This volume is in the Certification Self-Study Series offered by Cisco Press. Books in this series provide officially developed self-study solutions to help networking professionals understand technology implementations and prepare for the Cisco Career Certifications examinations.

Download Link

Tuesday, March 19, 2013

Schaum's Outline of Programming with C




Confusing Textbooks, Missed Lectures, Not Enough Time, Fortunately for you, there's Schaum's Outlines. More than 40 million students have trusted Schaum's to help them succeed in the classroom and on exams. Schaum's is the key to faster learning and higher grades in every subject. Each Outline presents all the essential course information in an easy-to-follow, topic-by-topic format. You also get hundreds of examples, solved problems, and practice exercises to test your skills. This Schaum's Outline gives you Practice problems with full explanations that reinforce knowledge Coverage of the most up-to-date developments in your course field In-depth review of practices and applications Fully compatible with your classroom text, Schaum's highlights all the important facts you need to know. Use Schaum's to shorten your study time-and get your best test scores! Schaum's Outlines-Problem Solved.

Download Link