Codeguru Update eNewsletter - March 6th, 2007

==========================================================
CodeGuru Newsletter
March 6, 2007
http://www.CodeGuru.com

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

___________________________ Sponsors ________________________________
Jupiterimages
_____________________________________________________________________
==========================================================

TOPICS:

--> Editorial

--> Recently Published Books

--> New on CodeGuru: 
        ==> Button Arrays
                - Lights Out Game (in C#)
        ==> Database
                - Forging Transact SQL Code with CodeSmith
        ==> .NET 3.0
                - Important New Concepts in WPF
        ==> .NET Tip
                - Compressing/Decompressing Your Files
        ==> Threads
                - Simplified Thread Synchronization in Windows Vista
        ==> Visual Basic
                - How to Build Simple Event Log Montior/Watcher (Using TCP in .NET)
        ==> Web 2.0
                - Creating Clean and Simple Pages

--> Discussion Groups -- HOT Threads
        - Curious about if (ptr) vs if (ptr != NULL) (C++)
        - Dangling Pointers (VC++)
        - CAsyncSocket as DLL (VC++)

--> Highlighted new articles on Developer.com 
        1. Eclipse Tip: Customize Your Feature Installation with Install Handlers
        2. Java Language Integrity & Security: Uncovering Bytecodes
        3. Introducing Prototype and Scriptaculous Part 1

/-------------------------------------------------------------------\
Jupiterimages - your search ends here
Jupiterimages offers online subscriptions and single image
downloads for clipart, Web graphics, photos, footage and music
(including flash versions) via a comprehensive network of
design-oriented Web sites for industry professionals and
individual consumers.
See what you're missing.
Go to:
http://nl.internet.com/ct.html?rtr=on&s=1,319y,1,dh1n,3138,jorm,i5r0
\--------------------------------------------------------------adv.-/

==========================================================
Comments from the Editor
==========================================================

Microsoft Windows Vista is here. You might not have it, or more likely you might have already uninstalled it; however, it is here and will slowly become the dominating operating system on new machines. As a developer, you need to understand the impact of a new version of Windows on your applications. Not only do you need to know the impact on applications you will be building, but also on those that you have already built.

Will your existing applications run on Vista? Will they run without issue? It is interesting to note that Microsoft's own Visual Studio 2005 was not a supported Vista application until after they issued a service pack. Only with the service pack is Visual Studio 2005 supported on Vista.

What about the applications you've created?

When it comes to building new applications for Vista, in the past I've mentioned .NET 3.0. This includes Windows Presentation Foundation (WFC), Windows Communication Foundation (WCF), Windows WorkFlow (WF), and CardSpace. It is important for me to state that .NET 3.0 isn't all there is to Vista development. In fact, if you are a hardcore C++ person, you might not touch .NET 3.0. Even so, Vista will impact you.

I've mentioned that thousands of API changes were made to Vista. Numbers I've heard range from 7,000 to over 10,000 API type changes just for Vista. These might impact your programs. What might impact you more is not an API, but rather a "security feature." The User Account Control (UAC) is likely one of the most complained about features of Vista. Granted, it isn't as bad in the final product as it was in early pre-releases; however, it still is perceived as an annoying dialog that gets in the way. Truth be told, it really is a security feature that should be used. If left on, however, it can secure Vista to the point of getting in the way of letting your applications install on your users' Vista machines. This is obviously something you'll want to work around when creating your installation procedures. (Note: You might have seen the Mac commercials that make fun of this feature. )

Vista also offers a number of new features that you can use. Gadgets are little applications you can build and place on the desktop or in the SideBar. These applications can provide access to your business logic, or provide productivity enhancements to your users. Building Gadgets is a great option to consider when you are designing that next Vista application.

One cool feature of Vista is the desktop search. Although this is nothing overly new, Microsoft has taken a good stab at adding this to Vista. From the search window or from the Start menu, you can do a search that will look for items on your system. This can include pictures, music, emails, or any other items you might have tagged or allowed to be included. By using the APIs that come with Vista, you can tap into this search from your applications. More importantly, you could allow your own data items to be included in the searches, too.

Vista also includes better support for RSS feeds. Why go to information? Tapping into the RSS features can allow you to make interesting changes to your existing applications or possibly create an entirely new type of application. 

There is a lot more underneath the covers of Windows Vista than just .NET 3.0. As you might know, in addition to Codeguru, I also work with DevX.com. On DevX, we have posted a special report that covers just a few of the topics you'll want to know in regard to Vista. You can check out the list of articles in this special report at:

http://nl.internet.com/ct.html?rtr=on&s=1,319y,1,cjf,9cnl,jorm,i5r0

After reviewing these, I believe you'll agree that Vista is about more than just .NET 3.0.

Until next week...

Brad!
---------------------------
Bradley L. Jones
www.CodeGuru.com
---------------------------

=========================================================
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

--> Professional AJAX
      By Zakas, McPeak, and Fawcett for WROX
      620 pages for $39.99
      http://books.internet.com/books/0470109496

--> Pro WF: Windows Workflow in .NET 3.0
      By Bruce Bukovics for Apress
      720 pages for $49.99
      http://books.internet.com/books/0590597788

=========================================================
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,319y,1,fka1,909i,jorm,i5r0

This week's CodeGuru posts:

==> Button Arrays

- Lights Out Game (in C#)
    By Bradley Jones
Just play a game of Lights Out, or take some time to see an array of buttons put to use.
http://nl.internet.com/ct.html?rtr=on&s=1,319y,1,blki,kn4w,jorm,i5r0

==> Database

- Forging Transact SQL Code with CodeSmith
    By Jeffrey Juday
If you're haven't used CodeSmith for your TSQL coding yet, now's the time. This template-based code generator enables you to add fire-and-forget programming to your TSQL development.
http://nl.internet.com/ct.html?rtr=on&s=1,319y,1,1sh5,j3sb,jorm,i5r0

==> .NET 3.0

- Important New Concepts in WPF
    By Adam Nathan
Examine some of the main concepts that WPF introduces above and beyond what .NET programmers are already familiar with.
http://nl.internet.com/ct.html?rtr=on&s= 1,319y,1,6ikj,31ia,jorm,i5r0

==> .NET Tip

- Compressing/Decompressing Your Files
    By Eric Smith
One of the many new libraries included with .NET 2.0 allows for compression and decompression of files using the gzip file format. Find out how to use it.
http://nl.internet.com/ct.html?rtr=on&s=1,319y,1,jvs0,2tpg,jorm,i5r0

==> Threads

- Simplified Thread Synchronization in Windows Vista
    By Nick Wienholt
Within the new threading and synchronization APIs that Microsoft added to the Windows SDK for Vista, condition variables dramatically simplify the semantics of lock acquisition and management.
http://nl.internet.com/ct.html?rtr=on&s=1,319y,1,2t3s,asuj,jorm,i5r0

==> Visual Basic

- How to Build Simple Event Log Montior/Watcher (Using TCP in .NET)
    By aleksisa
Learn how to build a simple event log "watcher" application to monitor event log changes on a remote machine(s).
http://nl.internet.com/ct.html?rtr=on&s=1,319y,1,79js,aiwf,jorm,i5r0

==> Web 2.0

- Creating Clean and Simple Pages
    By Alessandro Vernet
Learn why developers should want to create clean and simple page code and discover two important measures to get on the path to clean and simple pages. Professional Web 2.0 Programming author Alessandro Vernet explains it all.
http://nl.internet.com/ct.html?rtr=on&s=1,319y,1,epa4,jntg,jorm,i5r0

==========================================================
Discussion Groups
==========================================================

Check out the CodeGuru discussion forums at:

http://nl.internet.com/ct.html?rtr=on&s=1,319y,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!

... HOT THREADS ...

Some of the current threads with the most activity are:

==> Curious about if (ptr) vs if (ptr != NULL) (C++)
        http://nl.internet.com/ct.html?rtr=on&s=1,319y,1,4dzq,9tzg,jorm,i5r0

==> Dangling Pointers (VC++)
        http://nl.internet.com/ct.html?rtr=on&s=1,319y,1,anfn,6zpd,jorm,i5r0

==> CAsyncSocket as DLL (VC++)
        http://nl.internet.com/ct.html?rtr=on&s=1,319y,1,e94x,b8aw,jorm,i5r0

==========================================================
New Articles on Developer.com
==========================================================

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

1. Eclipse Tip: Customize Your Feature Installation with Install Handlers
    By Peter Nehrer -
When developing an Eclipse RCP-based application, you get to decide how to install it into the end-user's environment.
http://nl.internet.com/ct.html?rtr=on&s=1,319y,1,fhse,kxfj,jorm,i5r0

2. Java Language Integrity & Security: Uncovering Bytecodes
    By Matt Weisfeld -
Understanding what goes on under the hood of an application is a beneficial process. Explore how a class file is designed and how you can disassemble it.
http://nl.internet.com/ct.html?rtr=on&s=1,319y,1,lf1g,c25n,jorm,i5r0

3. Introducing Prototype and Scriptaculous Part 1
    By Dave Crane and Bear Bibeault with Tom Locke -
Discover Prototype, the most popular JavaScript and Ajax framework for low-level coding.
http://nl.internet.com/ct.html?rtr=on&s=1,319y,1,d69t,hab1,jorm,i5r0

==========================================================



About the Author

Bradley L. Jones

bjones@jupitermedia.com

Comments

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

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

Top White Papers and Webcasts

  • Today's enterprise datacenter can be one of the most complex business environments with dozens (for smaller business), hundreds (for larger and midsize business), even thousands (for hyperscale businesses) of servers that must be managed and monitored. At this level, just managing the cords can be challenging — let alone keeping up with the growing need for more agility and scalability within the datacenter. Simply put, companies are aggressively looking for less complexity and more agility from their …

  • Entire organizations suffer when their networks can't keep up and new opportunities are put on hold. Waiting on service providers isn't good business. In these examples, learn how to simplify network management so that your organization can better manage costs, adapt quickly to business demands, and seize market opportunities when they arise.

Most Popular Programming Stories

More for Developers

RSS Feeds

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