Amazon.com Widgets April, 2003 - Brad Abrams - Site Home - MSDN Blogs

Brad Abrams

Design Guidelines, Managed code and the .NET Framework

April, 2003

  • Brad Abrams

    String.Empty vs ""

    • 17 Comments
    As David implies , there difference between String.Empty and “” are pretty small, but there is a difference. “” actually creates an object, it will likely be pulled out of the string intern pool, but still… while String.Empty creates no object… so...
  • Brad Abrams

    Implementing ICloneable

    • 10 Comments
    I was doing a little work on the Design Guidelines document tonight and I noticed this section that we added recently. I thought I'd post it here for your comments. Where are you using ICloneable today? Do you agree with this suggestion? 1...
  • Brad Abrams

    Using Console from the internet zone

    • 8 Comments
    Does anyone have a scenario where you are using System.Console from the internet zone? We are trying to understand if we should continue to enable using Console from the internet zone in Whidbey. Are there any scenarios that benefit from using Console...
  • Brad Abrams

    With V1.1 of the Framework shipping

    • 8 Comments
    I though i'd post a couple of links I have found useful.. DennisAn wrote a great whitepaper on how to target different runtime versions... http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnnetdep/html/sidexsidenet.asp And if you...
  • Brad Abrams

    Strings and IsNullOrEmpty

    • 8 Comments
    Jesse aks: >Tired of doing this: "if(s == null || s == String.Empty)"... Yea, we have heard that request before... here is a method we are looking at adding a the Whidbey release of the .NET Framework on the System.String class. ...
  • Brad Abrams

    Quick C# Quiz

    • 7 Comments
    Will this code throw an AgrumentNullException? and why? string firstName = null; String.Format (“{0}”, firstName); Here is the for code String.Format , if that helps… public static String Format(String format, Object arg0) { return...
  • Brad Abrams

    Are assignment of 4-byte quantities guaranteed atomic in the CLR?

    • 6 Comments
    We had a little thread on this internally today and I thought it interesting enough to share here. I am just experimenting here – is this type of thing useful? Q: If I do simple Int32 assignment to a shared variable in a CLR multi-threaded app,...
  • Brad Abrams

    Did a short MSDN TV Spot today...

    • 6 Comments
    Erica Wiechers from the .NET Show fame came by my office today and shot a short segment for MSDN TV about how the GC works and the Dispose pattern . I thought it went fairly well. I was impressed at how quick it went, it was so easy to get it scheduled...
  • Brad Abrams

    Assembly/DLL Naming Guidelines

    • 6 Comments
    I have not seen this be much of debate externally, but it has been pretty hotly debated internally. We just closed down on this guideline... As always, your comments are welcome: 2.3.4 Assembly/DLL Naming Guidelines An assembly is the...
  • Brad Abrams

    Implementing IEnumerable

    • 6 Comments
    Hot off the presses... What do you think? ..brad Implementing IEnumerable Almost all collections expose some way to enumerate elements it contains. The IEnumerable interface encapsulates this notion such that common facilities can be built...
  • Brad Abrams

    Use of AppDomain.Load()

    • 5 Comments
    More from inside the walls.. From the dev that owns the loader... AppDomain.Load() is only meant to be called on the current AppDomain (for use by Interop callers). If you call it on a different AppDomain, if the assembly successfully loads in the...
  • Brad Abrams

    Lutz joins the ranks

    • 5 Comments
    Lutz Roeder gets a blog.. Lutz is working a very cool product that uses some of my stuff and a lot of ChrisAn's stuff... He is also author of some very popular .NET tools ... Check it out..
  • Brad Abrams

    A new CLR guy in the house

    • 4 Comments
    Please welcome Adam Nathan . Adam is a test lead on the CLR team and knows everything there is to know about interop between managed code and unmanaged code. In fact he even wrote the book on the subject. I am sure you will find his blog a very useful...
  • Brad Abrams

    More on String.Empty

    • 4 Comments
    Deepak Sharma asks : Where does String.Length == 0 stands in terms of memory efficiency compared to these two methods? Any ideas. I chatted with the Dev lead that owns String… here is his response: Actually, there is no memory effect here...
  • Brad Abrams

    User groups in the Research Triangle Park Area?

    • 4 Comments
    I’ll be in North Carolina towards the end of May…. Anyone involved in a user group (or some such) that would like a presentation on what is new in the CLR or just want to chat about how the CLR could be better? I figure I have room for exactly...
  • Brad Abrams

    Why Blog

    • 4 Comments
    Why Blog they ask… I believe that Microsoft has benefited greatly from the enormous community support that is available for the .NET Framework. I have been thinking for a while about how I can best contribute to that community. I spend some time...
  • Brad Abrams

    And the Winner is..

    • 4 Comments
    Looks like David Stone one out by under a minute… If John St. Clair had only hit “add” a little faster… David and John both hit the nail on the head.. here is David ’s response: Ø No... because in the second Format method, the format param...
  • Brad Abrams

    More on BCL type names

    • 3 Comments
    Jeff read my recent post and suggested I include ALL his reasons for using the BCL name... Here are they are... 1. Devs think there is a difference between String and string or int and Int32 and there isn’t. For example, I’ve run into some people...
  • Brad Abrams

    Conversion Operators

    • 3 Comments
    One of my many jobs here at MS is helping out with the .NET Framework Design Guidelines Document. Tonight I had to make a small tweak to a guideline I added last week so I thought while I was in there I would post it here to see if folks had comments...
  • Brad Abrams

    To use the BCL type names or not?

    • 3 Comments
    Jeffrey Richter and I have an on going argument that I thought you’d like to chime in on. In samples, books, etc should we use the BCL type names (Int32, String, Single, etc) or programming language specific type names such as in C# (int, string...
  • Brad Abrams

    Honest, it doesn't rain all the time..

    • 3 Comments
    I wasn’t sure recruiting via blogs was an acceptable thing to do our not, but if Don does it , it must be OK ;-) So here goes…. I have an opening for a Program Manager on my team designing features for the Base Class Libraries and helping me with...
  • Brad Abrams

    On .NET DJ Reader's Choice

    • 3 Comments
    Well, I see Yasser and Ingo' s are linking to their books on .NETDJ Readers' Choice , so I thought I’d join them… I had the pleasure of doing the Libraries chapter and part of the intro for Programming in the .NET Environment . I’d love to...
  • Brad Abrams

    You don't know till you measure!

    • 3 Comments
    If you are serious about getting the best performance possible out of a managed app, you need to be using a profiler. The devs that designed and wrote the CLR still need to use a profiler to judge how to improve the performance of a managed app.....
  • Brad Abrams

    Memory Leaks in Managed code

    • 3 Comments
    Q: Can you have memory leaks in managed code? If so, how can you catch them? A: (From the GC Architect) GC will typically reclaim objects at its own pace, based on balancing available memory and runtime overhead. If an assembly is terminated and...
  • Brad Abrams

    Some great stuff published today

    • 3 Comments
    Rico is one of the smartest guys on the CLR team and he is super, super passionate about performance. He is looking at everyway possible to make managed code run faster... He just posted a great whitepaper on how the GC works and how to get the best...
Page 1 of 2 (50 items) 12