Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Errrhhh ..... CSharp or VB
Message
 
 
À
25/09/2011 22:27:12
John Baird
Coatesville, Pennsylvanie, États-Unis
Information générale
Forum:
ASP.NET
Catégorie:
Autre
Divers
Thread ID:
01524423
Message ID:
01524778
Vues:
65
>>>>>>>MyName
>>>>>>>myName
>>>>>>>_myName
>>>>>>>this.MyName
>>>>>>>
>>>>>>>are all valid names but the casing tells you the scope of the variable.
>>>>>>
>>>>>>Please go on. I sincerely am in learning mode here. What is the scope of each of those?
>>>>>
>>>>>Here's a sample, I wouldn't do this as a rule, but it illustrates the naming by case.
>>>>>
>>>>>Field variables i.e. _myName are global to the class in which they are declared but since private are not available outside of class
>>>>>Properties (public) are global to the class in which they are declared.and are available to any thing which consumes this class
>>>>>Parameters use camel case and are limited in scope to the method
>>>>>
>>>>>
>>>>>
>>>>> public class MyClass
>>>>>    {
>>>>>        private string _myName;
>>>>>        public string MyName { get; set; }
>>>>>
>>>>>        public MyClass(string myName)
>>>>>        {
>>>>>            _myName = myName;
>>>>>
>>>>>            this.GetNewName(myName);
>>>>>        }
>>>>>
>>>>>        private void GetNewName(string myName)
>>>>>        {
>>>>>            this.MyName = _myName + ":" + myName;
>>>>>        }
>>>>>    }
>>>>>
>>>>
>>>>This is exactly how I do it today, after playing around with different guidelines that last several years.
>>>>
>>>>Other picky points with me: when people do explicity scope _myName to private
>>>>Not using Auto-Implemented Properties
>>>>
>>>>Question: I've always been confused about how the compiler optimizes string concatonation. Should you be using String.Format or String.Concat instead of the way you're doing it? Or will the compiler optimize it?
>>>
>>>
>>>For short strings, as in the demo, i don't think it matters.... but for the most part I use stringbuilder to concat long strings of data.....
>>
>>Another newbie question -- isn't StringBuilder a bazillion times faster than String?
>
>For short concats i.e., var + var + var..... it is probably faster, but for building larger strings stringbilder is faster...

In the early days of .NET I remember reading that Stringbuilder is over 700 times faster. Maybe that has changed, and I imagine the length of the strings is a factor.
Précédent
Répondre
Fil
Voir

Click here to load this message in the networking platform