elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recopilación Tutoriales y Manuales Hacking, Seguridad, Privacidad, Hardware, etc


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  Que es mejor o recomiendan más Vb o C#?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Que es mejor o recomiendan más Vb o C#?  (Leído 6,118 veces)
andrecid

Desconectado Desconectado

Mensajes: 126


Haz lo que quieras, por que nadie te puede obligar


Ver Perfil
Que es mejor o recomiendan más Vb o C#?
« en: 1 Noviembre 2014, 11:43 am »

Hola , les quería pregunta una duda que llevo con ella algún tiempo.

Cuando empece con la programación empece con Vb pero enseguida me cambie a C# por que la gente decía que era mejor etc, Obviamente yo estuve investigando por internet y he leído que ningún  lenguaje es mejor que otro.

Entonces ¿Por que recomiendan más C# que VB?

me gustaría saber que opinan ustedes sobre el tema y a ver si me resuelven la duda.


En línea

El Benjo


Desconectado Desconectado

Mensajes: 392



Ver Perfil WWW
Re: Que es mejor o recomiendan más Vb o C#?
« Respuesta #1 en: 1 Noviembre 2014, 18:37 pm »

Es más que nada porque VB es un lenguaje que te permite hacer cosas que se consideran "un mal hábito" como no declarar las variables que utilizas, etc.

http://msdn.microsoft.com/es-es/library/bb972208.aspx


En línea

www.es.neftis-ai.com

Sí hay un mejor lenguaje de programación y es ese con el que puedes desarrollar tus objetivos.
Pablo Videla


Desconectado Desconectado

Mensajes: 2.274



Ver Perfil WWW
Re: Que es mejor o recomiendan más Vb o C#?
« Respuesta #2 en: 1 Noviembre 2014, 20:47 pm »

Personalmente prefiero C# por la sintaxis, me es imposible tratar de aprender visual basic porque me provoca derrame cerebral, simplemente me niego a programar en algo parecido a BASIC.
En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.809



Ver Perfil
Re: Que es mejor o recomiendan más Vb o C#?
« Respuesta #3 en: 1 Noviembre 2014, 20:57 pm »

Es más que nada porque VB es un lenguaje que te permite hacer cosas que se consideran "un mal hábito" como no declarar las variables que utilizas, etc.

No opino de esa misma manera, un programador usará malas prácticas si así lo quieres hacer sin importar el lenguaje que sea, en C# puedes usar malas practicas, las cuales además algunas se comparten con VB.NET, pero otras malas prácticas son específicas para este lenguaje, C#.

Cabe mencionar que ese tipo de malos hábitos relacionadas con las variables en VB.Net se pueden evitar activando las declaraciones "Option", cosa que se puede especificar en las opciones de la IDE para que estén activadas por defecto en todos los nuevos proyectos ( Tools -> Options -> Project and Solutions -> VB defaults ), o se pueden declarar de forma manual en la cabecera de la Class/Module:

Código
  1. Option Explicit On
  2. Option Strict On
  3. Option Infer Off

Entonces, con esto queda el problema de esos malos hábitos resuelto.

En mi opinión, esto lo veo una mejora, ya que VB.Net no nos obliga a usar malas prácticas, no es un mal lenguaje sino todo lo contrario al brindarnos la posibilidad de elección para trabajar de una forma más rápida evitando ese tipo de especificaciones/correcciones cuando sabemos perfectamente lo que estamos haciendo y esto supone un aumento de rendimiento, ya que en cualquier momento podemos activar las declaraciones para añadir las especificaciones o hacer las correcciones necesarias y eso me parece algo genial.



Gran artículo por parte de Microsoft explicando los entresijos básicos de MSIL, gracias, lo he añadido a mi mini-FAQ de Manuales .Net xD






Entonces ¿Por que recomiendan más C# que VB?

Habrá gente experta que haya trabajado por igual con VB.Net y C# para sacar sus propias conclusiones y recomendar un lenguaje o el otro.

Yo no los he trabajado por igual, pero puedo decir que jamás he necesitado recurrir a C# para desarrollar algo que no se pudiera hacer en Vb.Net,
hace ya bastante tiempo cuando me hice esta misma pregunta leía comentarios de gente que suele decir que entre VB.Net y C#, C# sería la única opción para tocar temas delicados como la inyección de código/dll, el API Hooking, la lectura/escritura de la memoria en un proceso ajeno, etc, pero obviamente cuando empiezas a tocar .Net acabas dándode cuenta de que ese tipo de comentarios/acusaciones son completamente falsas ya que se puede hacer exactamente lo mismo en Vb.Net que en C# respecto a esos temas que mencioné, aunque de todas formas no discuto que quizás sí exista algo que solo se pueda llevar a cabo con C# (entre Vb.Net y C# hablando) ya que no soy ningún gurú en este lenguaje, pero para cosar "normales" te va a servir cualquiera de los dos lenguajes.

Por otro lado, también habrá gente que nunca haya usado CSharp, pero por su nombre lo asociarán automáticamente con C++ y tenderán a decir que es mejor lenguaje por favoritismo o simplemente por ese mal razonamiento, la razón de este mal razonamiento se explica detalladamente en el articulo que te mostró @El Benjo.

Claro, si asociasemos VB.Net con VB6 o VBS entonces yo tambien diría lo mismo, diría que VB.Net es una completa basura como lenguaje y que C# es mejor, pero estaría equivocado porque ni VB.Net se asemeja en sus antecesores, ni C# a los suyos (exceptuando la sintaxis de ambos lenguajes), es una tecnología nueva dependiente de .Net Framework, y aparte la WinAPI no va a cambiar o a mejorar por arte de magia entre ambos lenguajes :-/.

Si una persona random dice que C# o VB.Net es mejor en un debate sin dar ningún argumento... ¿para que tomarse el comentario en serio?, busca y lee por ti mismo las diferencias entre cada lenguaje, saca tú tus propias conclusiones para decidir que lenguaje te parece mejor a ti.


Comparison of C Sharp and Visual Basic .NET
Is C# code faster than Visual Basic.NET code?
VB.NET vs. C#.NET?
10 Reasons Why Visual Basic is Better Than C#
Top 10 reasons VB.NET is better than C#

En resumen, al final las diferencias entre ambos lenguajes son pequeños tecnicismos a los que quizás nunca legues a necesitar darle importancia, tu decisión debería basarse en el lenguaje que más te guste y más facil de usar sea para ti, personalmente yo no cambiaría la sintaxis de VB.Net por la de C#.

Te recomiendo leer el artículo que te ha linkeado el compañero @El Benjo.

Saludos
« Última modificación: 1 Noviembre 2014, 21:42 pm por Eleкtro » En línea

Yaldabaot

Desconectado Desconectado

Mensajes: 186


Ver Perfil
Re: Que es mejor o recomiendan más Vb o C#?
« Respuesta #4 en: 15 Noviembre 2014, 21:59 pm »

Estoy de acuerdo con Elektro, no soy experto en ninguno de los dos, me falta MUCHO para considerarme experto, tengo algunos años programando, pero se un poco lo básico para decir que ambos lenguajes son muy potentes y puede dar un gran rendimiento.

Me gusta mucho VB.NET, lo curioso es ver la GRAN cantidad de gente que lo odia, lo desprestigia y sobretodo lo hace a un lado, cuando es un lenguaje MUY potente y competente, estuve viendo estadìsticas de los lenguajes y en este año VB.NET ha subido muchas casillas, no es un lenguaje malo y es sencillo y fácil de entender.

C# me gusta también, es un excelente lenguaje y muy poderoso, sobre las malas prácticas ya lo especificó Elektro, hay opciones que te permiten trabajar mejor con lenguajes "opcion strict" es una de ellas en VB

PD: Elektro necesito ayuda en el otro post xD(no he podido conseguirlo u.u)
En línea

Nunca me contestan -_-
elezekiel

Desconectado Desconectado

Mensajes: 246


Ver Perfil
Re: Que es mejor o recomiendan más Vb o C#?
« Respuesta #5 en: 16 Noviembre 2014, 20:31 pm »

C# es mucho mas potente, toda la vida sin lugar a dudas, vb es como vb6 solo con algunos cambios, no tiene mucho mas.

si queres hacer cosas simples que hagas en 15 minutos usa vb, sino usa C#
En línea

kub0x
Enlightenment Seeker
Moderador
***
Desconectado Desconectado

Mensajes: 1.486


S3C M4NI4C


Ver Perfil
Re: Que es mejor o recomiendan más Vb o C#?
« Respuesta #6 en: 16 Noviembre 2014, 21:14 pm »

Llevo años programando en .NET concretamente C# y VB. VB .NET fue mi primer lenguaje de programación orientado a objetos y debo destacar su sintáxis legible a primera vista, lo práctico que es (gracias al Framework) y lo sencillo que es aprenderlo. Eso sí, si te compras un libro BÁSICO de C# o VB .NET vas a ver prácticamente lo mismo, la única diferencia sería la sintáxis, ya que las diferencias entre C# y VB realmente están a la hora de utilizar contextos que requieren una compilación insegura, normalmente punteros ya que su integridad no se puede verificar. Guardan más diferencias, pero sencillamente esa es una de las más relevantes.

Si vienes del mundo de Java o C/C++ entonces C# es tu amigo, ya que la sintáxis es casi calcada a la de estos lenguajes. VB .NET no se asemeja a ningún lenguaje ademas que su propósito en su día fue crear un lenguaje para principiantes. Hoy día con el proyecto .NET estoy en desacuerdo con dicha afirmación, ya que VB .NET se ha convertido en un lenguaje potente que nada tiene que envidiar a C#.

Yo no los he trabajado por igual, pero puedo decir que jamás he necesitado recurrir a C# para desarrollar algo que no se pudiera hacer en Vb.Net,
hace ya bastante tiempo cuando me hice esta misma pregunta leía comentarios de gente que suele decir que entre VB.Net y C#, C# sería la única opción para tocar temas delicados como la inyección de código/dll, el API Hooking, la lectura/escritura de la memoria en un proceso ajeno, etc, pero obviamente cuando empiezas a tocar .Net acabas dándode cuenta de que ese tipo de comentarios/acusaciones son completamente falsas ya que se puede hacer exactamente lo mismo en Vb.Net que en C# respecto a esos temas que mencioné, aunque de todas formas no discuto que quizás sí exista algo que solo se pueda llevar a cabo con C# (entre Vb.Net y C# hablando) ya que no soy ningún gurú en este lenguaje, pero para cosar "normales" te va a servir cualquiera de los dos lenguajes.

Soy de C++, pero como estamos en .NET pues prefiero C# ya que me da más control sobre la memoria. Aun así le doy la razón a mi compañero por un simple hecho, he desarrollado tools en ambos lenguajes para inyecciones DLLs, malware, cheats/bots, y debo afirmar que ambos lenguajes sirven para estos propósitos.
Arriba mencioné la compilación unsafe al utilizar un contexto no seguro (pointers), bueno, VB .NET no permite dicho modo de compilación, pero es bien sabido que se puede hacer un port de unmanaged a managed (C# unmanaged to VB .NET managed) , por lo que sería posible. Existen diferencias en su sintáxis y palabras reservadas (keywords) pero el código intermedio (MSIL) en Release es práctimente el mismo.

Eso sí, las tools de las que os hablo es preferible desarrollarlas en C++ como DLL y usarla en tus proyectos, sobre todo si se trata de Hooking o DLL inyection, ya que te obligaria a cargar el CLR en el proceso objetivo lo que podría causar un mal funcionamiento del proceso destino al haber cargado tantas dependencias en su espacio de memoria. C++ hace sencillo todos estos procedimientos.

No sé porque realmente la gente tiende a desprestigiar a VB .NET, ni caso, eso es porque nunca se han molestado ni en aprenderlo ni en medir su potencial comparándolo con C# por ejemplo. Eso sí, recomiendo no estancarse en VB y aprender más lenguajes, Java/C#/C/C++ guardan ciertas relaciones que hacen muy sencillo su aprendizaje.

Saludos.
En línea

Viejos siempre viejos,
Ellos tienen el poder,
Y la juventud,
¡En el ataúd! Criaturas Al poder.

Visita mi perfil en ResearchGate

zShackra

Desconectado Desconectado

Mensajes: 59


Ver Perfil WWW
Re: Que es mejor o recomiendan más Vb o C#?
« Respuesta #7 en: 18 Noviembre 2014, 21:39 pm »

Llevo años programando en .NET concretamente C# y VB. VB .NET fue mi primer lenguaje de programación orientado a objetos y debo destacar su sintáxis legible a primera vista, lo práctico que es (gracias al Framework) y lo sencillo que es aprenderlo. Eso sí, si te compras un libro BÁSICO de C# o VB .NET vas a ver prácticamente lo mismo, la única diferencia sería la sintáxis, ya que las diferencias entre C# y VB realmente están a la hora de utilizar contextos que requieren una compilación insegura, normalmente punteros ya que su integridad no se puede verificar. Guardan más diferencias, pero sencillamente esa es una de las más relevantes.

Si vienes del mundo de Java o C/C++ entonces C# es tu amigo, ya que la sintáxis es casi calcada a la de estos lenguajes. VB .NET no se asemeja a ningún lenguaje ademas que su propósito en su día fue crear un lenguaje para principiantes. Hoy día con el proyecto .NET estoy en desacuerdo con dicha afirmación, ya que VB .NET se ha convertido en un lenguaje potente que nada tiene que envidiar a C#.

Soy de C++, pero como estamos en .NET pues prefiero C# ya que me da más control sobre la memoria. Aun así le doy la razón a mi compañero por un simple hecho, he desarrollado tools en ambos lenguajes para inyecciones DLLs, malware, cheats/bots, y debo afirmar que ambos lenguajes sirven para estos propósitos.
Arriba mencioné la compilación unsafe al utilizar un contexto no seguro (pointers), bueno, VB .NET no permite dicho modo de compilación, pero es bien sabido que se puede hacer un port de unmanaged a managed (C# unmanaged to VB .NET managed) , por lo que sería posible. Existen diferencias en su sintáxis y palabras reservadas (keywords) pero el código intermedio (MSIL) en Release es práctimente el mismo.

Eso sí, las tools de las que os hablo es preferible desarrollarlas en C++ como DLL y usarla en tus proyectos, sobre todo si se trata de Hooking o DLL inyection, ya que te obligaria a cargar el CLR en el proceso objetivo lo que podría causar un mal funcionamiento del proceso destino al haber cargado tantas dependencias en su espacio de memoria. C++ hace sencillo todos estos procedimientos.

No sé porque realmente la gente tiende a desprestigiar a VB .NET, ni caso, eso es porque nunca se han molestado ni en aprenderlo ni en medir su potencial comparándolo con C# por ejemplo. Eso sí, recomiendo no estancarse en VB y aprender más lenguajes, Java/C#/C/C++ guardan ciertas relaciones que hacen muy sencillo su aprendizaje.

Saludos.

Bajo mi punto de vista, creo que el odio viene por su sintaxis y sus usuarios, el/los cual(es) es/son, como se ha dicho anteriormente, un lenguaje con sintaxis para iniciados y por ahí derecho que, quienes lo usan, generalmente son novatos que se creen mecenas, los llamados Script Kiddies o Lamers de la red... adolescentes que en principio lo "aprenden" porque es lo primero que ven en Google al buscar cosas del tipo "komo programar un virus?" o "cmo acer un troyano?", etc... Esto sin contar la cantidad de gente que defiende VB sin argumentos, es decir argumentan cosas del tipo "me parece bonito y sencillo de aprender", en vez de basarse en argumentos robustos propios del lenguaje.

Además, uno de los puntos más esenciales en el odio a este (a mi criterio), es que cuando aprendes lenguajes del tipo C/C++, los cuales te ofrecen de manera nativa y sencilla el control total sobre una máquina, y te das cuenta de la utilidad y potencial de dichos lenguajes, empiezas a considerar a lenguajes como VB, lenguajes de juguete (sea o no .NET), ya que te das cuenta que lo único que te ofrecen diferente de C/C++ es un trabajo con la POO más directo... y es aquí donde C# lleva todas las de ganar, por el simple hecho de su sintaxis, la cual es en extremo atractiva al ser tan semejante a C++ (sí, ya sé que Java fue influenciado por C++ y luego C# por Java y C++), pero a lo que voy, es que al existir en .NET un lenguaje como C# que te ofrece lo mismo que VB .NET, te preguntas ¿para qué usar/aprender un lenguaje que en principio no me atrae y siento algo de repudio hacia él*, cuando existe C#, el cual se asemeja mucho más a C++ y me permite un uso idéntico de la plataforma .NET + código inseguro + POO?

* En síntesis, a mi criterio, el rechazo al lenguaje está basado en 3 puntos clave:
  • Su sintaxis: Orientada a noveles, presenta una nueva estructura y obliga al programador a aprender de nuevo otra sintaxis que no se parece en nada a la cual ya venia trabajando.
  • Sus usuarios: Estos defensores que, en general, no saben de qué hablan y se valen de cualquier cosa para defender un lenguaje, a mi criterio, inútil y que lo único que ha logrado (y lo podemos observar a lo largo de la red) es crear muchísimos pseudoprogramadores vagos y prepotentes.
  • Su alcance: En comparación con C#, no he encontrado nada que se pueda hacer en VB que en C# no. Caso contrario si habláramos de VB, pues tendríamos que valernos de artificios para poder llegar a un fin que con C# se lograría de forma sencilla.

Sin embargo, esta es una opinión meramente subjetiva. No puedo firmar que VB sea un mal lenguaje, de hecho, para aquellos que tienen toda su vida programando en VB, todo lo que he dicho anteriormente, es una bonita falacia.

En fin, creo que y sin temor a equivocarme, quienes empezamos a aprender programación desde C/C++ y/o aquellos lenguajes que permiten una interacción más directa con las entrañas del S.O., preferiremos C# antes que VB, por su sintaxis más que nada.
« Última modificación: 23 Noviembre 2014, 07:08 am por zShackra » En línea

kub0x
Enlightenment Seeker
Moderador
***
Desconectado Desconectado

Mensajes: 1.486


S3C M4NI4C


Ver Perfil
Re: Que es mejor o recomiendan más Vb o C#?
« Respuesta #8 en: 18 Noviembre 2014, 23:08 pm »

Bajo mi punto de vista, creo que el odio viene por su sintaxis y sus usuarios, el/los cual(es) es/son, como se ha dicho anteriormente, un lenguaje con sintaxis para iniciados y por ahí derecho que, quienes lo usan, generalmente son novatos que se creen mecenas, los llamados Script Kiddies o Lamers de la red... adolescentes que en principio lo "aprenden" porque es lo primero que ven en Google al buscar cosas del tipo "komo programar un virus?" o "cmo acer un troyano?", etc... Esto sin contar la cantidad de gente que defiende VB sin argumentos, es decir argumentan cosas del tipo "me parece bonito y sencillo de aprender", en vez de basarse en argumentos robustos propios del lenguaje.

Completamente de acuerdo, sin embargo, para opinar de esta manera tienes que tener experiencia y crítica, un novato siempre va a preferir lo fácil. Aun así tengo compañeros que desarrollan productos muy profesionales en VB .NET. Siendo honestos, VB enseña una sintáxis sacada de la chistera, que nada tiene que ver con la mayoría de los lenguajes comunes. Dejo la lista de lenguajes basados en BASIC: http://en.wikipedia.org/wiki/Generational_list_of_programming_languages#BASIC_based

Además, uno de los puntos más esenciales en el odio a este (a mi criterio), es que cuando aprendes lenguajes del tipo C/C++, los cuales te ofrecen de manera nativa y sencilla el control total sobre una máquina, y te das cuenta de la utilidad y potencial de dichos lenguajes, empiezas a considerar a lenguajes como VB, lenguajes de juguete (sea o no .NET), ya que te das cuenta que lo único que te ofrecen diferente de C/C++ es un trabajo con la POO más directo... y es aquí donde C# lleva todas las de ganar, por el simple hecho de su sintaxis, la cual es en extremo atractiva al ser tan semejante a C++ (sí, ya sé que Java fue influenciado por C++ y luego C# por Java y C++), pero a lo que voy, es que al existir en .NET un lenguaje como C# que te ofrece lo mismo que VB .NET, te preguntas ¿para qué usar/aprender un lenguaje que en principio no me atrae y siento algo de repudio hacia él*, cuando existe C#, el cual se asemeja mucho más a C++ y me permite un uso idéntico de la plataforma .NET + código inseguro + POO?

Estamos empezando a comparar .NET con otros lenguajes y eso nos desvía del tema. C++ le da mil vueltas, la WinAPI te da la libertad y el control que siempre quisiste tener sobre la memoria, excepciones, event loops, hooking, compilado no interpretado, herencia multiple (en .NET es ir poniendo interfaces a lo loco -.-) . Para aprender dignamente necesitas de un buen inglés además de mucha lectura, documentación, esfuerzo y programación. Suelo crear wrappers en algunos proyectos para usar DLLs nativas desde .NET, no veas el buen equipo que hacen.

En fin, todo esto un programador novel no lo sabe, y por lo tanto escogerá aquello que le es más fácil o intuitivo, pero que no digan que VB es más lento que C#, pues esa es otra carrera.

Saludos.
En línea

Viejos siempre viejos,
Ellos tienen el poder,
Y la juventud,
¡En el ataúd! Criaturas Al poder.

Visita mi perfil en ResearchGate

ivancea96


Desconectado Desconectado

Mensajes: 3.412


ASMático


Ver Perfil WWW
Re: Que es mejor o recomiendan más Vb o C#?
« Respuesta #9 en: 18 Noviembre 2014, 23:34 pm »

Yo opto por C#, más que nada porque sigue la sintaxis de C, C++, PHP, Java...

Mientras escribía cambié totalmente de opinión. Iba a poner cosas malas de VB, pero mirando unos códigos por encima, me volvió a gustar xD

Mi mayor problema al programar VB, es que al estar acostumbrado a C y compañía, la sintaxis de VB la tengo que repasar. Aunque bueno, otra razón por la que no lo uso mucho es porque no es 'objetivo'. "IF, THEN, END IF, etc etc". Prefiero ir al grano delimitando funciones y bloques con paréntesis, llaves o tabulaciones (en el caso de Python).
En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Adaptador ALFA USB 500 mW AWUS036H ¿Es la mejor?¿Me la recomiendan?
Materiales y equipos
JRD 5 7,895 Último mensaje 21 Abril 2008, 17:47 pm
por KARR
Cual de estos monitores es mejor? que me recomiendan
Hardware
coolfrog 7 7,650 Último mensaje 11 Febrero 2012, 12:23 pm
por d(-_-)b
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines