Laden...

Grund sowie Vor- und Nachteile von using Anweisungen innerhalb eines Namespaces

Erstellt von Caveman vor 7 Jahren Letzter Beitrag vor 7 Jahren 2.855 Views
Caveman Themenstarter:in
187 Beiträge seit 2009
vor 7 Jahren
Grund sowie Vor- und Nachteile von using Anweisungen innerhalb eines Namespaces

Hallo zusammen.

In letzter Zeit sehe ich immer häufiger in Fremdcode, dass die using-Anweisungen innerhalb des Namespaces programmiert werden.
Beispiel:

namespace blablubb
{
    using System;
    using ...
    ...
}

Warum macht man das so? Welche Vor- und Nachteile sind damit verbunden?
Ich konnte mich jetzt über Google nicht aufschlauen.

5.299 Beiträge seit 2008
vor 7 Jahren

ich keine Ahnung. Ist glaub egal.

Theoretisch kannst du mit usings im Namespace in derselben Datei mehrere Namespaces unterhalten, und jeder mit eigenen usings.

Keine Ahnung, ob das jemals Sinn macht, aber möglich ist das offsichtlich.

Der frühe Apfel fängt den Wurm.

3.003 Beiträge seit 2006
vor 7 Jahren

U.a. ist das eine der Standardeinstellungen von Resharper, die ich sofort nach Installation wieder abstelle. Theoretisch kann das using außerhalb des Namespaces für Schwierigkeiten sorgen (http://stackoverflow.com/questions/125319/should-using-statements-be-inside-or-outside-the-namespace), aber ich halte das für ziemlich konstruiert.

Also, ja, es macht einen Unterschied, aber nein, er ist nicht groß, und es läuft auf Geschmackssache hinaus.

LaTino

"Furlow, is it always about money?"
"Is there anything else? I mean, how much sex can you have?"
"Don't know. I haven't maxed out yet."
(Furlow & Crichton, Farscape)

A
350 Beiträge seit 2010
vor 7 Jahren

Diese Glaubensfrage ist bei uns auch aufgetreten und wir haben auch diverse test gemacht im Unternehmen.
Wir halten uns einfach an den ReSharper, da es dann mit einem Header hübscher aussieht 😉

Also für uns reine Kosmetik.

Grüße

M
177 Beiträge seit 2009
vor 7 Jahren

Vorteil Copy/Paste

Angenommen du willst eine Klasse, aber nicht den namespace, kopieren, dann muss man die usings (im neuen Projekt) manuel hinzufügen. Hat man hingegen die usings innerhalb vom namespaces kann man diese einfach mit kopieren.

F
10.010 Beiträge seit 2004
vor 7 Jahren

Wobei Copy/Paste Entwicklung eher suboptimal ist.

3.003 Beiträge seit 2006
vor 7 Jahren

Ja, aber üblich 😉. Schätze so 20% der Fehler hier im Unternehmen sind copy&paste.

LaTino

"Furlow, is it always about money?"
"Is there anything else? I mean, how much sex can you have?"
"Don't know. I haven't maxed out yet."
(Furlow & Crichton, Farscape)

F
10.010 Beiträge seit 2004
vor 7 Jahren

Ja, kenne ich noch aus der zeit als ich "durch die Lande" fuhr und SW von VB6/Delphi/C++/usw nach dotnet portiert habe.

OOP per Copy&Paste war gang und gebe, und 20% wäre da noch geschönt.

J
641 Beiträge seit 2007
vor 7 Jahren

Eine Zeit lang hielt sich das Gerücht das dadurch Asemblys Lazy geladen werden: https://blogs.msdn.microsoft.com/abhinaba/2008/07/08/do-namespace-using-directives-affect-assembly-loading/ ist aber nicht wahr! Man kanns einfach machen wie mans schöner findet!

cSharp Projekte : https://github.com/jogibear9988