SoloCodigo

CLR: .Net / Mono / Boo / Otros CLR => C# => Mensaje iniciado por: ibito en Martes 19 de Abril de 2005, 18:10

Título: De Q Sirven Los Namespaces En C#?
Publicado por: ibito en Martes 19 de Abril de 2005, 18:10
para que se utilizan? segun yo los utilizas a la hora de usar varios archivos en un proyecto, los uso como el
Código: Text
  1.  
  2. #include "miarchivo.h"
  3.  
  4.  

pero pues se usa

miarchivo.cs:
Código: Text
  1.  
  2. namespace nClase;
  3.  
  4.  

main.cs:
Código: Text
  1.  
  2. using System;
  3. using nClase;
  4.  
  5.  

estoy bien o completamente perdido?
Título: Re: De Q Sirven Los Namespaces En C#?
Publicado por: JuanK en Martes 19 de Abril de 2005, 18:25
TOTALMENTE PERDIDO

Los namespace y los using se usan patra otras cosas.

using es para:
Código: Text
  1.  
  2. using System;
  3. ...
  4. ...
  5. Console.WriteLine();
  6.  
  7.  
sino se usa using seria
Código: Text
  1.  
  2. System.Console.WriteLine();
  3.  
  4.  
Esto es porque system es un espacio de nombre, pero hacer
Código: Text
  1.  
  2. using System.Console;
  3. ...
  4. ...
  5. WriteLine();
  6.  
  7.  
seria incorrecto porque Console es una clase no un espacio de nombres

Pero puedes hacer eso (sino estoy mal)
Código: Text
  1.  
  2. using C= System.Console;
  3. ...
  4. ...
  5. C.Writeline();
  6. ...
  7. ...
  8.  
  9.  
Ahora que pasa si tienes dos clases que se llamen Auto, una hace referencia a automoviles, y la otra hace referencia a cosas automaticas,
la prima la sacaste de una dll que usas, y la segunda te toca hacerla a ti con ese nombre porque asi te lo pidieron... ni el compilador ni tu sabria cual es cual salvo escribiendo el nombre completo con espacio de nombres:
Código: Text
  1.  
  2. MiDll.Auto n = new MIDll.Auto();
  3. MiNamespace.Auto m = new MiNamespace.Auto();
  4.  
  5.  
o
Código: Text
  1.  
  2. using D=MiDll;
  3. using C=MiNamespace;
  4. ...
  5. ...
  6. D.Auto n = new D.Auto();
  7. C.Auto m = new C.Auto();
  8. ...
  9. ...
  10.  
  11.  
en fin.
Título: Re: De Q Sirven Los Namespaces En C#?
Publicado por: antony_soluciones en Sábado 8 de Julio de 2006, 03:58
Bueno, bueno... estoy muy, muy, muy, muy perdido, quiero saber realmente para que se usa el namespace, o mejor aún, ¿este tiene su semejante en java?, ¿el using funciona como el import?
Título: Re: De Q Sirven Los Namespaces En C#?
Publicado por: JuanK en Sábado 8 de Julio de 2006, 04:13
Citar
Bueno, bueno... estoy muy, muy, muy, muy perdido, quiero saber realmente para que se usa el namespace, o mejor aún, ¿este tiene su semejante en java?

Package, hasta donde se es lo mas parecido, pero el namespace se usa para agrupar un conjunto de clases y para ser el identificador del grupo de clases.

Citar
¿el using funciona como el import?
Casi, la equivalencia al import en .net vienen siendo las referencias, pero el using lo que hace es evitarnos escribir el nombre completo de las clases, por ejemplo un metodo de una clase Thread que este dentro del namespace System y dentro del namespace Threading tendrias que usarla asi:

System.Threading.Thread.Sleep();

Pero si usas al inicio:

using System.Threading:

puedes hacer:

Thread.Sleep():

Captas la idea? nmo se si fui claro.