Boost your exam-day confidence with an Exam Replay or an Exam Replay with Practice Test.

Exam
70-483

Visual Studio logo

  • Published:
    October 12, 2012
  • Languages:
    English, Chinese (Simplified), Chinese (Traditional), French, German, Japanese, Portuguese (Brazil)
  • Audiences:
    Developers
  • Technology:
    Visual Studio 2012
  • Credit toward certification:
    MCP, MCSA

Programming in C#

* Pricing does not reflect any promotional offers or reduced pricing for Microsoft Imagine Academy program members, Microsoft Certified Trainers, and Microsoft Partner Network program members. Pricing is subject to change without notice. Pricing does not include applicable taxes. Please confirm exact pricing with the exam provider before registering to take an exam.

Effective May 1, 2017, the existing cancellation policy will be replaced in its entirety with the following policy: Cancelling or rescheduling your exam within 5 business days of your registered exam time is subject to a fee. Failing to show up for your exam appointment or not rescheduling or cancelling your appointment at least 24 hours prior to your scheduled appointment forfeits your entire exam fee.

Watch an Exam Prep session from Microsoft Ignite 2017

Skills measured

This exam measures your ability to accomplish the technical tasks listed below. The percentages indicate the relative weight of each major topic area on the exam. The higher the percentage, the more questions you are likely to see on that content area on the exam. View video tutorials about the variety of question types on Microsoft exams.

Please note that the questions may test on, but will not be limited to, the topics described in the bulleted text.

Do you have feedback about the relevance of the skills measured on this exam? Please send Microsoft your comments. All feedback will be reviewed and incorporated as appropriate while still maintaining the validity and reliability of the certification process. Note that Microsoft will not respond directly to your feedback. We appreciate your input in ensuring the quality of the Microsoft Certification program.

If you have concerns about specific questions on this exam, please submit an exam challenge.

If you have other questions or feedback about Microsoft Certification exams or about the certification program, registration, or promotions, please contact your Regional Service Center.

Note: There are exam updates effective as of December 14, 2017. To learn more about these changes and how they affect the skills measured, please download and review the Exam 483 change document.

Manage Program Flow (25-30%)
  • Implement multithreading and asynchronous processing
    • Use the Task Parallel library, including theParallel.For method, 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
    • Synchronize resources; implement locking; cancel a long-running task; implement thread-safe methods to handle race conditions
  • Implement program flow
    • Iterate across collection and array items; program decisions by using switch statements, if/then, and operators; evaluate expressions
  • Create and implement events and callbacks
    • Create event handlers; subscribe to and unsubscribe from events; use built-in delegate types to create events; create delegates; lambda expressions; anonymous methods
  • Implement exception handling
    • Handle exception types, including SQL exceptions, network exceptions, communication exceptions, network timeout exceptions; use catch statements; use base class of an exception; implement try-catchfinally blocks; throw exceptions; rethrow an exception; create custom exceptions; handle inner exceptions; handle aggregate exception

Preparation resources

Create and Use Types (25-30%)
  • Create types
    • Create value types, including structs and enum; create reference types, generic types, constructors, static variables, methods, classes, extension methods; create optional and named parameters; create indexed properties; create overloaded and overriden methods
  • Consume types
    • Box or unbox to convert between value types; cast types; convert types; handle dynamic types; ensure interoperability with code that accesses COM APIs
  • Enforce encapsulation
    • Enforce encapsulation by using properties; enforce encapsulation by using accessors, including public, private, protected, and internal; enforce encapsulation 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, including 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; use string interpolation

Preparation resources

Debug Applications and Implement Security (25-30%)
  • Validate application input
    • Validate JSON data; choose the appropriate data collection type; manage data integrity; evaluate a regular expression to validate the input format; use built-in functions to validate data type and content
  • Perform symmetric and asymmetric encryption
    • Choose an appropriate encryption algorithm; manage and create certificates; implement key management; implement the System.Security namespace; hash 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 preprocessor directives; choose an appropriate build type; manage program database files (debug symbols)
  • Implement diagnostics in an application
    • Implement logging and tracing; profiling applications; create and monitor performance counters; write to the event log

Preparation 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
    • Query data by using operators, including projection, join, group, take, skip, aggregate; create methodbased 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

Preparation resources

Preparation options

Instructor-led training
Exam prep video

Microsoft Certification PREP Talk: Exam 483

In this episode of Prep tips from certification experts, James Seymour, Certification Planner, and Jerry Nixon, Developer Evangelist, discuss the relevancy of the skills being measured on Exam 483.



Programming in C# Jump Start

video

Self-paced training
  • Programming in C# Jump Start

    This developer training course covers C#, Microsoft’s managed C-style language for the .NET Framework. In typical Jump Start fashion, this session will be engaging and demo rich. Microsoft Technical Evangelist Jerry Nixon and co-founder of Crank211 Daren May provide sample after sample to show simple and complex techniques you can take back to your workplace.

Practice test

Take a Microsoft Official Practice Test for Exam 483

From the community
Books
Exam Ref 70-483: Programming in C# cover

Exam Ref 70-483: Programming in C#
Published: July 15, 2013

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.

Buy this book at the Microsoft Press Store

Who should take this exam?

Candidates for this exam are developers with at least one year of experience programming essential business logic for a variety of application types, hardware, and software platforms using C#.

Candidates should also have a thorough understanding of the following:

  • Managing program flow and events
  • Asynchronous programming and threading
  • Data validation and working with data collections including LINQ
  • Handling errors and exceptions
  • Working with arrays and collections
  • Working with variables, operators, and expressions
  • Working with classes and methods
  • Decision and iteration statements

More information about exams

Preparing for an exam

We recommend that you review this exam preparation guide in its entirety and familiarize yourself with the resources on this website before you schedule your exam. See the Microsoft Certification exam overview for information about registration, videos of typical exam question formats, and other preparation resources. For information on exam policies and scoring, see the Microsoft Certification exam policies and FAQs.

Note

This preparation guide is subject to change at any time without prior notice and at the sole discretion of Microsoft. Microsoft exams might include adaptive testing technology and simulation items. Microsoft does not identify the format in which exams are presented. Please use this preparation guide to prepare for the exam, regardless of its format. To help you prepare for this exam, Microsoft recommends that you have hands-on experience with the product and that you use the specified training resources. These training resources do not necessarily cover all topics listed in the "Skills measured" section.