Virtual Developer Workshop: Containerized Development with Docker

CodeGuru Newsletter
July 26, 2005


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

___________________________ Sponsors ________________________________
Search Engine Strategies Conf. & Expo 8/8-8/11 San Jose
All newsletters are sent from the domain "internet.com."
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:
       ==> Forms
              - [Updated] Creating Non-Rectangular Forms
       ==> Graphics
              - [Updated] Delaunay Triangles
       ==> Graphics
              - [Updated] Polygon Clipping
       ==> Interop
              - Enumerating Exchange Contacts in .NET
       ==> Language
              - .NET Generics for VB Programmers
       ==> Remoting
              - Improved .NET Remoting, Part 2: Secure TCP
       ==> Servers
              - Identity Management with Microsoft Identity Integration Server
       ==> XML
              - [Updated] The Mists of Avalon

--> Discussion Groups -- HOT Threads
       - Override non-virtual function.
       - Is debugging for bad programmers?
       - Problem while printing graphics

--> Highlighted new articles on Developer.com 
       1. Processing Image Pixels, Performing Convolution on Images       
       2. Reflection on JavaOne 2005
       3. BREW's New Interface Initiative

Search Engine Strategies Conference & Expo Summer 2005, the premier event
for 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!

Comments from the Editor

... 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. Jones

... 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: http://www.codeguru.com/review-guidelines.php

--> Spring Into HTML and CSS
      By Molly E. Holzschlag for Addison-Wesley
      340 pages for $29.99

--> The FIVE Dysfunctions of a Team
      By Patrick Lencioni for Jossey-Bass
      240 pages, hard-bound for $22.95
"Not 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 interesting.

New & Updated Articles on CodeGuru

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 http://nl.internet.com/ct.html?rtr=on&s=1,1s19,1,fka1,909i,jorm,i5r0

This week's posted CodeGuru articles:

==> Forms

- [Updated] Creating Non-Rectangular Forms
    By Bradley Jones
It is amazingly easy to create forms of any shape within Visual C#. You can even do it with VB .NET!


==> Graphics

- [Updated] Delaunay Triangles
    By Sjaak Priester
Learn about an algorithm to calculate this intriguing and important data structure in computer graphics.


==> Graphics

- [Updated] Polygon Clipping
    By Sjaak Priester
It's one of those humble tasks computers have done for ages, but the hunt for the perfect clipping algorithm is still open.


==> Interop

- Enumerating Exchange Contacts in .NET
    By Ben Rush
Through COM Interop, learn how to program against the Exchange Store for Exchange Server 2003.


==> Language

- .NET Generics for VB Programmers
    By 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.


==> Remoting

- Improved .NET Remoting, Part 2: Secure TCP
    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.


==> Servers

- Identity Management with Microsoft Identity Integration Server
    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.


==> XML

- [Updated] The Mists of Avalon
   By Guido Stercken-Sorrenti
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 programming.


Discussion Groups

Check out the CodeGuru discussion forums at:


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 function.

==> Is debugging for bad programmers?

==> Problem while printing graphics

New Articles on Developer.com

Below are some of the new articles that have been posted to Developer.com (http://www.developer.com).

1. Processing Image Pixels, Performing Convolution on Images
    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.


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.


3. BREW's New Interface Initiative
     By Ray Rischpater -
   See what Qualcomm's new uiOne user interface initiative means for you.


# # #

About the Author

Bradley L. Jones



  • There are no comments yet. Be the first to comment!

  • You must have javascript enabled in order to post comments.

Leave a Comment
  • Your email address will not be published. All fields are required.

Most Popular Programming Stories

More for Developers

RSS Feeds

Thanks for your registration, follow us on our social networks to keep up-to-date