Vous voulez voir cette page en français ? Cliquez ici.


or
Sign in to turn on 1-Click ordering.
More Buying Choices
Have one to sell? Sell yours here
Practical Guidelines and Best Practices for Microsoft Visual Basic and Visual C# Developers
 
 

Practical Guidelines and Best Practices for Microsoft Visual Basic and Visual C# Developers [Paperback]

Francesco Balena 196 , Giuseppe Dimauro

List Price: CDN$ 72.99
Price: CDN$ 45.49 & this item ships for FREE with Super Saver Shipping. Details
You Save: CDN$ 27.50 (38%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
Usually ships within 1 to 3 weeks.
Ships from and sold by Amazon.ca. Gift-wrap available.

Product Details


Product Description

Book Description

Get the real-world coding guidelines, expert tips, and rock-solid guidance you need to take your development expertise to the next level. Drawing on their extensive programming and consulting experience, respected developers Francesco Balena and Giuseppe Dimauro share more than 700 programming best practices for Visual Basic and Visual C#. For each rule the authors explain the purpose, illuminate their whys and why-nots, highlight exceptions and alternatives, and provide real-world code samples.

Use the practical, reliable techniques in this book to:

  • Take full advantage of the Microsoft .NET Framework—and write reusable, robust, and security-enhanced code
  • Build software solutions that are both efficient and scalable
  • Implement rational and easy-to-use class libraries and object hierarchies
  • Adopt coherent coding styles and techniques to increase team productivity
  • Extend your programming expertise, problem-solving skills, and creativity!

Find best practices for working with:

  • assemblies
  • resources and localization
  • types and structures
  • fields
  • properties
  • methods *constructors
  • events
  • interfaces
  • exception handling
  • custom attributes
  • numbers and dates
  • strings
  • array and collection types
  • memory usage and object finalization
  • Windows Forms applications
  • Microsoft ADO.NET
  • Microsoft ASP.NET Web Forms and Web services applications
  • threading and synchronization
  • PInvoke and COM Interop
  • serviced components
  • remoting
  • security considerations
  • and more

Get code samples for Visual Basic and C# on the Web: For information on code samples and system requirements, please see Appendix C.

About the Author

Francesco Balena is a well-known and highly regarded developer and author. He has written numerous Microsoft Press® books, including the widely acclaimed Programming Microsoft Visual Basic® titles, and edits a popular Web site on .NET programming. Francesco is a cofounder of Code Architects srl, an Italian software company that specializes in using Microsoft technologies to create enterprise-level solutions and programming tools. In addition, he is a regional director for MSDN® Italy, and a frequent speaker at developer conferences.

Giuseppe Dimauro is an MSDN Regional Director for Italy and a regular speaker at Italian conferences such as Windows Professional Conferences, DevDays, and MSDN events. He teaches and consults for Microsoft Italy on technologies such as COM+, Microsoft SQL Server™, and Microsoft Exchange Server.


Inside This Book (Learn More)
Browse Sample Pages
Front Cover | Copyright | Table of Contents | Excerpt | Index
Search inside this book:

Tag this product

 (What's this?)
Think of a tag as a keyword or label you consider is strongly related to this product.
Tags will help all customers organize and find favorite items.
Your tags: Add your first tag
 

Customer Reviews

There are no customer reviews yet on Amazon.ca
5 star:    (0)
4 star:    (0)
3 star:    (0)
2 star:    (0)
1 star:    (0)
 
 
 
Share your experience with this product with others
Create your own review
Most Helpful Customer Reviews on Amazon.com (beta)
Amazon.com: 4.7 out of 5 stars (21 customer reviews)

197 of 201 people found the following review helpful
5.0 out of 5 stars Author replies to "Don't Waste Your Time or Money" review, April 26 2005
By Francesco Balena - Published on Amazon.com
This review is from: Practical Guidelines and Best Practices for Microsoft Visual Basic and Visual C# Developers (Paperback)
I think Amazon readers should know the true story behind the "Don't Waste Your Time or Money" review by Alex Papadimoulis.

The review in question was excerpted from a post in Mr. Papadimoulis's own blog. After I replied to his original post, Mr. Papadimoulis corrected some of his affirmations and admitted that his original comments were too harsh. (Quite unfairly, he didn't edit his Amazon review, though.) His review was so biased and groundless that many of his own readers complained and proved him wrong on many points.

CREDIBILITY: We authors never claimed we are in the same league as legendary scientists such as Knuth and Yourdon, but fortunately there are several degrees of credibility. Each of us has 20 years of experience writing real-world successful software apps, we work with .NET since earlier pre-beta versions, we consult for Microsoft and writes code for their largest customers in Italy. I have written nearly one hundred technical articles on magazines such as Visual Studio Magazine and MSDN Magazine, spoken at many .NET conferences in US and Europe, and authored several books (some of which are currently used in US schools and universities).

MSDN Regional Directors aren't volunteers, as Mr. Papadimoulis incorrectly writes. RDs are carefully chosen by Microsoft Corp. among the best .NET experts with the highest reputation. In fact, there are only 140 RDs in the world and we are very proud to be in this restricted group of experts. Mr. Papadimoulis's deliberate attempt to reduce the value of the RD status is representative of how biased he is.

THE "RIGHT" WORDS: Words such as "Do", "Don't", "Always", "Never", "Right", "Wrong" etc. are customary in guideline books and articles and Mr. Papadimoulis knows it, but he apparently forgets this detail in the attempt to make readers think we're unreliable. At the very least, he should reckon that we clearly state that our guidelines shouldn't be considered as valid in all cases, mention that we always explain WHY a guideline is recommended and that we often provide alternative rules and exceptions. Our book is about *practical* guidelines and our rules are much less rigid than what Mr. Papadimoulis maintains.

SPEED VS MAINTAINABILITY: Most of the examples that Mr. Papadimoulis provides are related to two contrasting techniques, for example the "as" operator vs. "is operator + casting" or "Compare" vs. "CompareOrdinal" method. It's important to notice that in all cases *both* techniques are simple to maintain and *both* are fully documented, thus recommending the faster one has no drawbacks whatsoever. (We never met a developer that would prefer to use a slow technique if there is an alternative.) Nowhere in our book do we suggest a faster technique that hampers maintainability or that is based on undocumented features.

THE THREADABORT EXCEPTION: Our guideline states that you should never catch this exception but that, if you really need to catch this exception, you should rethrow it immediately because the application can be in unstable and unrecoverable state. Our rule isn't rigid and is fully compatible with what Mr. Papadimoulis describes about cleaning up from a background thread. He either read that guideline too hurriedly or purposely omitted the exact text, in the attempt to make it look arbitrary. In either case his behavior as a reviewer is rather questionable, to say the least.

MSDN RECOMMENDATIONS: Ironically, *all* the guidelines that Mr. Papadimoulis considers as questionable are recommended by Microsoft in several MSDN articles. In other words, Mr. Papadimoulis is convinced that he knows the .NET Framework better than those who created it! I publicly asked Mr. Papadimoulis to explain this laughable contradiction but, understandably, he decided not to reply.

RELATIONAL DATABASE THEORY: I have a Computer Science degree and I am aware that Codd recommended using primary keys that have a meaning for the application. However, he did so 30 years ago, when there were no databases distributed over WANs or the Internet. This is where a book on *practical* guidelines differs from textbooks that are mostly theoretical.

The truth is, applying Codd's rules to ADO.NET and disconnected databases is often unpractical or even impossible. Even not counting ADO.NET and disconnected databases, many database experts (including Microsoft gurus) recommend using meaningless primary keys stored in 32-bit or 64-bit integer fields because they are *much* faster. This is one of the reasons why SQL Server and virtually all modern databases support primary keys of this kind. Or perhaps is Mr. Papadimoulis suggesting that we should ban these databases just because they don't religiously follow Codd's theory? <g>

I could continue with other examples on how inconsistent his criticisms are. If you are interested, you can read the entire story - his first and second post, and my replies to both - by googling for "Papadimoulis blog Balena".

8 of 8 people found the following review helpful
5.0 out of 5 stars An Excellent Reference, Jun 6 2005
By Andrew T. West - Published on Amazon.com
This review is from: Practical Guidelines and Best Practices for Microsoft Visual Basic and Visual C# Developers (Paperback)
There are few books out there that cover what is sometimes a vague and subjective topic in such a straigtforward and clear manner. I'm always looking for consistent guidelines when constructing code.

No sensible person (ahem, Mr. Papadimoulis) would read this book feeling as though the authors were trying to set their practices in stone. The word "guidelines" is part of the title! Most of the guidelines are accompanied with clear explanations and sometimes exceptions to the rule.

Also, if I may nit-pick for a moment, Papadimoulis (a previous reviewer) states that in the book "they use a class named 'frmMain.'" which is inconsistent with the MSDN. Technically, this is a parameter name that refers to an instance and not the name of a class. I wouldn't even mention this if it were not such a beginner mistake. Especially since the naming guidelines are different.

13 of 15 people found the following review helpful
5.0 out of 5 stars 2 pound of common sense, Mar 20 2005
By Thomas Martignoni - Published on Amazon.com
This review is from: Practical Guidelines and Best Practices for Microsoft Visual Basic and Visual C# Developers (Paperback)
It is a much more demanding job to write a book about „how to do things" than about „what you can do". Overall the authors did an excellent job.

Most recommendations are very practical and can easily be applied immediately. In addition many of the suggestions are put in context with a brief discussion over the pros and cons. But people looking for thorough academic debate on any theme will be disappointed. The book is tailored towards practicality. It is simply structured, uses basic and direct language and takes clear positions. That makes it easy and fun to read - yet it provides remarkably good information, not primarily on grand concepts, but on many small things that often get overlooked.

It is the kind of book you take where ever you go when you just have a couple minutes to read. Open a random page and always get a little "aha".
 Go to Amazon.com to see all 21 reviews  4.7 out of 5 stars 

Listmania!

Create a Listmania! list

Look for similar items by category


Look for similar items by subject


Feedback


Amazon.ca Privacy Statement Amazon.ca Shipping Information Amazon.ca Returns & Exchanges