CodeGuru Update eNewsletter – July 26th, 2005

CodeGuru Newsletter
July 26, 2005

This newsletter is part of the, EarthWeb, and networks.
Jupitermedia Corporation

___________________________ Sponsors
Search Engine Strategies Conf. & Expo
8/8-8/11 San
newsletters are sent from the domain “”
If configuring e-mail
or Spam filter rules, please use this
domain name (not the entire “from”
address, which varies).



–> Editorial –
… C# 3.0 – Standardized
       … Recently
Published Books

–> New Articles on CodeGuru:

– [Updated] Creating Non-Rectangular
– [Updated] Delaunay Triangles
– [Updated] Polygon Clipping
– Enumerating Exchange Contacts in .NET
– .NET Generics for VB Programmers
– Improved .NET Remoting, Part 2: Secure
– Identity Management with Microsoft Identity Integration
– [Updated] The Mists of Avalon

–> Discussion Groups — HOT
       – Override non-virtual
       – Is debugging for bad
       – Problem while printing

–> Highlighted new articles on 
Processing Image Pixels, Performing Convolution on
2. Reflection on JavaOne 2005
       3. BREW’s
New Interface Initiative

Engine Strategies Conference & Expo Summer 2005, the premier event
search engine marketing & optimization, returns to San Jose
August 8-11,
2005. Be part of this exclusive gathering of search
professionals that
features world-renowned search engine
expert Danny Sullivan. Learn the
basics & practical knowledge of
search engine marketing and fully
understand how search engines
interact with your Web site & ways to
improve your listings. Register
early & save!,1s19,1,k6sh,eexu,jorm,i5r0

from the

… C# 3.0 – Standardized …

The C# language is standardized through ECMA International. This allows for a
standardization of the language without the fear of one company completely
controlling it. Said another way, C# is a non-proprietary language that no
single company can control.

The ECMA committee has recently accepted two new specifications. These are
the Standard ECMA-334: C# Language Specification and the Standard ECMA-335:
Common Language Infrastructure (CLI) Specification. I took a quick look at these
recent releases.

The acceptance of ECMA-334 marks the approval of the third edition for the C#
language. This standard specifies the syntax and constraints used to create a
standard C# program. Additionally, it defines the semantic rules for
interpreting C# programs and the restrictions and limits that must be met in
order for an implementation to be considered a conforming version of C#.

What does this mean to a C# developer? It means that a number of new language
features can be used with confidence because future C# compilers will be
supporting in a standardized manner.

We’ve talked about several of the new features on CodeGuru already. These
list of new features include:

  • Pragma directives

  • Anonymous methods

  • Static classes

  • Partial declarations

  • Property get and set accessors

  • Generic types and methods

  • Iterators

  • Nullable types

With the changes that have been made to the C# language, it is also not
surprising that changes also needed to be made within the standardized CLI
specification. Changes in the CLI based on ECMA-335 are:

  • Support for generic types and methods

  • Additional prefixes of constrained., no., and readonly.

  • Additional instructions of Idelem, stelem, and unbox.any.

  • Added a number of members and types to the Type library

  • Made changes to the specification including the addition of a “Debug
    Interchange Format” section.

In the CLI, there are numerous types and members that were added to the type
library. These include a number of generics in the System namespace ranging from
Action<T> to TypedReference. The System.Collections.Generics namespace was
also added along with numerous types within it. The System.Reflection namespace
was updated to allow for support of generics reflection as well to include new
enumeration values to support non-standard encoding of String formatting
attributes. The System.Runtime.CompilerServices namespace was updated to include
types CompilationRelaxations and CompilationRelaxationsAttribute. Finally, the
System.Threading.Parallel namespace now contains a number of new types for
supporting multithreaded CPUs.

As you can see, C# and the .NET Framework are evolving. The new additions
help to boost C# into being an even more powerful, non-proprietary, standardized
language. While Microsoft may be initiating the changes, it is good to know that
a standards board is controlling the language. In my opinion, this gives C#
developers some added protection as the C# language continues to evolve.

Until next week

Bradley L.

… Recently Published Books

For those of you keeping up by reading books. The following are just a few of
the new books that have been recently released. If you’ve read any of these,
feel free to write a review to be posted on CodeGuru. See the submission
guidelines at:

–> Spring Into HTML and
      By Molly E. Holzschlag for
      340 pages for

–> The FIVE Dysfunctions of a
      By Patrick Lencioni for
      240 pages, hard-bound for
finance. Not strategy. Not technology. It is teamwork that remains the ultimate
competitive advantage, both because it is so powerful and so rare.
” That is
the first sentence of this fable that teaches principles related to teamwork.
This is a book I grabbed from the publisher because it looked extremely

& Updated Articles on

Following are short descriptions of new articles on CodeGuru. If you are
interested in submitting your own article for inclusion on the site, then
you will find guidelines located at,1s19,1,fka1,909i,jorm,i5r0

This week’s posted CodeGuru articles:

==> Forms

– [Updated] Creating Non-Rectangular

    By Bradley Jones
It is amazingly easy to
create forms of any shape within Visual C#. You can even do it with VB .NET!,1s19,1,l2jl,gnf0,jorm,i5r0

==> Graphics

– [Updated] Delaunay Triangles
Sjaak Priester
Learn about an algorithm to calculate this intriguing and
important data structure in computer graphics.,1s19,1,ijz,1xgi,jorm,i5r0

==> Graphics

– [Updated] Polygon Clipping
    By Sjaak
It’s one of those humble tasks computers have done for ages, but the
hunt for the perfect clipping algorithm is still open.,1s19,1,lvop,fdqi,jorm,i5r0

==> Interop

– Enumerating Exchange Contacts in
    By Ben Rush
Through COM Interop, learn
how to program against the Exchange Store for Exchange Server 2003.,1s19,1,h4fc,eh0e,jorm,i5r0

==> Language

– .NET Generics for VB Programmers
Paul Kimmel
With .NET 2.0 offering support for generics, learn how to define
generic methods and classes and use the generic classes in .NET.,1s19,1,73cl,ccy4,jorm,i5r0

==> Remoting

– Improved .NET Remoting, Part 2: Secure
    By Mark Strawmyer
The security
enhancements that the .NET Framework 2.0 made to the TCP channel enable secure
TCP communication either through code or application configuration files. Learn
how to apply both techniques to .NET remoting clients and servers.,1s19,1,hdvt,2k0s,jorm,i5r0

==> Servers

– Identity Management with Microsoft Identity Integration
    By Jeffrey Juday
Identity management
with Microsoft Identity Integration Server (MIIS) not only saves time and money;
it also eases the burden on end-users and enhances security. Learn how to create
an MIIS solution.,1s19,1,7noz,nu0,jorm,i5r0

==> XML

– [Updated] The Mists of Avalon
   By Guido
Learn about “Avalon,” the exciting new presentation
subsystem of the upcoming Windows platforms. After an introduction to
declarative drawing and XAML, you’ll use XAMLPad to get a first taste of Avalon


Check out the CodeGuru discussion forums at:,1s19,1,bcr8,cx5j,jorm,i5r0

Forums include Visual C++, General C++, Visual Basic, Java, General
Technology, C#, ASP.NET, XML, Help Wanted, and much, much, more!


Some of the current threads with the most activity are:

==> Override non-virtual

==> Is debugging for bad

==> Problem while printing

Articles on

Below are some of the new articles that have been posted to (

1. Processing Image Pixels, Performing Convolution on
    By Richard G. Baldwin –
Learn to write Java programs that use convolution (flat filters and Gaussian
filters) to smooth or blur an image.Also learn how to write jpg files containing
specialized images that are useful for testing image-processing programs.,1s19,1,8h0s,apio,jorm,i5r0

2. Reflection on JavaOne 2005
    By Dick
Wall –
   Dick Wall feels that this is a great time to be a Java
Developer. After returning from vacation, he hits the highlights of the
conference and then delves into serveral products of particular interest.,1s19,1,eiho,4xan,jorm,i5r0

3. BREW’s New Interface
     By Ray Rischpater –

   See what Qualcomm’s new uiOne user interface initiative means
for you.

# # #

More by Author

Must Read