In all fairness you have some legitimate concern about my language and I respect them as valid.
While I don’t often find myself spanning lines of code across 15 logical lines I suppose that’s an issue. However in terms of multi-line comments none of the code from Microsoft that I see uses them, I think the message is clear that to get good Enterprise level code you should only use \.
I don’t know if it was fixed or not but last I checked C# has no intellisense ability with respect to Enumerations, neither with setting/checking variable values or passing parameters to methods. This bothers me.
C# more literally reflects the Event model but I really like declaring events the VB way without the middle step.
So in C# do you guys have to declare a wrapper method to expose an interface member under an alternate name?
I always thought the purpose of ref arguments was to get out return values, leave it to C# to invent a near useless redundant argument passing mechanism (I know the counter-argument so don’t bother).
Damn I wish we had XML comments, you guys definately won out there.
Using is overkill. It’s nice when you don’t care about the exceptions that pop up and when you only have 1 object to track. Nested Using blocks are worse than nested With blocks. If you’re already using it’s not like you have to do that much work for Try/Catch/Finally (Type Try, hit Enter, most of the work is done now). The more variables you have to dispose of the less useful Using is. If you really want to streamline the process, Declare this somewhere global:
Friend Sub IDispose(ParamArray iDisposables as System.IDisposable())
If iDisposables Is Nothing Then Return
For Each iDisposable As System.IDisposable In iDisposables
If Not iDisposable Is Nothing Then iDisposable.Dispose()
Next
End Sub
yeah I know, I overloaded the identifier a lot and I don’t apologize for it, not like I have to look at it all the time. With a method like that you could Dispose of 100 objects in 1 line placed in your finally block.
…
Try
…
Finally
IDispose(fsIn, fsOut, myForm, someObject, moreObject, otherStuff, tooManyObjectsWithUnmanagedResourcesInThisMethod)
End Try
We just think differently. That’s why the two languages coexist - We’re not all the same.