100% Real Microsoft 70-599 Exam Questions & Answers, Accurate & Verified By IT Experts
Instant Download, Free Fast Updates, 99.6% Pass Rate
Microsoft 70-599 Practice Test Questions in VCE Format
File | Votes | Size | Date |
---|---|---|---|
File Microsoft.SelfTestEngine.70-599.v2012-08-29.by.nikki.100q.vce |
Votes 2 |
Size 364.92 KB |
Date Aug 29, 2012 |
Microsoft 70-599 Practice Test Questions, Exam Dumps
Microsoft 70-599 (Pro: Designing and Developing Windows Phone Applications) exam dumps vce, practice test questions, study guide & video training course to study and pass quickly and easily. Microsoft 70-599 Pro: Designing and Developing Windows Phone Applications exam dumps & practice test questions and answers. You need avanset vce exam simulator in order to study the Microsoft 70-599 certification exam dumps & Microsoft 70-599 practice test questions in vce format.
The 70-599 Exam, titled "Developing Mobile Applications with Microsoft .NET Framework 3.5," was a specialized certification for developers building applications for the Windows Mobile platform. It was a key component of the Microsoft Certified Professional Developer (MCPD): Mobile Developer 4 certification. Passing this exam validated a developer's expertise in using Visual Studio 2008 and the .NET Compact Framework 3.5 to create robust, data-driven applications for devices like Pocket PCs and Smartphones running Windows Mobile 6.5.
The exam was designed for professionals whose primary role involved developing and deploying enterprise mobile solutions. The 70-599 Exam curriculum was comprehensive, covering the entire application lifecycle. It tested a candidate's skills in user interface design for small screens, local data management with SQL Server Compact, data synchronization with backend servers, and the secure deployment of applications to devices. It was a rigorous test of a developer's ability to work within the unique constraints of the mobile environment of that era.
To understand the context of the 70-599 Exam, it is important to step back to the time of its relevance. The mobile landscape was dominated by devices like the Windows Mobile Pocket PC and Smartphone. These devices were significantly constrained compared to today's hardware. They had limited processing power, a small amount of memory (RAM), low-resolution screens, and often slow and unreliable network connections.
Developing for this environment required a specialized skill set and a dedicated framework. Developers could not simply recompile a desktop application and expect it to work. They had to design applications from the ground up to be efficient with memory, responsive on slower CPUs, and tolerant of network disconnections. The 70-599 Exam was created to identify developers who had mastered these specific skills and understood the challenges of building applications for these resource-constrained devices.
The core technology covered in the 70-599 Exam is the .NET Compact Framework (.NET CF). The .NET CF is a subset of the full desktop .NET Framework, specifically designed and optimized to run on Windows Mobile and other Windows CE-based devices. It provided a managed code environment, bringing the benefits of the C# and VB.NET languages, garbage collection, and a rich class library to the world of mobile development.
While it was a subset, the .NET CF 3.5 included many of the essential components of its desktop counterpart. It had a version of the Common Language Runtime (CLR) for executing code, a library of base classes, and frameworks for creating user interfaces (Windows Forms) and accessing data (ADO.NET). However, many features of the full framework were omitted to keep the footprint small and suitable for devices with limited storage and memory.
A key area of knowledge for the 70-599 Exam is the architecture of a mobile application built with the .NET Compact Framework. A .NET CF application is a managed application, meaning its execution is managed by the Compact CLR. This provides benefits like type safety and automatic memory management through garbage collection, which were significant advantages over native C++ development at the time.
The application itself consists of one or more assemblies (EXE and DLL files) containing the compiled code. These assemblies reference the .NET CF class library, which provides the core functionalities for building the application, such as UI controls and data access classes. The entire application runs within the sandboxed environment provided by the CLR, which interacts with the underlying Windows Mobile operating system to access device hardware and services.
A prerequisite for building any application, and a practical skill needed for studying for the 70-599 Exam, is setting up the correct development environment. The required tool was Microsoft Visual Studio 2008 Professional Edition. By default, Visual Studio did not include all the necessary components for mobile development; they had to be installed separately.
The most critical component to install was the Windows Mobile 6.5 Developer Tool Kit. This SDK provided the necessary libraries, headers, and, most importantly, the official device emulator images for various Windows Mobile form factors (like Pocket PC and Smartphone). This allowed developers to write, compile, and test their mobile applications in a simulated environment on their development PC without needing a physical device.
The 70-599 Exam expects developers to be proficient in the basic development workflow. This begins with creating a new project in Visual Studio. Developers would choose the "Smart Device" project type, which would then prompt them to select the target platform (e.g., Windows Mobile 6.5) and the project template (e.g., Windows Forms Application).
This would create a project with a mobile-specific designer surface. A developer could then drag and drop controls from the toolbox, just as they would for a desktop application, but the controls available were the specific, lightweight versions from the .NET Compact Framework. After designing a simple UI, the developer could press F5 to build the application and automatically deploy it to the selected emulator for testing.
The Device Emulator Manager was an essential tool for any developer preparing for the 70-599 Exam. This utility, installed with the Windows Mobile SDK, was the central hub for managing the various emulator images. It provided a list of all the available emulators, such as different language versions or different device types.
From the Device Emulator Manager, a developer could launch a specific emulator, save its state, or "cradle" it, which would connect the emulator to the PC and allow it to be managed by ActiveSync (the synchronization software of that era). This was crucial for testing scenarios that involved data synchronization or deploying applications to the emulator outside of Visual Studio.
One of the great advantages of using Visual Studio and the .NET Compact Framework was the powerful, integrated debugging experience. The 70-599 Exam requires a solid understanding of these debugging capabilities. When a developer launched a mobile application in debug mode from Visual Studio, the IDE would establish a connection with the application running inside the emulator.
This allowed the developer to use all the familiar debugging tools. They could set breakpoints in their C# or VB.NET code, and when the execution hit a breakpoint, the emulator would pause, and the developer could inspect the values of variables, examine the call stack, and step through the code line by line. This remote debugging capability was a massive productivity boost and was essential for diagnosing and fixing bugs in mobile applications.
Designing a user interface (UI) for a Windows Mobile device presented a unique set of challenges. The 70-599 Exam expected developers to understand the principles of good mobile UI design. The screens were small and had low resolutions, and the primary input method was often a stylus. This meant that UI elements like buttons and text boxes needed to be large enough to be easily tapped.
Good mobile design also emphasized minimizing the amount of text input required from the user. Whenever possible, developers were expected to use controls like combo boxes and list views to allow users to select from a predefined list of options rather than having to type on a tiny software keyboard. The overall goal was to create a user experience that was simple, clear, and efficient to use on a resource-constrained device.
The .NET Compact Framework provided a subset of the Windows Forms controls that were available for desktop development. The 70-599 Exam required a deep familiarity with these mobile-specific controls. The control set included all the basics, such as Button, TextBox, Label, CheckBox, and RadioButton. It also included more complex controls like ListView, TreeView, and DataGrid for displaying lists of data.
While many of these controls shared the same name as their desktop counterparts, they often had fewer properties and events to keep them lightweight. For example, the mobile DataGrid was a powerful tool for displaying tabular data, but it lacked some of the advanced data binding and formatting features of the desktop version. A developer needed to know the capabilities and limitations of these controls to build an effective UI.
To overcome the limitations of the built-in control set, developers often needed to create their own custom controls. The 70-599 Exam covered the techniques for UI customization. A developer could create a custom control by inheriting from an existing control and extending its functionality, or by creating a completely new control from scratch. This was a great way to encapsulate reusable pieces of UI logic.
For complete control over the appearance of a control, a developer could use owner-drawing. This technique involves handling a control's Paint event and writing your own GDI+ code to draw the control's visual representation. While more complex, this allowed for the creation of highly customized user interfaces that were not possible with the standard controls.
A key aspect of mobile application design tested in the 70-599 Exam was the management of user input and application navigation. On a Windows Mobile device, input could come from several sources: a touch screen with a stylus, a software-based keyboard (the Soft Input Panel, or SIP), or the physical hardware buttons on the device. A well-designed application had to handle all of these input methods gracefully.
Application navigation was typically managed by using multiple forms. A developer could create a main menu form and then open other forms as the user navigated through the application's features. The TabControl was also a very popular control for creating a tabbed interface, which allowed a user to switch between different views of data within a single form, minimizing the need for screen-to-screen navigation.
Most mobile applications need to store data locally on the device, and this was a major topic in the 70-599 Exam. The .NET Compact Framework provided several options for local data storage. For simple key-value pairs or small amounts of configuration data, a developer could use XML files or simple text files. The System.Xml and System.IO namespaces provided all the necessary classes for these operations.
However, for structured, transactional data, a more robust solution was needed. The preferred solution for this in the .NET Compact Framework ecosystem was SQL Server Compact. This provided a powerful, lightweight relational database engine that could be embedded directly within the mobile application, offering a much more scalable and reliable way to manage local data.
SQL Server Compact 3.5 (SQL CE) was the go-to database for Windows Mobile development, and a deep knowledge of it was required for the 70-599 Exam. SQL CE is an in-process database engine, meaning it runs in the same memory space as the application itself. There is no separate server process to manage. The entire database is contained within a single .sdf file, which makes it very easy to deploy and manage.
Despite its small footprint, SQL CE provided a rich set of relational database features. It supported standard SQL for data definition and manipulation, transactions for ensuring data integrity, and password protection for securing the database file. Visual Studio 2008 had excellent tooling support for SQL CE, allowing a developer to visually design tables and queries for their local database.
To interact with a SQL Server Compact database from C# or VB.NET code, developers used the ADO.NET data provider for SQL CE. The 70-599 Exam tested a developer's ability to write this data access code. The process was very similar to accessing a full SQL Server database from a desktop application.
A developer would use the SqlCeConnection class to open a connection to the .sdf database file. They would then use the SqlCeCommand class to execute SQL statements, such as INSERT, UPDATE, DELETE, or SELECT. The results of a SELECT query could be read using a SqlCeDataReader for fast, forward-only access, or loaded into a DataSet for disconnected, offline use.
For many enterprise mobile applications, storing data locally was only half the story. The real challenge was keeping that local data synchronized with a central, backend database server, such as Microsoft SQL Server. The 70-599 Exam dedicated a significant portion of its objectives to this topic. The primary technology for this was the Microsoft Sync Framework, specifically the Sync Services for ADO.NET component.
Sync Services provided a comprehensive framework for building robust, bi-directional data synchronization solutions. It allowed a developer to define which tables and columns should be synchronized, handle data conflicts that might occur when the same record is changed on both the client and the server, and manage the entire synchronization process with a simple API call.
Implementing data synchronization is more than just writing code; it requires a well-thought-out design. The 70-599 Exam expected developers to understand the architectural decisions involved. A key consideration was how to handle data conflicts. For example, if a user on a mobile device updates a customer record while another user in the office updates the same record on the server, a conflict occurs. The synchronization strategy must define how these conflicts will be resolved, for example, by letting the server's change always win.
Another critical design aspect was data filtering. A mobile device typically only needs a subset of the data from the central server. For instance, a sales representative only needs to see their own customers, not all the customers in the entire company. The synchronization strategy must include a mechanism for partitioning or filtering the server data so that each device only receives the data that is relevant to its user.
While a deep dive into the code is complex, the 70-599 Exam required an understanding of the key steps involved in implementing a solution with Sync Services. The process begins on the server, where an administrator "provisions" the SQL Server database. This involves creating metadata tables and triggers that track changes to the data that needs to be synchronized.
On the client side, the developer writes code to create the local SQL Server Compact database with the same schema. The core of the application's sync logic involves creating a SyncOrchestrator object, defining the synchronization direction (e.g., upload, download, or bidirectional), and then calling the Synchronize method. This single method call would then manage the entire process of connecting to the server, exchanging changes, and resolving any conflicts.
In many scenarios, a mobile application does not need a full, replicated copy of the backend data. Instead, it just needs to perform simple, real-time lookups or transactions. For these cases, using web services was the preferred approach, and it is a key topic for the 70-599 Exam. The .NET Compact Framework had built-in support for consuming standard SOAP-based web services.
Visual Studio 2008 made this process very easy. A developer could simply "Add a Web Reference" to their project and point it to the URL of a web service. Visual Studio would then automatically generate a proxy class that made it simple to call the methods on the web service from the application's code. This was a common way to, for example, get a current price list from a server or submit a new order.
Beyond structured data in a database, mobile applications often need to work with files. The 70-599 Exam covered the basics of file input/output (I/O) on a Windows Mobile device. The .NET Compact Framework included a subset of the familiar System.IO namespace from the desktop framework.
Using classes like StreamReader and StreamWriter, a developer could easily read from and write to text files. The File and Directory classes provided static methods for managing files and folders on the device's file system, which could be either the main device memory or a removable storage card. This was essential for tasks like logging, saving application-generated documents, or working with configuration files.
The .NET Compact Framework provided a high-level, managed API for building applications. However, sometimes an application needed to access a feature of the underlying Windows Mobile operating system or a piece of hardware that was not exposed directly in the framework. The 70-599 Exam required developers to know how to bridge this gap using a mechanism called Platform Invoke, or P/Invoke.
P/Invoke is a feature of the .NET Framework that allows managed code (like C# or VB.NET) to call unmanaged functions that are implemented in a native DLL. This was the standard way to access the rich set of APIs that were part of the Windows Mobile SDK. By using P/Invoke, a developer could break out of the managed sandbox and interact directly with the device's core functionality.
To use P/Invoke, a developer would first need to find the native API they wanted to call in the Windows Mobile documentation. They would then declare a managed method in their C# or VB.NET code that had the same signature as the native function and mark it with a special attribute that pointed to the native DLL. The 70-599 Exam expected an understanding of this process.
For example, a developer could use P/Invoke to call a function in the coredll.dll library to make the device vibrate, play a specific system sound, or get detailed information about the device's battery status. While the syntax could be complex and required careful attention to data types, P/Invoke was an essential tool for building applications that were deeply integrated with the device's capabilities.
A key requirement for many mobile applications is the ability to interact with the device's communication features. The 70-599 Exam covered these integration points. The .NET Compact Framework provided some high-level managed APIs for these tasks, abstracting away the need for complex P/Invoke calls in many cases.
For example, there were classes that allowed an application to programmatically initiate a phone call to a specific number or to compose and send an SMS message. For more advanced integration, such as accessing the device's contacts list or call history, a combination of managed APIs and P/Invoke was often required. This allowed for the creation of powerful applications that could extend the core communication functionality of the device.
Every application needs a way to store its settings and any user preferences. The 70-599 Exam expected developers to know the common methods for managing this configuration data. One simple and popular method was to use an XML file. The .NET Compact Framework had excellent support for reading and writing XML, making it easy to create a custom configuration file for the application.
Another option was to use the device registry. While generally discouraged for storing large amounts of data, the registry was a suitable place for storing small, simple settings. The .NET CF provided classes that allowed a developer to read and write values to the registry. Choosing the right storage mechanism for configuration data was a key design decision.
Once a mobile application was developed and tested, the final step was to prepare it for deployment to physical devices. The 70-599 Exam covered the entire deployment lifecycle. The standard way to package a Windows Mobile application for installation was by creating a CAB file. A CAB file is a cabinet archive that contains all the files needed for the application, along with instructions on how to install them.
The CAB file is the mobile equivalent of an MSI installer on the desktop. A user could download this CAB file to their device and tap on it to launch the installation process. The installation would then copy the application's executable and any other necessary files to the correct location on the device and create a shortcut in the Start Menu.
Visual Studio 2008 provided a dedicated project type for creating these installation packages, known as a Smart Device CAB Project. The 70-599 Exam required developers to be proficient in using this project type. A developer would add a CAB project to their solution and then configure it to include the output of their main application project.
The CAB project provided a detailed editor that allowed the developer to control exactly where files would be installed on the target device. They could specify the installation folder for the application, create shortcuts in the Start Menu, and even create registry keys. This project type automated the process of building the final, distributable CAB file that would be given to the end-users.
For enterprise or mobile operator deployments, manually installing a CAB file on every device was not a scalable solution. The 70-599 Exam touched on a more advanced deployment mechanism using provisioning XML files. A provisioning file is an XML document that can contain a wide range of configuration settings for a device, including instructions for installing applications.
These provisioning files could be pushed to devices "over the air" (OTA) by a mobile device management (MDM) system. This allowed an administrator to remotely deploy a new application or update an existing one on a whole fleet of devices without any user intervention. While the exam did not require deep knowledge of authoring these files, it did expect an awareness of this enterprise deployment method.
Security is a critical concern for any mobile application, especially those that handle sensitive corporate data. The 70-599 Exam dedicated a significant portion of its objectives to security. The Windows Mobile operating system had a security model that distinguished between privileged and normal applications. Most applications ran as normal, untrusted applications with limited permissions.
To perform privileged operations, such as accessing certain protected APIs or writing to secure parts of the file system, an application had to be trusted by the device. This trust was established through a certificate-based security model. The developer had to digitally sign their application's CAB file with a code signing certificate. This is a crucial concept that developers needed to master.
The process of code signing was a fundamental security practice tested in the 70-599 Exam. A developer would first need to obtain a mobile code signing certificate from a trusted Certificate Authority. They would then use a command-line tool to digitally sign their CAB file with this certificate before distributing it.
When a user tried to install the signed CAB file, the device would check the signature. If the certificate was from a trusted authority, the user would be prompted to install the application as a trusted application. This would grant the application the elevated privileges it needed to function correctly. Without a proper signature, a privileged application would either fail to install or would not be able to perform its required operations.
In addition to securing the application itself, it was crucial to protect the data that it stored locally on the device. The 70-599 Exam covered the options for data encryption. If a device was lost or stolen, any unencrypted data would be vulnerable.
The most robust solution for protecting structured data was to use the built-in encryption features of SQL Server Compact. When creating a SQL CE database, a developer could specify a password. This would encrypt the entire .sdf database file using 128-bit encryption. The application would then need to provide the correct password in its connection string to be able to access the data. This provided a strong layer of protection for sensitive data at rest.
As mentioned earlier, Windows Mobile devices were highly constrained in terms of memory and CPU power. The 70-599 Exam required developers to have a deep understanding of how to write efficient and performant code. A common problem in .NET Compact Framework applications was the OutOfMemoryException. This would occur if the application consumed all the available memory.
Developers needed to be very mindful of their memory usage. This involved practices like releasing resources as soon as they were no longer needed, avoiding the loading of large objects into memory, and understanding how the .NET CF's garbage collector worked. The garbage collector in the Compact Framework was less aggressive than its desktop counterpart, so developers had to be more proactive in their memory management.
Beyond memory management, the 70-599 Exam covered general performance optimization techniques. A key goal was to ensure that the user interface always remained responsive. If the application needed to perform a long-running operation, such as a complex calculation or a network request, this had to be done on a background thread.
If a long-running operation was performed on the main UI thread, the entire application would freeze until the operation was complete, leading to a very poor user experience. By using a background thread, the operation could run asynchronously, and the UI thread would remain free to respond to user input. Other optimization techniques included minimizing the amount of data transferred over the network and writing efficient database queries.
While most enterprise mobile applications were forms-based, the 70-599 Exam expected an awareness of the graphics capabilities of the .NET Compact Framework. The framework included a subset of the GDI+ graphics library, which was available through the System.Drawing namespace. This allowed developers to perform basic 2D drawing operations.
A developer could handle the Paint event of a form or a control and use the Graphics object to draw lines, shapes, and text. This was useful for creating custom graphs and charts or for building applications with a completely custom-drawn user interface. The framework also provided support for displaying images in various formats, such as bitmap and JPEG, which could be used to enhance the visual appeal of an application.
Many Windows Mobile devices of the era were equipped with a GPS receiver. The 70-599 Exam covered the techniques for integrating location-based services into a mobile application. The Windows Mobile SDK provided a set of APIs for interacting with the device's GPS hardware.
A developer could use these APIs (often via P/Invoke) to start the GPS receiver, get the device's current location as a set of latitude and longitude coordinates, and receive updates as the device moved. This enabled the creation of a wide range of location-aware applications, such as asset tracking solutions, field service applications that could provide turn-by-turn directions, or simple applications that could geotag a photo.
One of the challenges of Windows Mobile development was the variety of different devices on the market. These devices had different screen sizes, resolutions, and orientations (portrait or landscape). The 70-599 Exam required developers to know how to build applications that could adapt to this fragmentation.
A key technique for this was to design forms using anchoring and docking. These properties allowed a developer to specify how a control should resize and reposition itself when its parent form is resized. For example, you could anchor a button to the bottom right of the screen so that it would always stay in that position, regardless of the screen's resolution. For major differences in layout, a developer might even need to create separate forms for portrait and landscape modes.
As a final review for the 70-599 Exam, it is essential to have a clear picture of the end-to-end development lifecycle. The process begins in Visual Studio 2008 by creating a Smart Device project. The developer then designs the UI, keeping the constraints of the mobile device in mind. Next, the data access and business logic are implemented, including setting up the local SQL Server Compact database and the data synchronization logic using Sync Services.
The application is then thoroughly tested and debugged using the Windows Mobile emulator. Once development is complete, a Smart Device CAB Project is used to create the installer package. This CAB file is then digitally signed with a code signing certificate to ensure it can be trusted by the devices. Finally, the signed CAB file is deployed to the users' devices, either manually or through an enterprise mobile device management system.
As you finalize your preparation for the 70-599 Exam, you should concentrate your review on the most critical and heavily weighted topics. First and foremost, you must have a deep understanding of the .NET Compact Framework and how it differs from the full desktop framework. Second, master the art of UI design for mobile, including the use of the available controls and techniques for handling different screen sizes.
Third, data management is a huge part of the exam. Be an expert in using SQL Server Compact for local storage and, most importantly, in designing and implementing a data synchronization solution with Microsoft Sync Services. Fourth, you must be proficient in the application deployment and security model, including the creation of CAB files and the process of code signing.
The 70-599 Exam typically consisted of 40-60 questions to be answered within a two to three-hour time frame. The questions were in various formats, including multiple-choice, drag-and-drop, and build-list-and-reorder questions. A significant portion of the exam was scenario-based. You would be presented with a description of a business problem or a block of code and then asked to choose the best solution or identify an error.
The exam was not just about memorizing facts; it was about applying your knowledge to solve practical development problems. For this reason, a deep understanding of the concepts was far more important than rote memorization of specific class names or method signatures.
The most effective way to prepare for the 70-599 Exam is through a combination of theoretical study and extensive hands-on practice. The official Microsoft Press "Self-Paced Training Kit" for the exam was the primary study resource. The MSDN documentation for the .NET Compact Framework 3.5 and the Windows Mobile 6.5 SDK was also an invaluable source of detailed technical information.
However, no amount of reading can replace practical experience. It is absolutely essential to set up a Visual Studio 2008 environment with the Windows Mobile SDK and build your own applications. Work through the entire lifecycle: build a UI, create a local database, implement a sync solution, and create a CAB file. This hands-on practice is what will truly prepare you for the scenario-based questions on the exam.
There are several areas of the 70-599 Exam curriculum that developers often found challenging. The syntax for P/Invoke calls can be complex and error-prone, so it requires careful study. The configuration of data synchronization, especially conflict resolution and data filtering, is another area that requires a deep understanding.
The nuances of the security model, including the different certificate stores on the device and the specific privileges granted by each, can also be tricky. Finally, because the .NET Compact Framework is a subset of the full framework, a common pitfall was assuming that a class or a method that you are familiar with from desktop development exists or behaves in the same way on the mobile platform.
On the day of your 70-599 Exam, be sure to read each question and its associated scenario or code snippet very carefully. The questions are often designed to test your ability to spot subtle but important details. Use the process of elimination to rule out any obviously incorrect answers.
Think like a mobile developer. For every question, consider the constraints of the device: limited memory, slow CPU, and an unreliable network. The "best" solution in a mobile context is often the one that is the most efficient and the most resilient to failure. Trust in the hands-on coding and debugging you have done. Your practical experience will be your greatest asset in navigating the challenges of the 70-599 Exam.
Go to testing centre with ease on our mind when you use Microsoft 70-599 vce exam dumps, practice test questions and answers. Microsoft 70-599 Pro: Designing and Developing Windows Phone Applications certification practice test questions and answers, study guide, exam dumps and video training course in vce format to help you study with ease. Prepare with confidence and study using Microsoft 70-599 exam dumps & practice test questions and answers vce from ExamCollection.
Top Microsoft Certification Exams
Site Search:
SPECIAL OFFER: GET 10% OFF
Pass your Exam with ExamCollection's PREMIUM files!
SPECIAL OFFER: GET 10% OFF
Use Discount Code:
MIN10OFF
A confirmation link was sent to your e-mail.
Please check your mailbox for a message from support@examcollection.com and follow the directions.
Download Free Demo of VCE Exam Simulator
Experience Avanset VCE Exam Simulator for yourself.
Simply submit your e-mail address below to get started with our interactive software demo of your free trial.