.NET assemblies are superior to previous component technologies because they
seamlessly provide multilingual support; introduce an excellent synergy
between code and metadata; and inspire confidence through a strong type
system and the .NET security policy. Nevertheless, .NET lacks a formal
mechanism for specifying the semantics of the types offered by an assembly.
This article shows how, using .NET attributes, it is feasible to introduce
Boolean assertion clauses in .NET assemblies. Using reflection, these
assertion attributes can be extracted, checked, and monitored at runtime. We
offer an assertion browser tool that extracts the assertion attributes from
the assemblies for documentation purposes and generates a "trusted" proxy
assembly to monitor these assertions at runtime.
Introduction
Bertrand Meyer included the assertion formalism in Eiffel under his Design by ... (more)
The forthcoming .NET 2.0 Framework will introduce new important features. One
of those features is genericity. Genericity is not really a new concept. It
has been included in some previous languages as ADA, C++, Eiffel, and in the
mathematical model of abstract data types (ADT). However, the C# 2.0 notation
for genericity (see the first entry in the References section), the
integration of genericity in the .NET type system, the efficient
implementation of genericity in the CLR-JIT process, and the new generic
features included in the reflection mechanism will strengthen .NET
pr... (more)
The Windows Presentation Foundation community is growing because WPF
facilitates the development of better graphical user interfaces and graphical
applications. But WPF's tri-dimensional resources are not developed compared
to DirectX's capabilities and existing hardware potential. This article will
explain how to develop panels to make it easier to lay out tri-dimensional
figures in a Viewport3D.
The Bi-dimensional Hierarchy
In WPF the bi-dimensional world is hierarchically organized as shown in
Figure 1. The type Visual is the base class of any element that can be shown
in WPF... (more)