The Use Environment.NewLine refactoring is one of the simplest refactoring shipped in DevExpress Refactor! Pro which improves code portability. This refactoring replaces the “\r\n” string with the value of the Environment.NewLine property reference. The Environment.NewLine is a static string property from the System namespace that is tied to the current executing environment (platform). It returns a valid “line feed/carriage return” string that corresponds to the current operating system, for example: “\r\n” for Windows platforms, or a string containing just a line feed (“\n“) for Unix platforms.
Read more…
When checking that a user has provided a valid input, you will often want to ensure that it is not null or empty. Strings are reference types and can be equal to a null value like any other reference type. Strings can also be empty, meaning their values equal “” and they have zero length. The IsNullOrEmpty call of the System.String class indicates whether the given string is a null or an empty (“”) string. Before this call appeared in the .NET Framework, we were checking strings as follows (for example):
Read more…
Concatenation is the process of appending one string to the end of another string. A string is basically a sequence of Unicode characters. An important property of strings is that they are read-only (immutable). Once a string has been created, it cannot be changed. So, when a string is updated, the .NET framework actually discards the original string and creates a new string. In other words, the concatenation of strings is creating an entirely new string, allocating enough memory for everything, copying all the data from the existing values of all concatenated strings and then copying the data from each string. As the string grows, the amount of data it has to copy each time grows too. Having already concatenated strings allows you to avoid such problems.
Read more…
Classes allow you to create instance members and static members. Instance members are available when an instance of the class is created and have access to the object’s data. Static members do not require an object created and can be called directly.
Static methods are useful when creating functions that are not reliant on any instance of a class. An example of the extensive use of static members is the System.Math class, which is a library of mathematical functions and constants provided by the .NET framework.
Read more…
The Make Extension refactoring converts a regular method into an extension method based on the selected parameter type. Extension methods allow you to extend an existing type, including classes, structures or interfaces, with the new functionality, without having to derive from that class and without modifying the code of the type itself. The extended type is taken from the parameter that you choose when applying the refactoring.
Read more…
In this article we will create the simplest refactoring which will remove the active comment. Sometimes, there are comments left that are not utilized any longer, such as implemented TO-DO comments, UNDONE comment that is now complete, etc. We will use the RefactoringProvider control shipped in DevExpress Refactor! Pro for this purpose.
Read more…
The RefactoringProvider DXCore component (shipped in Refactor! Pro) provides a specific code refactoring operation, which can improve your source code without changing its logic in a definite context.
Read more…
An anonymous method is a method without a name – which is why it is called anonymous. You don’t declare anonymous methods like regular methods. Instead, they get declared right inside a member as an inline code block. This is one of the greatest benefits of an anonymous method – it removes the requirement to create a named method elsewhere in the code, especially for simple operations. For example, you are able to pass an inline anonymous method as a delegate parameter, which means that you can use anonymous methods anywhere a delegate type is expected:
Read more…