Exam Objectives
The exam objectives are broken up into six different categories:
Understanding Core Programming (18 percent)
- Understand computer storage and data types.
- Understand computer decision structures.
- Identify the appropriate method for handling repetition.
- Understand error handling.
This objective may include but is not limited to: how a computer stores programs and the instructions in computer memory; memory stacks and heaps; memory size requirements for the various data storage types; numeric data and textual data
This objective may include but is not limited to: various decision structures used in all computer programming languages; If decision structures; multiple decision structures such as If...Else and switch/Select Case; reading flowcharts; decision tables; evaluating expressions
This objective may include but is not limited to: For loops, While loops, Do..While loops, and recursion
This objective may include but is not limited to: structured exception handling
Understanding Object-Oriented Programming (19 percent)
- Understand the fundamentals of classes.
- Understand inheritance.
- Understand polymorphism.
- Understand encapsulation.
This objective may include but is not limited to: properties, methods, events, and constructors; how to create a class; how to use classes in code
This objective may include but is not limited to: inheriting the functionality of a base class into a derived class
This objective may include but is not limited to: extending the functionality in a class after inheriting from a base class; overriding methods in the derived class
This objective may include but is not limited to: creating classes that hide their implementation details while still allowing access to the required functionality through the interface; access modifiers
Understanding General Software Development (14 percent)
- Understand application life cycle management.
- Interpret application specifications.
- Understand algorithms and data structures.
This objective may include but is not limited to: phases of application life cycle management; software testing
This objective may include but is not limited to: reading application specifications and translating them into prototypes, code, and components
This objective may include but is not limited to: arrays, stacks, queues, linked lists, and sorting algorithms; performance implications of various data structures; choosing the right data structure
Understanding Web Applications (20 percent)
- Understand Web page development.
- Understand Microsoft ASP.NET Web application development.
- Understand Web hosting.
- Understand Web services.
This objective may include but is not limited to: HTML, Cascading Style Sheets (CSS), JavaScript
This objective may include but is not limited to: page life cycle; event model; state management; client-side vs. server-side programming
This objective may include but is not limited to: creating virtual directories and Web sites; deploying Web applications; understanding the role of Internet Information Services
This objective may include but is not limited to: Web services that will be consumed by client applications; accessing Web services from a client application; SOAP and Web Service Definition Language (WSDL)
Understanding Desktop Applications (12 percent)
- Understand Windows Forms applications.
- Understand console-based applications.
- Understand Windows Services.
This objective may include but is not limited to: Windows Forms event model; visual inheritance; UI design; use of Multiple Document Interface (MDI) and Single Document Interface [and here] (SDI) applications
This objective may include but is not limited to: characteristics and capabilities of console-based applications
This objective may include but is not limited to: characteristics and capabilities of Windows Services
Understanding Databases (17 percent)
- Understand relational database management systems.
- Understand database query methods.
- Understand database connection methods.
This objective may include but is not limited to: characteristics and capabilities of database products; database design; Entity Relationship Diagrams (ERDs); normalization concepts
This objective may include but is not limited to: structured query language (SQL), creating and accessing stored procedures, updating data and selecting data
This objective may include but is not limited to: connecting to various types of data stores such as flat file; XML file; in-memory object; resource optimization