0%

Book Description

Grasp the basic concepts that drive all Microsoft .NET-based languages—and prepare yourself to learn .NET programming. If you have absolutely no previous experience, no problem—simply start here! This ebook provides the foundation for all other .NET programming language books in the Start Here! series. You’ll explore programming concepts and techniques with clear explanations, easy-to-follow examples, and exercises. It’s the perfect reference for understanding how computer programs work.

  • Delve into object-oriented concepts such as properties, methods, and events

  • Discover what multiprocessing is—and how it’s changing computing

  • Examine how programs store data in files, object stores, and databases

  • Explore controls, such as labels, text boxes, menus, and scroll bars

  • Learn how programming environments help you design and run programs

  • Get an extensive glossary of key programming terms

  • Table of Contents

    1. Start Here!™ Fundamentals of Microsoft® .NET Programming
      1. SPECIAL OFFER: Upgrade this ebook with O’Reilly
      2. Introduction
        1. Who Should Read This Book
          1. Assumptions
        2. Who Should Not Read This Book
        3. What You Need to Use This Book
        4. Organization of This Book
        5. Conventions and Features in This Book
        6. Source Code
        7. Acknowledgments
        8. Errata & Book Support
        9. We Want to Hear from You
        10. Stay in Touch
        11. Other Resources
      3. 1. Computer Hardware
        1. Types of Computers
          1. Personal Computers
          2. Desktops, Towers, and Workstations
          3. Laptops, Notebooks, Netbooks, and Tablets
          4. Minis, Servers, and Mainframes
          5. Handheld Computers
          6. Comparing Computer Types
        2. Computer Speed
        3. Data Storage
          1. RAM
          2. Flash Drives
          3. Hard Drives
          4. Blu-ray, DVD, and CD Drives
          5. Working with Files
        4. Networks
        5. Summary
      4. 2. Multiprocessing
        1. Multitasking
        2. Multiprocessing
        3. Multithreading
        4. Problems with Parallelism
          1. Contention for Resources
          2. Race Conditions
          3. Locks
          4. Deadlocks
        5. Looking for Parallelism
        6. Distributed Computing
        7. Task Parallel Library
        8. Summary
      5. 3. Programming Environments
        1. From Software to Hardware
        2. Programming Environments
        3. Visual Studio
        4. Summary
      6. 4. Windows Program Components
        1. Menus
          1. Use Ellipses
          2. Provide Accelerators
          3. Provide Shortcuts
          4. Use Standard Menu Items
          5. Don’t Hide Commands
          6. Use Shallow Menu Hierarchies
          7. Keep Menus Short
          8. A Menu Example
        2. Context Menus
        3. Toolbars and Ribbons
        4. Dialog Boxes
        5. User Interface Design
          1. Control Order
          2. Group Related Controls
          3. The Rule of Seven
          4. Don’t Allow Mistakes
          5. Provide Hints
        6. Summary
      7. 5. Controls
        1. Using Controls
          1. Windows Forms Controls
          2. WPF Controls
        2. Properties
          1. Windows Forms Properties
          2. WPF Properties
        3. Methods
        4. Events
        5. Summary
      8. 6. Variables
        1. Fundamental Data Types
        2. Strings
        3. Program-Defined Data Types
          1. Arrays
          2. Enumerations
          3. Structures
          4. Classes
        4. Value and Reference Types
        5. Type Conversion
          1. Explicit Conversion
          2. Implicit Conversion
        6. Scope, Accessibility, and Lifetime
          1. Scope
          2. Accessibility
          3. Lifetime
        7. Summary
      9. 7. Control Statements
        1. Pseudocode
        2. Looping Statements
          1. For Loops
          2. For Each Loops
          3. Do While Loops
          4. While Loops
          5. Until Loops
        3. Conditional Statements
          1. If
          2. If Else
          3. Else If
          4. Case
        4. Jumping Statements
          1. Go To
          2. Exit
          3. Continue
          4. Return
        5. Jumping Guidelines
        6. Error Handling
        7. Summary
      10. 8. Operators
        1. Precedence
        2. Operators
          1. Parentheses
          2. Operator Precedence
          3. Post- and Pre-Increment and Decrement
          4. Bitwise Operators
          5. Modulus and Division
          6. Conditional And and Or
          7. Conditional
          8. Compound Assignment Operators
          9. Concatenation Operators
        3. Operator Overloading
          1. Operator Overloading Overload
          2. Conversion Operators
        4. Summary
      11. 9. Routines
        1. Types of Routines
        2. Advantages of Routines
          1. Reducing Duplicated Code
          2. Reusing Code
          3. Simplifying Complex Code
          4. Hiding Implementation Details
          5. Dividing Tasks Among Programmers
          6. Making Debugging Easier
        3. Calling Routines
        4. Writing Good Routines
          1. Perform a Single, Well-Defined Task
          2. Avoid Side Effects
          3. Use Descriptive Names
          4. Keep It Short
          5. Use Comments
        5. Parameters
          1. Optional Parameters
          2. Parameter Arrays
          3. Parameter-Passing Methods
          4. Reference and Value Types
          5. Arrays
          6. Routine Overloading
        6. Routine Accessibility
        7. Recursion
        8. Summary
      12. 10. Object-Oriented Programming
        1. Classes
        2. Class Benefits
        3. Properties, Methods, and Events
          1. Properties
          2. Methods
          3. Events
          4. Shared Versus Instance Members
        4. Inheritance
        5. Polymorphism
        6. Overriding Members
        7. Shadowing Members
        8. Inheritance Diagrams
        9. Abstraction and Refinement
          1. Abstraction
          2. Refinement
        10. “Is-A” Versus “Has-A”
        11. Multiple Inheritance and Interface Implementation
        12. Constructors and Destructors
          1. Constructors
            1. Constructors in the Same Class
            2. Constructors in the Parent Class
          2. Destructors
            1. Garbage Collection
            2. IDisposable
        13. Summary
      13. 11. Development Techniques
        1. Comments
          1. Types of Comments
          2. XML Comments
            1. IntelliSense Support
            2. Automatic Documentation
            3. Creating XML Comments
            4. Supported XML Comments
        2. Naming Conventions
        3. Development Techniques
          1. Data-centric Viewpoint
          2. User-centric Viewpoint
          3. Agile Development
          4. Extreme Programming
          5. Test-driven Development
        4. Summary
      14. 12. Globalization
        1. Terminology
        2. Culture Codes
        3. Locale-Specific Text and Symbols
        4. Localizing User Interfaces in Visual Studio
        5. Locale-Specific Formats
        6. Culture-Aware Functions in .NET
        7. Summary
      15. 13. Data Storage
        1. Files
          1. Text Files
          2. Random Access Files
          3. INI Files
          4. XML Files
          5. Config Files
        2. The System Registry
        3. Relational Databases
        4. Other Databases
          1. Spreadsheets
          2. Object Stores
          3. Object-Relational Database
          4. Hierarchical Databases
          5. Network Databases
          6. Temporal Databases
        5. Summary
      16. 14. .NET Libraries
        1. Microsoft Namespaces
        2. System Namespaces
        3. Summary
      17. Glossary
      18. Index
      19. About the Author
      20. SPECIAL OFFER: Upgrade this ebook with O’Reilly