Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Porque Usar C# Y No C++

Iniciado por , 23 de Diciembre de 2004, 02:16:27 PM

« anterior - próximo »

 Buenas,
 
  Yo tb soy programador, pero pienso q a lahora de seleccionar un motor gráfico
  es verdaderamente impotante la respuesta que ese motor , es decir, la rapidez
  de ejecución y que no consuma mucha maquina, es decir que no riquiera un PV
  por todo esto creo que el c# va ir a pedales y va a requerir mucha maquina
  q por ejem. si se hace en C++.
  Estoy haciendo cosas con la libreria SDL.
Saludos
_Willa

_Grey

 Yo dije lo mismo (mas o menos) hace algun tiempo, Haddd insinuo ciertos quebraderos de cabeza con C++, que no ocurren en C#, ademas de comentar que este se compila antes de ejecutarse.....

.... y que demonios, seguro que estaban empezando a darle y esto influyo lo suyo :P.

Saludos.

Haddd

 C++ es más rápido que C#, sin duda, aunque hay algunas cosas que en C# pueden ser más rápidas. Pero C# es muucho más productivo. Y si tienes dudas de velocidad, coge el engine que hemos hecho, a ver que te parece su rendimiento.



Vicente

 Hola,

la ganancia que te da el c++ en velocidad frente al c# (que es poca), no justifica la ganancia de velocidad de desarrollo de c# sobre c++ (que es mucha ;)). Es un lenguaje mucho más moderno, con características que lo hacen bastante más cómodo a la hora de usarlo. Y además, es lo que se va a terminar imponiendo en un futuro (a lo mejor para juegos le cuesta, pero para todo lo demás casi seguro que si). Un saludo!

Vicente

Buffon

Cita de: "Vicente"Hola,

la ganancia que te da el c++ en velocidad frente al c# (que es poca), no justifica la ganancia de velocidad de desarrollo de c# sobre c++ (que es mucha ;)). Es un lenguaje mucho más moderno, con características que lo hacen bastante más cómodo a la hora de usarlo. Y además, es lo que se va a terminar imponiendo en un futuro (a lo mejor para juegos le cuesta, pero para todo lo demás casi seguro que si). Un saludo!

Vicente
en esto tiene toda la razon.

piensa que hay empresas que aún programan con VB6 jajajajajaaj

ethernet

 Por esa regla de 3 todos deberíamos usar C# y cualquier empresa un poco lista lo usaría y no es así. Cada lenguaje tiene su campo de aplicación y es cada uno quien debe saber qué lenguaje aplicar dependiendo de qué vaya a programar.

saludos

seryu

Cita de: "_Willa"Buenas,
 
  Yo tb soy programador, pero pienso q a lahora de seleccionar un motor gráfico
  es verdaderamente impotante la respuesta que ese motor , es decir, la rapidez
  de ejecución y que no consuma mucha maquina, es decir que no riquiera un PV
  por todo esto creo que el c# va ir a pedales y va a requerir mucha maquina
  q por ejem. si se hace en C++.
  Estoy haciendo cosas con la libreria SDL.
Saludos
_Willa
dices qe te importa la rapidez del motor y luego dices qe estas usando SDL? eso como se come?  :blink:  

ALRAZ


Vicente

Cita de: "ethernet"Por esa regla de 3 todos deberíamos usar C# y cualquier empresa un poco lista lo usaría y no es así. Cada lenguaje tiene su campo de aplicación y es cada uno quien debe saber qué lenguaje aplicar dependiendo de qué vaya a programar.

saludos
Veo que vas cogiendo la estrategia de M$ ;)

No se, puede que sea porque me encanta el la plataforma .NET, pero creo que se va a comer muchas cosas, y los juegos no van a ser una excepcion. Se ve que Microsoft está haciendo un esfuerzo con Managed DirectX, y de XNA no se nada de nada, pero no me extrañaría que también trabaje sobre .NET. Su próximo SO es sobre .NET, etc etc.

En el mundo de las empresas, en españa todavía no está implantado, pero ya empieza a entrar, conozco de empresas grandes que para sus CRMs y cosas así, ya no aceptan VB6 y se piensan usar un SAP o un desarrollo en .NET a medida. Dadle tiempo a que aparezcan buenos profesionales del tema, y se empezará a implantar seguro. Pero vamos, que esto es algo totalmente personal, y quizás el currar en el plano tanto profesional como de hobby en .NET no me hagan el más adecuado para opinar ;)

Un saludo!

Vicente

Pogacha

 c++ vs c-sharp
c++:
Mas usado, mucha info, muchos ejemplos, mas portabilidad, desde bajo a alto nivel, muchos años de experiencia en todas las formas, no saturado ( sus capacidades alcanzan para hacer todo, y por varios años será así)

c-sharp:
Mas nuevo (o sea mas adaptado a las necesidades actuales), poco portable, no sirve para hacer drivers ni sistemas operativos ni cosas a nivel hardware, lo que separa la programación definitivamente en tres : dependiente del hardware ( c, c++  y asm)- intermedios - ( java - c-sharp ) - interpretados ( javascript - flash).

Supuestamente el c++ es menos optimo que escribir todo en asm, pero se sacrifica eficiencia (casí la mitad) para poder programar mas facilmente. Entonces donde el tiempo no importe se programa en C++ y cuando tenes un innerloop o función critica lo haces en asm.
Bien ... ahora los nuevos compiladores aprovechan mucho mas las nuevas tecnologias, y aparte de eso, en nuestro caso, la placa de video hace todo el trabajo pesado, por lo que perder un 10 % de eficiencia entre c++ y c-sharp no seria problema.

No obstante, a mi, particularmente, no me termina de convencer, pues las aguas estan turbias aun.
Cuando sepa mas sobre sharp y su futuro veré que hago.

Saludos

martiño

 C# es de Microsoft. (Esto mismo por si solo ya deberia ser un inconveniente, porque Microsoft es especialista en hacer APIs terrorificas, vease la infumable Win32 o DirectX que se tira a la basura en cada version para hacerse de nuevo). Pero dejando los precedentes a parte, esto quiere decir que solo se puede trabajar en PC/Windows (y no me valen los ports raros de .NET). En el mundo hay otras plataformas  (Linux/Unix/Mac/Consolas). C++ es un estandar de la ISO en el que se programa para cuelquier cosa.

En cuanto a lo de la velocidad, no se como es en C#, pero mirando el ejemplo de Java (lenguaje en el cual C# está inspirado), los problemas de velocidad venian aparte de por lo de la maquina virtual, por el garbage colector, la forma en que se manejan los objetos y las inicializaciones que hace siempre en los miembros de una clase. Se pueden declarar objetos en la pila en C#? como es el manejo de memoria? incializa cosas sin que tu se po pidas?

Por otra parte hay gente en este post que ha citado que C# es mas moderno que C++ y que tiene cosas que C++ no tiene, me gustaria ver ejemplos de esto, porque que yo sepa hasta hace poco no tenia ni templates.

Un saludo.

Martiño.

ethernet

 Vicente: para mi la estrategia de MS es muy buena (y no hablo sólamente de marketing). Recuerdo cuando se hizo la primera conferencia para hablar de .NET que fueron 15000 personas especializadas (no hablamos de frikis o gente que no tiene nada que hacer, hablamos de gente que se gasta un pastón en ir).  Me da igual los que digan que no es un estandar abierto, que no tiene código libre, que es de Microsoft... viendo las soluciones de CORBA y Sun (j2ee) me quedo con .NET (solo creo en los standar de facto) porque ni CORBA consigue lo que .NET con la misma facilidad ni j2ee es capaz de interactuar con otros lenguajes a pesar de los esfuerzos de OMG (llegaron tarde).

Volviendo al tema empresarial si me hablas de aplicaciones puramente empresariales que interesa  muchísimo la velocidad de desarrollo y la facilidad de apredizaje está de PM, pero no todo en este planeta son grandes máquinas, tb existen máquinas pequeñas (y no tan pequeñas) que necesitan lenguajes como C y C++ (dsp's... incluso FPGA's XD)

un saludo :**

Zaelsius

 
Cita de: "martiño"Pero dejando los precedentes a parte, esto quiere decir que solo se puede trabajar en PC/Windows (y no me valen los ports raros de .NET).
:blink:  De raro nada, Mono rules.

Ya hay empresas desarrollando software multiplataforma bajo .Net: enlace

Y vamos, que yo he probado a compilar con Mono, y funciona. Sólo les falta terminar la implementación de las Windows.Forms, que seguramente esté lista para el primer trimestre del año que viene.

deadLock++

 
QUOTE (ALRAZ)
habrá SDL para C#?  :D [/quote]
http://cs-sdl.sourceforge.net/


QUOTE (martino)
C# es de Microsoft.(Esto mismo por si solo ya deberia ser un inconveniente... [/quote]

El tipo que está atrás del C# en MS es el mismo que creó el mítico compilador Turbo Pascal y quien diseñó el Delphi. Quedate tranquilo que está en buenas manos.

QUOTE (martiño)
En cuanto a lo de la velocidad, no se como es en C#, pero mirando el ejemplo de Java (lenguaje en el cual C# está inspirado), los problemas de velocidad...
[/quote]

C# es mucho más veloz que Java o mejor dicho es mucho más veloz que las versiones no tan nuevas de Java (actualmente está mejorando un poco en este aspecto).

Según Tom Miller (quien estuvo a cargo de Managed DirectX en MS) la eficiencia de una aplicación C# con MDX es cercana al 95% de una aplicación C++ con DX, según lo que vi yo esta afirmación es demasiado optimista pero en muchos casos ronda el 90%.

Claro que C# no reemplazará al C++ en todo, pero si muchas de las aplicaciones que ahora usan C++ utilizarán en el futuro C#. Yo realmente estoy muy entusiasmado con este nueva solución, me encanta poder utilizar lo mejor de los dos mundos según requiera y no me extrañaría, como ya comentaron, que XBOX 2 se puedan programa en C#/MDX.

CoLSoN2

 Yo he hecho cosas en C#, aplicaciones típicas con interfaz windows, y ME ENCANTA. Tanto el lenguaje como el IDE (VC# Express), y si no lo uso para juegos es en un 95% por que no todo el mundo (mas bien pocos) tienen el .NET Framework instalado, en ningún caso por la velocidad o cualquier otra cosa. En un par de años cuando esté tan extendido como .. (no, la JVM es igual de cacosa en este aspecto XD) .. no se, ¿winzip? XD ya veremos
Manuel F. Lara
Descargar juegos indie  - blog sobre juegos indie y casual
El Desarrollo Personal.com  - blog sobre productividad, motivación y espíritu emprendedor






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.