0%

Book Description

Acquire necessary skills in preparing for Microsoft certification and enhance your software development career by learning the concepts of C# programming

Key Features

  • Prepare for the certification using step-by-step examples, and mock tests with standard solutions
  • Understand the concepts of data security for secure programming with C#
  • Learn to scale and optimize your application codebase using best practices and patterns

Book Description

Programming in C# is a certification from Microsoft that measures the ability of developers to use the power of C# in decision making and creating business logic. This book is a certification guide that equips you with the skills that you need to crack this exam and promote your problem-solving acumen with C#.

The book has been designed as preparation material for the Microsoft specialization exam in C#. It contains examples spanning the main focus areas of the certification exam, such as debugging and securing applications, and managing an application's code base, among others. This book will be full of scenarios that demand decision-making skills and require a thorough knowledge of C# concepts. You will learn how to develop business logic for your application types in C#. This book is exam-oriented, considering all the patterns for Microsoft certifications and practical solutions to challenges from Microsoft-certified authors.

By the time you've finished this book, you will have had sufficient practice solving real-world application development problems with C# and will be able to carry your newly-learned skills to crack the Microsoft certification exam to level up your career.

What you will learn

  • Explore multi-threading and asynchronous programming in C#
  • Create event handlers for effective exception handling
  • Use LINQ queries for data serialization and deserialization
  • Manage filesystems and understand I/O operations
  • Test, troubleshoot, and debug your C# programs
  • Understand the objectives of Exam 70-483 and apply common solutions

Who this book is for

The book is intended to the aspirants of Microsoft certifications and C# developers wanting to become a Microsoft specialist. The book does not require the knowledge of C#, basic knowledge of software development concepts will be beneficial

Table of Contents

  1. Title Page
  2. Copyright and Credits
    1. Programming in C#: Exam 70-483 (MCSD) Guide
  3. About Packt
    1. Why subscribe?
  4. Contributors
    1. About the authors
    2. About the reviewers
    3. Packt is searching for authors like you
  5. Preface
    1. Who this book is for
    2. What this book covers
    3. To get the most out of this book
      1. Download the example code files
      2. Download the color images
      3. Conventions used
    4. Get in touch
      1. Reviews
  6. Learning the Basics of C#
    1. Technical requirements
    2. Comparing C# with C and C++
      1. C# versus C 
      2. C# versus C++ 
    3. .NET Framework 
      1. Languages/applications
      2. The class library
      3. Common Language Runtime (CLR)
    4. .NET Framework release versions 
    5. Visual Studio for C#
    6. Basic structure of C#
    7. Creating a basic program in C#
    8. Summary
    9. Questions
    10. Answers
  7. Understanding Classes, Structures, and Interfaces
    1. Technical requirements
    2. Access modifiers
    3. Data types in C#
      1. Value type variables
        1. Simple types
        2. Enum types
        3. Struct types
      2. Reference type variables
    4. Structs versus classes
    5. Interfaces and inheritance
      1. Inheritance
      2. Interfaces in C#
    6. Summary
    7. Questions
    8. Answers
  8. Understanding Object-Oriented Programming
    1. Technical requirements
    2. Understanding object-oriented programming
    3. Understanding encapsulation
      1. Code example
    4. Understanding abstraction
    5. Understanding inheritance
      1. Method overriding
      2. Abstract classes
      3. Abstract versus virtual methods
      4. Sealed classes
    6. Understanding polymorphism
      1. Static/compile-time polymorphism
      2. Runtime polymorphism
    7. Summary 
    8. Questions
    9. Answers
  9. Implementing Program Flow
    1. Technical requirements
    2. Understanding operators
      1. Unary operators
      2. Relational operators
      3. Equality operators
      4. Shift operators
      5. Logical, conditional, and null operators
    3. Understanding conditional/selection statements
      1. if...else
      2. switch..case..default
      3. break
      4. goto
      5. continue
    4. Iteration statements
      1. do...while
      2. for
        1. Initializer section
        2. Condition section
        3. Iteration section
        4. Examples of rare usage for statements
      3. foreach...in
      4. while
    5. Summary
    6. Questions
    7. Answers
    8. Further reading
  10. Creating and Implementing Events and Callbacks
    1. Technical requirements
    2. Understanding delegates
    3. Instantiating a delegate
      1. Initiating delegates using NamedMethod
      2. Initiating a delegate using anonymous functions
        1. Lambda expressions
        2. Anonymous methods
    4. Variance in delegates
      1. Built-in delegates
      2. Multicast delegates
    5. Handling and raising events
    6. Summary
    7. Questions
    8. Answers
    9. Further reading
  11. Managing and Implementing Multithreading
    1. Technical requirements
    2. Understanding threads and the threading process
      1. Managing threads
      2. Thread properties
      3. Parameterized threads
      4. Foreground and background threads
      5. Thread states
      6. Destroying threads
      7. Thread pools
      8. Thread storage
    3. Synchronizing data in multithreading
    4. Multithreading
      1. Parallel programming
      2. TPL
        1. Data parallelism
          1. Using tasks
          2. Using the Parallel class
      3. PLINQ
      4. Asynchronous programming with async and await
    5. Summary
    6. Questions
    7. Answers
    8. Further reading
  12. Implementing Exception Handling
    1. Technical requirements
    2. Exceptions and handling exceptions in code
      1. Using exceptions
      2. Exception handling
    3. Compiler-generated exceptions
    4. Custom exceptions
    5. Summary
    6. Questions
    7. Answers
    8. Further reading
  13. Creating and Using Types in C#
    1. Technical requirements
    2. Creating types
      1. Types in C# 
        1. Unsafe code and the use of pointer types
      2. Choosing the type of variable
      3. Static variables
        1. Static member variables
        2. Static methods
      4. Constructors
      5. Named parameters
      6. Optional parameters
      7. Generics types
    3. Consuming data types in C#
      1. Boxing and unboxing 
      2. Type conversions in C#
        1. Implicit conversion
        2. Explicit conversion
    4. Enforcing encapsulation
    5. Manipulating strings
      1. StringBuilder
      2. StringReader and StringWriter
      3. String searching 
    6. Overview of reflection
    7. Summary 
    8. Questions
    9. Answers
  14. Managing the Object Life Cycle
    1. Technical requirements
    2. Managed code versus unmanaged code
    3. Garbage collection
      1. Managed heap
      2. Generations
      3. The mark-compact algorithm
      4. Calling garbage collection
    4. Managing unmanaged resources
      1. The finalization mechanism
    5. The IDisposable interface
      1. The using block
    6. Summary
    7. Questions
    8. Answers
  15. Find, Execute, and Create Types at Runtime Using Reflection
    1. Technical requirements
    2. Attributes
      1. Using attributes
      2. Creating custom attributes
      3. Retrieving metadata
    3. Reflection
      1. Invoking methods and using properties
    4. Summary
    5. Questions
    6. Answers
  16. Validating Application Input
    1. Technical requirements
    2. The importance of validating input data
    3. Data integrity
    4. Parsing and converting
    5. Regular expressions
    6. JSON and XML
    7. Summary
    8. Questions
    9. Answers
  17. Performing Symmetric and Asymmetric Encryption
    1. Technical requirements
    2. Cryptography
    3. Symmetric encryption
    4. Asymmetric encryption
    5. Digital signatures
    6. Hash values
    7. Summary
    8. Questions
    9. Answers
  18. Managing Assemblies and Debugging Applications
    1. Technical requirements
    2. Assemblies
      1. Assembly contents and manifest
      2. Target .NET Framework
      3. Signing assemblies
      4. Versioning assemblies
        1. Version number
    3. Debugging the C# application
    4. Tracing
    5. Summary
    6. Questions
    7. Answers
  19. Performing I/O Operations
    1. Technical requirements
    2. File I/O operations
      1. Working with System.IO helper classes
      2. Drives and directories
        1. Checking whether the directory exists
        2. Creating a directory
        3. Looping through the files
      3. Working with files
        1. Checking whether a file exists
        2. Moving a file from one location to another
        3. Copying a file from one location to another
        4. Deleting a file 
      4. Stream object
        1. FileStream
      5. Exception handling
    3. Reading data from a network
      1. WebRequest and WebResponse
      2. Asynchronous I/O operations
        1. Async operations on file
        2. Using the await statement for parallel asynchronous calls
    4. Summary 
    5. Questions
    6. Answers
  20. Using LINQ Queries
    1. Technical requirements
    2. Introducing LINQ
      1. Queries
    3. Understanding language features that make LINQ possible
      1. Implicitly typed variables
      2. Object initialization syntax
      3. Lambda expressions
      4. Extension methods
      5. Anonymous types
    4. Understanding LINQ query operators
      1. Select and SelectMany
      2. The join operator
      3. The orderby operator
      4. Average
      5. GroupBy
    5. Understanding LINQ behind the scenes
    6. Using LINQ to XML
      1. Querying XML
      2. Creating XML
      3. Updating XML
    7. Summary 
    8. Questions
    9. Answers
  21. Serialization, Deserialization, and Collections
    1. Technical requirements
    2. Serialization and deserialization
      1. XmlSerializer
      2. Binary serialization
    3. Working with collections
      1. Arrays
      2. Lists
      3. Dictionary
      4. Queues and stacks
    4. Choosing a collection
    5. Summary 
    6. Questions
    7. Answers
  22. Mock Test 1
  23. Mock Test 2
  24. Mock Test 3
  25. Assessments
    1. Chapter 17 – Mock Test 1
    2. Chapter 18 – Mock Test 2
    3. Chapter 19 – Mock Test 3 
  26. Other Books You May Enjoy
    1. Leave a review - let other readers know what you think
3.21.21.47