50 Specific Ways to Improve Your C#
In Effective C#, Third Edition, respected .NET expert Bill Wagner identifies 50 ways to harness the full power of the C# 6.0 language to write exceptionally robust, efficient, and well-performing code. Reflecting the growing sophistication of the C# language and its development community, Wagner has more » identified dozens of new ways to write better code. This edition’s new solutions include some that take advantage of generics and several that are more focused on LINQ, as well as a full chapter of advanced best practices for working with exceptions.
Wagner’s clear, practical explanations, expert tips, and realistic code examples have made Effective C# indispensable to hundreds of thousands of developers. Drawing on his unsurpassed C# experience, he addresses everything from resource management to multicore support, and reveals how to avoid common pitfalls in the language and its .NET environment. Learn how to choose the most effective solution when multiple options exist, and how to write code that’s far easier to maintain and improve. Wagner shows how and why to
* Prefer implicitly typed local variables (see Item 1)
* Replace string.Format() with interpolated strings (see Item 4)
* Express callbacks with delegates (see Item 7)
* Make the most of .NET resource management (see Item 11)
* Define minimal and sufficient constraints for generics (see Item 18)
* Specialize generic algorithms using runtime type checking (see Item 19)
* Use delegates to define method constraints on type parameters (see Item 23)
* Augment minimal interface contracts with extension methods (see Item 27)
* Create composable APIs for sequences (see Item 31)
* Decouple iterations from actions, predicates, and functions (see Item 32)
* Prefer lambda expressions to methods (see Item 38)
* Distinguish early from deferred execution (see Item 40)
* Avoid capturing expensive resources (see Item 41)
* Use exceptions to report method contract failures (see Item 45)
* Leverage side effects in exception filters (see Item 50)
You’re already a successful C# programmer, and this book will make you an outstanding one.
Content Update Program: This book is part of the InformIT Content Update Program. As updates are made to C#, sections of this book will be updated or new sections will be added to match updates to the technologies. See inside for details. « less
Game development is one of the most rewarding crafts of modern times. Not only is making games a wonderful lifelong hobby, but employment opportunities exist at many levels. Learn to Implement Games with Code guides you through the development process as you put together a release-ready game. It is written more » in a friendly and conversational tone, which is suitable for a wide audience of aspiring game developers, such as yourself. You will gain practical, hands-on experience with implementing game components using code. Gradually, you will build a complete game that you can be proud of. After finishing this book, you will be prepared to start making games of your very own design. « less
Protocols for Secure Electronic Commerce, Third Edition presents a compendium of protocols for securing electronic commerce, or e-commerce, in consumer- and business-to-business applications. Attending to a variety of electronic payment systems currently in use around the globe, this edition:
* Updates more » all chapters to reflect the latest technical advances and developments in areas such as mobile commerce
* Adds a new chapter on Bitcoin and other cryptocurrencies that did not exist at the time of the previous edition's publication
* Increases the coverage of PayPal in accordance with PayPal’s amplified role for consumers and businesses
* Expands the discussion of bank cards, dedicating a full chapter to magnetic stripe cards and a full chapter to chip-and-PIN technology
Protocols for Secure Electronic Commerce, Third Edition offers a state-of-the-art overview of best practices for the security of e-commerce, complete with end-of-chapter review questions and an extensive bibliography of specialized references. A Solutions Manual and PowerPoint slides are available with qualifying course adoption. « less
Building Well-Designed and Supportable MongoDB Databases
Congratulations! You completed the MongoDB application within the given tight timeframe and there is a party to celebrate your application's release into production. Although people are congratulating you at the celebration, you are feeling some uneasiness inside. To complete the project on time required more » making a lot of assumptions about the data, such as what terms meant and how calculations are derived. In addition, the poor documentation about the application will be of limited use to the support team, and not investigating all of the inherent rules in the data may eventually lead to poorly-performing structures in the not-so-distant future.
Now, what if you had a time machine and could go back and read this book. You would learn that even NoSQL databases like MongoDB require some level of data modeling. Data modeling is the process of learning about the data, and regardless of technology, this process must be performed for a successful application. You would learn the value of conceptual, logical, and physical data modeling and how each stage increases our knowledge of the data and reduces assumptions and poor design decisions.
Read this book to learn how to do data modeling for MongoDB applications, and accomplish these five objectives: 1. Understand how data modeling contributes to the process of learning about the data, and is, therefore, a required technique, even when the resulting database is not relational. That is, NoSQL does not mean NoDataModeling!
2. Know how NoSQL databases differ from traditional relational databases, and where MongoDB fits.
3. Explore each MongoDB object and comprehend how each compares to their data modeling and traditional relational database counterparts, and learn the basics of adding, querying, updating, and deleting data in MongoDB.
4. Practice a streamlined, template-driven approach to performing conceptual, logical, and physical data modeling. Recognize that data modeling does not always have to lead to traditional data models!
5. Distinguish top-down from bottom-up development approaches and complete a top-down case study which ties all of the modeling techniques together.
This book is written for anyone who is working with, or will be working with MongoDB, including business analysts, data modelers, database administrators, developers, project managers, and data scientists. There are three sections: * In Section I, Getting Started, we will reveal the power of data modeling and the tight connections to data models that exist when designing any type of database (Chapter 1), compare NoSQL with traditional relational databases and where MongoDB fits (Chapter 2), explore each MongoDB object and comprehend how each compares to their data modeling and traditional relational database counterparts (Chapter 3), and explain the basics of adding, querying, updating, and deleting data in MongoDB (Chapter 4).
* In Section II, Levels of Granularity, we cover Conceptual Data Modeling (Chapter 5), Logical Data Modeling (Chapter 6), and Physical Data Modeling (Chapter 7). Notice the "ing" at the end of each of these chapters. We focus on the process of building each of these models, which is where we gain essential business knowledge.
* In Section III, Case Study, we will explain both top down and bottom up development approaches and go through a top down case study where we start with business requirements and end with the MongoDB database. This case study will tie together all of the techniques in the previous seven chapters.
Key points are included at the end of each chapter as a way to reinforce concepts. In addition, this book is loaded with hands-on exercises, along with their answers provided in Appendix A. Appendix B contains all of the book’s references and Appendix C contains a glossary of the terms used throughout the text. « less
A NoSQL Document Database and Application Platform
Get a head start with eXist, the open source NoSQL database and application development platform built entirely around XML technologies. With this hands-on guide, you'll learn eXist from the ground up, from using this feature-rich database to work with millions of documents to building complex web applications more » that take advantage of eXist's many extensions.
If you're familiar with XML - as a student, professor, publisher, or developer - you'll find that eXist is ideal for all kinds of documents. This book shows you how to store, query, and search documents with XQuery and other XML technologies, and how to construct applications on top of the database with tools such as eXide and eXist's built-in development environment. « less
This book covers introductory Word, Excel, Access, and PowerPoint, with an additional Windows 8 chapter.
Move students beyond the point-and-click.
The goal of the Exploring series is to move students beyond the point and click, to understanding the why and how behind each skill. And, because so more » much learning takes place outside of the classroom, this series provides learning tools that students can access anywhere, any time.
Students go to college now with a different set of skills than they did years ago. With this in mind, the Exploring series seeks to move students beyond the basics of the software at a faster pace, without sacrificing coverage of the fundamental skills that everyone needs to know.
NOTE: This is just the spiral bound book with access card that includes the online. content that used to be on the CD/DVD.
ALERT: If the student wants access to MyITLab, they would need to order the package ISBN that includes the book and the MyITLab access card.
There are many packages that include MyITLab so the student should request the ISBN from their Instructor before purchasing. Several versions of Pearson's MyLab & Mastering products exist for each title, and registrations are not transferable. To register for and use Pearson's MyLab & Mastering products, you may also need a Course ID, which your instructor will provide.
One of the packages
013381016X / 9780133810165 Exploring Microsoft Office 2013, Volume 1 & MyITLab -- Access Card -- for Exploring Microsoft Office 2013 Package
Package consists of
0133142671 / 9780133142679 Exploring Microsoft Office 2013, Volume 1
0133775143 / 9780133775143 MyITLab without Pearson eText -- Access Card -- for Exploring Microsoft Office 2013 (Replacement Card) « less
* Expert author delivers an in-depth tutorial showing how to build a real-world app that is loosely coupled, with each component built to exist separately
I spent 3 years scaling Twitpic to over 60 million visitors and 20 billion HTTP Requests. I'm sharing everything I've learnt in this ebook so you can skip over the trial-and-error and head straight to the techniques.
Covers the entire stack- Nginx, MySQL, Redis
In-Depth MySQL Tuning
We discuss more » each parameter, why it exists, and how to tune it.
Nginx and PHP-FPM
Move away from Apache and learn how to tune Nginx/PHP-FPM.
Redis and Memcached
We discuss scaling sessions, Russian Doll Caching, and the "dogpile".
This content doesn't exist anywhere else
When I set out to write Scaling PHP Apps, my goal was to write about topics that didn't really exist anywhere else. This isn't regurgitated documentation- it's real life scaling techniques, mixed with case studies and in-depth exploration. Make no mistake, this is a highly technical book, and you should already be comfortable with PHP.
If you've ever researched scaling, you know nothing like this book really exists anywhere else. It's an important book that'll save you hours of research and testing. Readers have told me it's blown their expectations away and that they've implemented hundreds of tidbits into their stack.
This book is filled with 150-pages of real-life, practical content. Changes that you can implement today!
* Settle the Persistent Connection debate (with benchmarks)
* Detailed explination of each important MySQL Setting
* Understand exactly how NUMA impacts MySQL
* Why you should scrap Apache and mod_php
* Bugs in Memcached you've never heard about
* How DNS lookups can crash your whole application
* Clever uses of Redis for stats and performance
* How to debug PHP with strace and xhprof
* Ways to benchmark MySQL, HAProxy, Nginx, and PHP « less
Terminology for Art, Architecture, and Other Cultural Works
This detailed book is a "how-to" guide to building controlled vocabulary tools, cataloging and indexing cultural materials with terms and names from controlled vocabularies, and using vocabularies in search engines and databases to enhance discovery and retrieval on line.
Also covered are the following: more » What are controlled vocabularies and why are they useful? Which vocabularies exist for cataloging art and cultural objects? How should they be integrated in a cataloging system? How should they be used for indexing and for retrieval? How should an institution construct a local authority file? The links and relationships in a controlled vocabulary ensure that relationships are defined and maintained for both cataloging and retrieval, clarifying whether a "rose window" and a "Catherine wheel" are the same thing, or how "pot-metal glass" is related to the more general term "stained glass."
Introduction to Controlled Vocabularies provides organizations and individuals with a practical tool for creating and implementing vocabularies as reference tools, sources of documentation, and powerful enhancements for online searching. « less
Fundamentals and Applications with PIC
Microcontrollers exist in a wide variety of models with varying structures and numerous application opportunities. Despite this diversity, it is possible to find consistencies in the architecture of most microcontrollers. Microcontrollers: Fundamentals and Applications with PIC focuses on these common more » elements to describe the fundamentals of microcontroller design and programming. Using clear, concise language and a top-bottom approach, the book describes the parts that make up a microcontroller, how they work, and how they interact with each other. It also explains how to program medium-end PICs using assembler language.
Examines analog as well as digital signals
This volume describes the structure and resources of general microcontrollers as well as PIC microcontrollers, with a special focus on medium-end devices. The authors discuss memory organization and structure, and the assembler language used for programming medium-end PIC microcontrollers. They also explore how microcontrollers can acquire, process, and generate digital signals, explaining available techniques to deal with parallel input or output, peripherals, resources for real-time use, interrupts, and the specific characteristics of serial data interfaces in PIC microcontrollers. Finally, the book describes the acquisition and generation of analog signals either using resources inside the chip or by connecting peripheral circuits.
Provides hands-on clarification
Using practical examples and applications to supplement each topic, this volume provides the tools to thoroughly grasp the architecture and programming of microcontrollers. It avoids overly specific details so readers are quickly led toward design implementation. After mastering the material in this text, they will understand how to efficiently use PIC microcontrollers in a design process. « less