Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

string vs System.String, int vs System.Int32 : another Alias vs Type Name question

Quite often I see source code where language's keyword are replaced with full type names: System.String, System.Int32, System.GUID etc.

Moreover, people who do this write complete type names everywhere, making source full of such declarations:

System.Collections.Generic.List<System.Reflection.PropertyInfo> list = System.Collections.Generic.List<System.Reflection.PropertyInfo>(newSystem.Reflection.PropertyInfo[] { ... });

When I ask them why do they do this, i get wide range of answers: "It helps me avoid type names collisions", "It looks more professional", "my VS plugin does it for me automatically" etc.

I understand, sometimes writing full type names helps you avoid writing unnecessary using if you use the type one time throughout the source code file. And sometimes you need to declare a type explicitly, a great example is Threading Timer and WinForms Timer.

But if you source full of DB calls and you still write System.Data.SqlClient.SqlCommand instead of 'SqlCommand' it looks quite a bit strange for me.

What do you think? Am i right or i just don't understand something?

Thank you!

P.S. And another phenomena is writing if (0 != variable) instead of if (variable != 0).

like image 390
Dmitry Karpezo Avatar asked Jun 16 '26 18:06

Dmitry Karpezo


1 Answers

The if (0 == variable) thing is a C++ convention used to protect against accidentally writing if (variable = 0), which is valid in C++ however doesn't do what's intended. Its completely unnecessary in C# as the wrong version doesn't compile, so you should use the other version instead as it reads better.

Personally I like to write as little as possible, so unless there is a namespace clash I never fully qualify things.

As for string vs String, I always use the alias (string / int) rather than the full class name, however its purely a convention - there is no runtime difference.

like image 160
Justin Avatar answered Jun 19 '26 07:06

Justin



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!