Szczegóły ebooka

Visual Studio 2010 Best Practices. Learn and implement recommended practices for the complete software development lifecycle with Visual Studio 2010 with this book and

Visual Studio 2010 Best Practices. Learn and implement recommended practices for the complete software development lifecycle with Visual Studio 2010 with this book and

Peter Ritchie

Ebook
When you are developing on the Microsoft platform, Visual Studio 2010 offers you a range of powerful tools and makes the whole process easier and faster. After learning it, if you are think that you can sit back and relax, you cannot be further away from truth. To beat the crowd, you need to be better than others, learn tips and tricks that other don't know yet. This book is a compilation of the best practices of programming with Visual Studio.
Visual Studio 2010 best practices will take you through the practices that you need to master programming with .NET Framework. The book goes on to detail several practices involving many aspects of software development with Visual Studio. These practices include debugging and exception handling and design. It details building and maintaining a recommended practices library and the criteria by which to document recommended practices
The book begins with practices on source code control (SCC). It includes different types of SCC and discusses how to choose them based on different scenarios. Advanced syntax in C# is then covered with practices covering generics, iterator methods, lambdas, and closures.
The next set of practices focus on deployment as well as creating MSI deployments with Windows Installer XML (WiX)óincluding Windows applications and services. The book then takes you through practices for developing with WCF and Web Service.
The software development lifecycle is completed with practices on testing like project structure, naming, and the different types of automated tests. Topics like test coverage, continuous testing and deployment, and mocking are included. Although this book uses Visual Studio as example, you can use these practices with any IDE.
  • Visual Studio 2010 Best Practices
    • Table of Contents
    • Visual Studio 2010 Best Practices
    • Credits
    • About the Author
    • About the Reviewers
    • www.PacktPub.com
      • Support files, eBooks, discount offers and more
        • Why Subscribe?
        • Free Access for Packt account holders
        • Instant Updates on New Packt Books
    • Preface
      • What this book covers
      • What you need for this book
      • Who this book is for
      • Conventions
      • Reader feedback
      • Customer support
        • Downloading the example code
        • Errata
        • Piracy
        • Questions
    • 1. Working with Best Practices
      • Recommended practices
      • Intransitive "best" practices
      • Benefits of using practices
        • Avoiding pragmatic re-use
        • Reducing technical debt
      • Not invented here syndrome
      • Beyond practices
        • Using katas
        • Reaching kaizen
        • Aspects of a practice
        • Evaluating practices
        • Documenting practices
          • Geographic distribution
          • Team size
          • Regulatory compliance
          • Domain complexity
          • Organizational distribution
          • Technical complexity
          • Organizational complexity
          • Enterprise discipline
          • Life-cycle scope
          • Paradigm
          • Categorization
            • Creational
            • Structural
            • Behavioral
            • Integration
            • Procedural
            • Anti-patterns
          • In this book
        • Evolving practicesa collaborative effort
      • Axiomatic practices
      • Patterns
      • Why practices?
        • An empirical and not a defined process
        • Cross-cutting concerns
        • Focus on the value
      • The power of mantras
      • Summary
    • 2. Source Code Control Practices
      • Terminology
        • Repository
        • SCC
        • Edit/merge/commit
        • Lock/edit/check-in
        • Trunk
        • Branch
        • Fork
        • Merge
        • Check-out
        • Check-in
        • Changeset
        • Lock
        • Commit
        • Push
        • Pull
        • Tag/label
        • Shelving/shelvesets
      • Principles
      • Recommended SCC software evaluation criteria
        • Workflow model
        • Total cost of ownership
        • Integration options
        • Team dynamics and location
        • Self or third-party hosting
        • Authentication
      • Organizing for source code control
        • Organizing directory structures
        • Solution structure
        • Continuous integration
      • Branching strategies
        • Isolation
        • Ad hoc isolation
        • Testing isolation
        • Release isolation
        • Feature isolation
        • Team isolation
      • Commit (check-in) practices
        • Merge remote changes before commit
        • Commit frequently
        • Atomic commits
      • Occasionally connected source control
      • Distributed source control
      • Summary
    • 3. Low-level C# Practices
      • Working with generics
        • Limits of generics
      • Writing sequence and iterator members
      • Working with lambdas
      • Working with extension methods
      • Exception handling
        • Exceptions to the exception practices
      • Summary
    • 4. Architectural Practices
      • Terms
      • Decoupling
        • Command Query Separation
        • Data Transfer Objects (DTO)
        • Single responsibility
        • Layering
      • Data-based applications
        • Object Relational Mappers (ORMs)
        • NoSQL
        • Document databases
        • Pulling it all together
      • Distributed architecture
        • Messaging
        • Data synchronization and events
          • DTOs Revisited
      • Summary
    • 5. Recommended Practices for Deployment
      • Working with installers
      • Working with Windows Installer
        • Uninstalling
      • Visual Studio Setup and Deployment projects
        • Setup Wizard
        • Setup Project
        • Web Setup Project
        • Merge Module Project
        • CAB Project
          • File System
          • File types
          • User interface
          • Launch conditions
        • Custom actions
        • Drawbacks of Setup and Deployment Project
      • ClickOnce
      • Windows Installer XML (WiX)
        • Include files
        • Fragments
        • Migrating from Setup and Deployment projects
        • Integrating into Visual Studio
          • Setup Project
          • Merge Module Project
          • Setup Library Project
          • Bootstrapper Project
          • C# Custom Action Project
          • C++ Custom Action Project
        • Continuous integration
      • Silent installations
      • Testing
      • Summary
    • 6. Automated Testing Practices
      • First principles
        • Related terms
        • Test-driven development
        • Red, Green, Refactor
          • Im not a tester
        • Why automated?
        • Benefits
          • Continuous verification
          • Documentation
          • Caveats
        • Aspects of good tests
          • Repeatable
          • Independent
          • Verifies one thing
          • Simple
          • Readable
          • Fast
          • Reliable
          • Informative
      • Test naming
      • Separate test projects or not?
      • Test styles
        • Arrange, Act, Assert
        • Given, When, Then
        • Test types
          • State-based testing
          • Interaction testing
      • Object-orientation and tests
      • Fluent interfaces revisited
      • Mocking
        • Isolation frameworks
      • Methodologies
        • TDD
        • BDD
      • Test coverage
      • Continuous testing
      • Round-tripping requirements and acceptance
      • Summary
    • 7. Optimizing Visual Studio
      • Visual Studio efficiency through configuration
        • Recommended computer specifications
          • Multi-monitor
        • Organizing projects
        • Organizing windows
          • Auto-hiding
        • Toolbars
        • Exceptional features
        • Exporting/backing up your custom look and feel
        • Add-ins and extensions
          • Productivity Power Tools
            • Searchable add references dialog
            • Quick Find
            • Solution Navigator
          • Resharper
      • Visual Studio efficiency through usage
        • Using the keyboard over the mouse
        • Dividing up solutions
        • Macros
          • Advanced search/replace
        • Playing nice with source code control
          • Tracked file in project/solution
            • Change build action
            • Solution items
        • Continuous integration
          • Tests
          • Build
      • Summary
    • 8. Parallelization Practices
      • Principles
        • Threading primitives
        • Threading caveats
        • Other terminologies
      • Threads
      • Thread synchronization
        • Thread safety
          • Minding your invariants
        • Thread synchronization and locking
          • Locking
          • Lock-free synchronization
            • Volatile
            • Interlocked
          • Advanced synchronization
            • Mutex
            • Semaphore
            • WaitHandle
            • Reset events
      • Asynchronous operations
        • Asynchronous Design Pattern
        • Event-based Asynchronous Pattern
      • Division of labor
      • Task Parallel Library
        • Tasks
        • Execution
        • Parallelization
        • Working with Asynchronous Design Pattern
        • Continuations
      • Visual Studio 2012 asynchronous programming
        • The Task-based Asynchronous Pattern
      • Reactive Extensions
      • Summary
    • 9. Distributed Applications
      • Seeking scalability
      • Design options
        • Communicating via a database
        • Messaging pattern
          • Message queues
          • Command-query separation
          • Message bus
          • Service bus
      • Cloud
        • Infrastructure as a Service
        • Platform as a Service
        • Software as a Service
      • TCP/UDP
      • Debugging
      • Logging
        • What to log
      • Health monitoring
        • Proactive monitoring
      • Summary
    • 10. Web Service Recommended Practices
      • Implementing WCF services
        • Editing configuration
        • Hosting
          • Hosting WCF services in IIS
          • Windows service WCF self-hosting
          • WCF self-hosted
        • Manual testing
        • Authentication and authorization
        • Different transport options
      • ASP.NET Web Services
        • Authentication and authorization
      • Summary
    • Index
  • Tytuł: Visual Studio 2010 Best Practices. Learn and implement recommended practices for the complete software development lifecycle with Visual Studio 2010 with this book and
  • Autor: Peter Ritchie
  • Tytuł oryginału: Visual Studio 2010 Best Practices. Learn and implement recommended practices for the complete software development lifecycle with Visual Studio 2010 with this book and ebook.
  • ISBN: 9781849687171, 9781849687171
  • Data wydania: 2012-08-24
  • Format: Ebook
  • Identyfikator pozycji: e_3bej
  • Wydawca: Packt Publishing