C# Coding Best Practice [closed]
up vote
-2
down vote
favorite
I'm currently doing work which requires me to convert VB.Net code to C#.
I've been using the "Builder Pattern" primarily and this has me converting many functions that are one single call of a function ie. SomeFunction(var1,var2,var3) into:
Dim Director As New SomeDirector
With Director
.SomeProperty = SomeValue
.SomeProperty2 = SomeValue2
End With
My concern is that this creates 5-6 lines of code rather than one single line. Is there a way for me to do this in a more concise way or is it better to have the 5-6 lines of code?
Thanks!
c#
closed as unclear what you're asking by SeM, Gert Arnold, Tim Lewis, Mark Tomlin, omajid Nov 22 at 22:44
Please clarify your specific problem or add additional details to highlight exactly what you need. As it's currently written, it’s hard to tell exactly what you're asking. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.
add a comment |
up vote
-2
down vote
favorite
I'm currently doing work which requires me to convert VB.Net code to C#.
I've been using the "Builder Pattern" primarily and this has me converting many functions that are one single call of a function ie. SomeFunction(var1,var2,var3) into:
Dim Director As New SomeDirector
With Director
.SomeProperty = SomeValue
.SomeProperty2 = SomeValue2
End With
My concern is that this creates 5-6 lines of code rather than one single line. Is there a way for me to do this in a more concise way or is it better to have the 5-6 lines of code?
Thanks!
c#
closed as unclear what you're asking by SeM, Gert Arnold, Tim Lewis, Mark Tomlin, omajid Nov 22 at 22:44
Please clarify your specific problem or add additional details to highlight exactly what you need. As it's currently written, it’s hard to tell exactly what you're asking. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.
2
I don't get it. That code is not a function call and it is not c#. Regardless, best practice questions are better suited for codereview.stackexchange.com
– Crowcoder
Nov 22 at 16:40
1
I would actually recommend softwareengineering over codereview in this circumstance.
– A Friend
Nov 22 at 16:46
add a comment |
up vote
-2
down vote
favorite
up vote
-2
down vote
favorite
I'm currently doing work which requires me to convert VB.Net code to C#.
I've been using the "Builder Pattern" primarily and this has me converting many functions that are one single call of a function ie. SomeFunction(var1,var2,var3) into:
Dim Director As New SomeDirector
With Director
.SomeProperty = SomeValue
.SomeProperty2 = SomeValue2
End With
My concern is that this creates 5-6 lines of code rather than one single line. Is there a way for me to do this in a more concise way or is it better to have the 5-6 lines of code?
Thanks!
c#
I'm currently doing work which requires me to convert VB.Net code to C#.
I've been using the "Builder Pattern" primarily and this has me converting many functions that are one single call of a function ie. SomeFunction(var1,var2,var3) into:
Dim Director As New SomeDirector
With Director
.SomeProperty = SomeValue
.SomeProperty2 = SomeValue2
End With
My concern is that this creates 5-6 lines of code rather than one single line. Is there a way for me to do this in a more concise way or is it better to have the 5-6 lines of code?
Thanks!
c#
c#
asked Nov 22 at 16:36
Wonka Bear
12
12
closed as unclear what you're asking by SeM, Gert Arnold, Tim Lewis, Mark Tomlin, omajid Nov 22 at 22:44
Please clarify your specific problem or add additional details to highlight exactly what you need. As it's currently written, it’s hard to tell exactly what you're asking. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.
closed as unclear what you're asking by SeM, Gert Arnold, Tim Lewis, Mark Tomlin, omajid Nov 22 at 22:44
Please clarify your specific problem or add additional details to highlight exactly what you need. As it's currently written, it’s hard to tell exactly what you're asking. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.
2
I don't get it. That code is not a function call and it is not c#. Regardless, best practice questions are better suited for codereview.stackexchange.com
– Crowcoder
Nov 22 at 16:40
1
I would actually recommend softwareengineering over codereview in this circumstance.
– A Friend
Nov 22 at 16:46
add a comment |
2
I don't get it. That code is not a function call and it is not c#. Regardless, best practice questions are better suited for codereview.stackexchange.com
– Crowcoder
Nov 22 at 16:40
1
I would actually recommend softwareengineering over codereview in this circumstance.
– A Friend
Nov 22 at 16:46
2
2
I don't get it. That code is not a function call and it is not c#. Regardless, best practice questions are better suited for codereview.stackexchange.com
– Crowcoder
Nov 22 at 16:40
I don't get it. That code is not a function call and it is not c#. Regardless, best practice questions are better suited for codereview.stackexchange.com
– Crowcoder
Nov 22 at 16:40
1
1
I would actually recommend softwareengineering over codereview in this circumstance.
– A Friend
Nov 22 at 16:46
I would actually recommend softwareengineering over codereview in this circumstance.
– A Friend
Nov 22 at 16:46
add a comment |
3 Answers
3
active
oldest
votes
up vote
0
down vote
accepted
One neat way to write that is with a constructor in the SomeDirector class:
public SomeDirector(int value1, int value2)
{
this.SomeProperty = value1;
this.SomeProperty2 = value2;
}
then your code sample becomes:
var director = new SomeDirector(someValue, someValue2);
The idea here is that while the constructor looks a bit long-winded, it's tucked away in the class and the code that calls it is nice and concise (and you can't forget an important property).
In case you wondered, there's no C# equivalent of VB's with
keyword.
1
In the context they are using it, VB'sWith
is equivalent to C#'s object initialisation.
– A Friend
Nov 22 at 16:45
Thanks Robin I will try this out right now and let you know how it goes!
– Wonka Bear
Nov 22 at 16:46
add a comment |
up vote
1
down vote
As already mentioned, you can do something similar in C# with object initialisation:
var Director = new SomeDirector { SomeProperty = SomeValue, SomeProperty2 = SomeValue2 };
This does not require you to write an explicit constructor.
add a comment |
up vote
0
down vote
More of a general answer to your question:
In theory it doesnt matter how many lines of code you have, only how much resources it costs to execute. But best practices are also about human readability so it really depends on the situation. Do you need to optimize for performance or further development. This is something that in most cases you as a developer will know better than anyone else who dont have the full insight.
add a comment |
3 Answers
3
active
oldest
votes
3 Answers
3
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
0
down vote
accepted
One neat way to write that is with a constructor in the SomeDirector class:
public SomeDirector(int value1, int value2)
{
this.SomeProperty = value1;
this.SomeProperty2 = value2;
}
then your code sample becomes:
var director = new SomeDirector(someValue, someValue2);
The idea here is that while the constructor looks a bit long-winded, it's tucked away in the class and the code that calls it is nice and concise (and you can't forget an important property).
In case you wondered, there's no C# equivalent of VB's with
keyword.
1
In the context they are using it, VB'sWith
is equivalent to C#'s object initialisation.
– A Friend
Nov 22 at 16:45
Thanks Robin I will try this out right now and let you know how it goes!
– Wonka Bear
Nov 22 at 16:46
add a comment |
up vote
0
down vote
accepted
One neat way to write that is with a constructor in the SomeDirector class:
public SomeDirector(int value1, int value2)
{
this.SomeProperty = value1;
this.SomeProperty2 = value2;
}
then your code sample becomes:
var director = new SomeDirector(someValue, someValue2);
The idea here is that while the constructor looks a bit long-winded, it's tucked away in the class and the code that calls it is nice and concise (and you can't forget an important property).
In case you wondered, there's no C# equivalent of VB's with
keyword.
1
In the context they are using it, VB'sWith
is equivalent to C#'s object initialisation.
– A Friend
Nov 22 at 16:45
Thanks Robin I will try this out right now and let you know how it goes!
– Wonka Bear
Nov 22 at 16:46
add a comment |
up vote
0
down vote
accepted
up vote
0
down vote
accepted
One neat way to write that is with a constructor in the SomeDirector class:
public SomeDirector(int value1, int value2)
{
this.SomeProperty = value1;
this.SomeProperty2 = value2;
}
then your code sample becomes:
var director = new SomeDirector(someValue, someValue2);
The idea here is that while the constructor looks a bit long-winded, it's tucked away in the class and the code that calls it is nice and concise (and you can't forget an important property).
In case you wondered, there's no C# equivalent of VB's with
keyword.
One neat way to write that is with a constructor in the SomeDirector class:
public SomeDirector(int value1, int value2)
{
this.SomeProperty = value1;
this.SomeProperty2 = value2;
}
then your code sample becomes:
var director = new SomeDirector(someValue, someValue2);
The idea here is that while the constructor looks a bit long-winded, it's tucked away in the class and the code that calls it is nice and concise (and you can't forget an important property).
In case you wondered, there's no C# equivalent of VB's with
keyword.
answered Nov 22 at 16:43
Robin Bennett
1,407112
1,407112
1
In the context they are using it, VB'sWith
is equivalent to C#'s object initialisation.
– A Friend
Nov 22 at 16:45
Thanks Robin I will try this out right now and let you know how it goes!
– Wonka Bear
Nov 22 at 16:46
add a comment |
1
In the context they are using it, VB'sWith
is equivalent to C#'s object initialisation.
– A Friend
Nov 22 at 16:45
Thanks Robin I will try this out right now and let you know how it goes!
– Wonka Bear
Nov 22 at 16:46
1
1
In the context they are using it, VB's
With
is equivalent to C#'s object initialisation.– A Friend
Nov 22 at 16:45
In the context they are using it, VB's
With
is equivalent to C#'s object initialisation.– A Friend
Nov 22 at 16:45
Thanks Robin I will try this out right now and let you know how it goes!
– Wonka Bear
Nov 22 at 16:46
Thanks Robin I will try this out right now and let you know how it goes!
– Wonka Bear
Nov 22 at 16:46
add a comment |
up vote
1
down vote
As already mentioned, you can do something similar in C# with object initialisation:
var Director = new SomeDirector { SomeProperty = SomeValue, SomeProperty2 = SomeValue2 };
This does not require you to write an explicit constructor.
add a comment |
up vote
1
down vote
As already mentioned, you can do something similar in C# with object initialisation:
var Director = new SomeDirector { SomeProperty = SomeValue, SomeProperty2 = SomeValue2 };
This does not require you to write an explicit constructor.
add a comment |
up vote
1
down vote
up vote
1
down vote
As already mentioned, you can do something similar in C# with object initialisation:
var Director = new SomeDirector { SomeProperty = SomeValue, SomeProperty2 = SomeValue2 };
This does not require you to write an explicit constructor.
As already mentioned, you can do something similar in C# with object initialisation:
var Director = new SomeDirector { SomeProperty = SomeValue, SomeProperty2 = SomeValue2 };
This does not require you to write an explicit constructor.
answered Nov 22 at 16:54
Polyfun
7,52842736
7,52842736
add a comment |
add a comment |
up vote
0
down vote
More of a general answer to your question:
In theory it doesnt matter how many lines of code you have, only how much resources it costs to execute. But best practices are also about human readability so it really depends on the situation. Do you need to optimize for performance or further development. This is something that in most cases you as a developer will know better than anyone else who dont have the full insight.
add a comment |
up vote
0
down vote
More of a general answer to your question:
In theory it doesnt matter how many lines of code you have, only how much resources it costs to execute. But best practices are also about human readability so it really depends on the situation. Do you need to optimize for performance or further development. This is something that in most cases you as a developer will know better than anyone else who dont have the full insight.
add a comment |
up vote
0
down vote
up vote
0
down vote
More of a general answer to your question:
In theory it doesnt matter how many lines of code you have, only how much resources it costs to execute. But best practices are also about human readability so it really depends on the situation. Do you need to optimize for performance or further development. This is something that in most cases you as a developer will know better than anyone else who dont have the full insight.
More of a general answer to your question:
In theory it doesnt matter how many lines of code you have, only how much resources it costs to execute. But best practices are also about human readability so it really depends on the situation. Do you need to optimize for performance or further development. This is something that in most cases you as a developer will know better than anyone else who dont have the full insight.
answered Nov 22 at 16:49
heap1
598
598
add a comment |
add a comment |
2
I don't get it. That code is not a function call and it is not c#. Regardless, best practice questions are better suited for codereview.stackexchange.com
– Crowcoder
Nov 22 at 16:40
1
I would actually recommend softwareengineering over codereview in this circumstance.
– A Friend
Nov 22 at 16:46