C# 70-483 Studies

Recommended Book (click for Amazon link)

 

About

Prepare for MCSD Exam 70-483—and help demonstrate your real-world mastery of programming in C#. Designed for experienced IT professionals ready to advance their status, Exam Ref focuses on the critical thinking and decision-making acumen needed for success at the MCSD level.

Cost

$165.00

 

Resources

Watch Series

Developer Samples

Preparation Resources  [free]

Language Sections  [free]

Platform Sections [free]

 

Exam Objectives

Manage program flow (25–30%)
  • Implement multithreading and asynchronous processing
    • Use the Task Parallel library (ParallelFor, Plinq, Tasks); create continuation tasks; spawn threads by using ThreadPool; unblock the UI; use async and await keywords; manage data by using concurrent collections
  • Manage multithreading  2
    • Synchronize resources; implement locking; cancel a long-running task; implement thread-safe methods to handle race conditions
  • Implement program flow  2
    • Iterate across collection and array items; program decisions by using switch statements, if/then, and operators; evaluate expressions
  • Create and implement events and callbacks
  • Implement exception handling
    • Handle exception types (SQL exceptions, network exceptions, communication exceptions, network timeout exceptions); catch typed vs. base exceptions; implement try-catch-finally blocks; throw exceptions; determine when to rethrow vs. throw; create custom exceptions

Resources

Create and use types (25–30%)
  • Create types
    • Create value types (structs, enum), reference types, generic types, constructors, static variables, methods, classes, extension methods, optional and named parameters, and indexed properties; create overloaded and overridden methods
  • Consume types
    • Box or unbox to convert between value types; cast types; convert types; handle dynamic types; ensure interoperability with unmanaged code, for example, dynamic keyword
  • Enforce encapsulation
    • Enforce encapsulation by using properties, by using accessors (public, private, protected), and by using explicit interface implementation
  • Create and implement a class hierarchy
    • Design and implement an interface; inherit from a base class; create and implement classes based on the IComparable, IEnumerable, IDisposable, and IUnknown interfaces
  • Find, execute, and create types at runtime by using reflection
    • Create and apply attributes; read attributes; generate code at runtime by using CodeDom and lambda expressions; use types from the System.Reflection namespace (Assembly, PropertyInfo, MethodInfo, Type)
  • Manage the object life cycle
    • Manage unmanaged resources; implement IDisposable, including interaction with finalization; manage IDisposable by using the Using statement; manage finalization and garbage collection
  • Manipulate strings
    • Manipulate strings by using the StringBuilder, StringWriter, and StringReader classes; search strings; enumerate string methods; format strings

Resources

Debug applications and implement security (25–30%)
  • Validate application input
    • Validate JSON data; data collection types; manage data integrity; evaluate a regular expression to validate the input format; use built-in functions to validate data type and content out of scope: writing regular expressions
  • Perform symmetric and asymmetric encryption
    • Choose an appropriate encryption algorithm; manage and create certificates; implement key management; implement the System.Security namespace; hashing data; encrypt streams
  • Manage assemblies
    • Version assemblies; sign assemblies using strong names; implement side-by-side hosting; put an assembly in the global assembly cache; create a WinMD assembly
  • Debug an application
    • Create and manage compiler directives; choose an appropriate build type; manage programming database files and symbols
  • Implement diagnostics in an application
    • Implement logging and tracing; profiling applications; create and monitor performance counters; write to the event log

Resources

Implement data access (25–30%)
  • Perform I/O operations
    • Read and write files and streams; read and write from the network by using classes in the System.Net namespace; implement asynchronous I/O operations
  • Consume data
    • Retrieve data from a database; update data in a database; consume JSON and XML data; retrieve data by using web services
  • Query and manipulate data and objects by using LINQ (intro)
    • Query data by using operators (projection, join, group, take, skip, aggregate); create method-based LINQ queries; query data by using query comprehension syntax; select data by using anonymous types; force execution of a query; read, filter, create, and modify data structures by using LINQ to XML
  • Serialize and deserialize data
    • Serialize and deserialize data by using binary serialization, custom serialization, XML Serializer, JSON Serializer, and Data Contract Serializer
  • Store data in and retrieve data from collections
    • Store and retrieve data by using dictionaries, arrays, lists, sets, and queues; choose a collection type; initialize a collection; add and remove items from a collection; use typed vs. non-typed collections; implement custom collections; implement collection interfaces

Resources