Roadmap for the .NET Framework for Windows Phone 8
[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]
This annotated roadmap lists useful resources for developers who are using the .NET Framework to develop Windows Phone apps. Many of the links lead to conceptual articles published in the documentation set for the .NET Framework 4.5. The resources are organized in three sections:
Provides a general introduction to the .NET Framework and its two major components: the common language runtime and the .NET Framework class library.
Lists new features introduced in the .NET Framework 4.5, with links to more detailed information.
Core technologies are features of the .NET Framework that are likely to be of interest to any developer whose apps target the .NET Framework, regardless of the specific development technology he or she is using.
.NET Framework class library
The .NET Framework class library contains the core set of classes used to develop a .NET Framework app.
An app domain provides an intra-process isolation boundary for apps.
Arrays and collections
Arrays and collections enable you to handle closely related data, such as the temperatures for a range of dates and times or the names of students in a class.
Assemblies are the fundamental unit of deployment, version control, code reuse, activation scoping, and security permissions in the .NET Framework.
In asynchronous programming, a process or operation executes independently of the process that launched it.
Attributes are keywords that provide additional information about a program element, such as an assembly, a type, or a type member, and that enable you to modify a behavior.
Common language runtime
The common language runtime is the run-time environment of the .NET Framework. It includes memory management and garbage collection services.
Common type system
The .NET Framework provides a type system that is accessible by any language that targets the .NET Framework.
Cryptography allows data to be encoded and decoded for security purposes. The .NET Framework supports many standard cryptographic algorithms, including symmetric, asymmetric, and hash algorithms.
ADO.NET is a set of classes that expose data access services for .NET Framework programmers. ADO.NET can be used to access data from a wide range of data sources, such as Microsoft Access and SQL Server databases.
Debugging enables you to identify errors in program logic and code execution in your apps.
A delegate is a class that holds a reference to a method. It is comparable to a function pointer in unmanaged code.
Events and event-driven programming
Event-driven programming involves calls to methods based on some specified event, such as a mouse click, the completion of a process, or the termination of a thread.
Exceptions are unexpected errors that occur at run time. Exception handling enables an app to handle those errors in a consistent manner.
The .NET Framework includes several types that enable you to compress and decompress files and streams.
Formatting involves converting an object to its string representation. For example, the string representation of 1033478 might be "$1,033,478.00".
Generics let you tailor a method, class, or structure to the precise data it acts upon. For example, instead of storing a number of People objects in an ArrayList object, which supports values of any type, you can use the generic List<T> type to store objects in a strongly typed collection object.
Globalization and localization
Globalization involves creating an app that is suitable for use in a variety of cultures. Localization involves translating an app's string and other resources and modifying its user interface so that it can be run by users of other cultures.
Imaging Overview (WPF)
Classes in the .NET Framework provide support for creating, loading, and manipulating images in a variety of formats.
I/O programming enables you to read data from, or write data to, a storage medium, such as the file system, isolated storage, or a named pipe.
Isolated storage is a data storage mechanism that isolates a user's persisted data in a virtual file system.
Language Integrated Query (LINQ)
LINQ provides a strongly-typed query language that supports queries across a range of data sources.
The common language runtime manages memory mostly transparently. However, you must manage and clean up unmanaged resources in your apps. In some advanced scenarios, you may also want to control or take advantage of garbage collection features.
MSBuild is the build system for Visual Studio. MSBuild project files support extensive customization of the build process, and the types in the Microsoft.Build namespaces enable programmatic control of builds.
Network programming enables you to develop apps that use Internet protocols or the Windows Sockets interface.
Parsing is the opposite of formatting. It involves converting a string representation of an object back to the original object.
Lazy initialization defers the creation of an object until its first use. This feature can improve your app's performance.
Reflection enables you to gather information about managed assemblies, types, and type members at run time, and to dynamically create assemblies and executable code.
Regular expressions let you process textual or string data that matches a pattern that is defined by the regular expression language.
Resource files provide a repository for an app's strings and other data. Their use is critical in localized apps.
The security features in the .NET Framework help you manage access to resources based on permissions, and facilitate the use of role-based security.
Serialization and deserialization
Serialization converts an object into a form that can be persisted or transported. Deserialization converts persisted or transmitted data back into the original object.
A thread is the basic unit of execution within a process. Multiple threads can execute within a process, and each is allocated processor time.
Type conversion creates a value of a new type that is equivalent to the value of the original type.
XAML is a declarative markup language that is used to create the UI for some types of .NET Framework apps.
XML Standards Reference
Employing XML in the .NET Framework
XML is a standards-based markup language that produces human-readable documents.
Zip files and archives
The .NET Framework supports programmatic manipulation of zip files.
This section provides links to technologies used for developing .NET Framework apps and components.
Managed Extensibility Framework (MEF)
The Managed Extensibility Framework is a library for creating lightweight, extensible apps. It enables developers to discover and use extensions at run time with no configuration required.
Portable Class Library
The .NET Framework Portable Class Library lets you develop portable assemblies that work without modification on multiple platforms or devices, such as Windows 8, Silverlight, Windows Phone, and Xbox.
Windows Communication Foundation (WCF)
Windows Communication Foundation (WCF)
WCF Data Services
Windows Communication Foundation (WCF) is a framework for building service-oriented apps.
Windows Presentation Foundation (WPF)
Windows Presentation Foundation (WPF) provides developers with a unified programming model for building smart client apps for Windows that incorporate UI, media, and documents.