2008-10-15 24 views
6

Soy un programador aficionado con un par de sitios web móviles basados ​​en bases de datos y finalmente he decidido cambiar de ASP clásico a .NET. Pero después de un par de días leyendo, no pude decidir qué camino tomar. ¿Debo aprender C# o continuar vb en .net?Desde ASP clásico a .net C# o vb?

+0

Es posible que también quiera pensar "¿debo aprender asp.net o MVC regularmente?"; MVC está (en muchos sentidos) más cerca de ASP de estilo antiguo y está ganando mucho impulso. El hecho de que html tiende a ser más limpio podría ayudar con dispositivos móviles, pero ASP.NET "regular" podría ser mejor para apuntar a varios dispositivos de una sola vez ... –

Respuesta

1

C#: al principio será más difícil, pero pagará en el futuro. mi opinión ...

10

Para la programación de aficionados (es decir, un esfuerzo no comercial solo trabajará en usted), realmente no hace una gran diferencia.

Ve con lo que te sientas más cómodo con.

6

C# porque si lo sabes, tus oportunidades de trabajo serán más grandes y en mi opinión es un lenguaje mucho más elegante.

Tiene una comunidad más grande y es probable que encuentre más tutoriales escritos en C#. Si elige cualquier idioma, hay online converters disponibles para ayudarlo.

Le resultará fácil leer el código Java posteriormente. Probablemente también se sienta como en casa con la sintaxis c o C++.

Ah, y si nunca ha estado expuesto a formularios web y proviene de un clásico fondo de asp, ¿por qué no probar asp.net mvc? Está más cerca de "las viejas formas" en algunos respetos.

6

Me enfrenté a este hace unos 3 años en mi trabajo. Si miras en profundidad la sintaxis de los idiomas, verás que están muy cerca.

Fui con la forma C#, ya que parecía más utilizada, solicité, había más ejemplos disponibles y era multiplataforma (la última vez que busqué la versión de mono vb.net).

3

Encontré VB.Net realmente difícil de recoger después de trabajar en VB desde 1991 - los idiomas son lo suficientemente similares como para sentirme familiar pero lo suficientemente diferentes como para hacerme tropezar constantemente. Para hacerlo aún más confuso, trabajo mucho con Excel/VBA, que todavía es VB6.

Así que prefiero C# cuando estoy trabajando en .Net: nunca fui un programador de C++ o Java, así que no tropecé con las diferencias allí.

En el lado negativo, C# estar entre mayúsculas y minúsculas es tedioso después de años de VB autocorrección ...

1

Mi sensación es que C# tiene un futuro más brillante que VB, y le dará una experiencia mucho más rica en el largo plazo. La sintaxis derivada C también está siendo utilizada por muchos otros lenguajes modernos y también los hará más fáciles de aprender.

+0

parece que vio el futuro. – ajdrausal

1

Puede comenzar con C# directamente. No hay muchas cosas comunes en VB.NET y VB, a pesar del aspecto y la sensación.

Si comienza con VB.NET, tiene que aprender el marco de todos modos.

1

Mi sugerencia es ir con C#. Era un programador de VB, pero siempre me sentí excluido de la comunidad de programación. C# usa la terminología que la industria usa ampliamente, mientras que VB.NET usa su propia terminología.

1

Sólo para echo un par de personas aquí:

  • "Classic" ASP y VB.net son diferentes bestias por completo. Algunas de las sintaxis son similares, pero es un lenguaje totalmente diferente una vez que empiezas a profundizar.

  • Es posible que te confundas si te quedas con un lenguaje parecido a VB. Hay muchas diferencias en ASP.NET que consideraría comenzar de cero por completo. Comprar un libro de C# y hacer un fin de semana podría ser la mejor manera de limpiar las tuberías de aprendizaje.

  • C# es mucho, mucho más anal sobre casos y sintaxis. VB.Net también se compara con VBS (ASP), por lo que desea asegurarse de que sea lo que sea que vaya, tiene un buen IDE para cuidar su espalda y mantenerlo en línea mientras aprende.

  • C# parece mucho más sofisticado en un currículum vítae/currículum en comparación con Visual Basic para un gerente de recursos humanos. Uno es filoso y cortante y caliente. El otro es Básico. En general, hay muchos más trabajos para la sintaxis C#/Java que los VB de todos modos.

  • Pero al final deberías ir donde estés más feliz. Tiene opción libre completa así que diviértase.

2

C# por estas razones:

  1. no tengo ninguna prueba concluyente ni nada, pero parece que los programadores de C# tienen un tiempo más fácil la lectura/codificación de código de vb.net que el otro camino alrededor.
  2. C# parece ser más popular en el mercado laboral (sé que eres un aficionado, pero aún así ...)
  3. C# está sintácticamente más cerca de c/C++/java. Si alguna vez quieres entrar en ese otro idioma, C# te pondrá en una ligera ventaja (a excepción de Java, en el que tendrías una ventaja bastante buena ya que los idiomas son muy similares ... solo necesitarías sobre todo aprender un nuevo marco.)
2

Aunque VB.Net es viable, la tendencia es hacia C#. La mayoría de los artículos escritos por el nivel superior de los desarrolladores hoy están en C# y puede ahorrarte tiempo para simplemente desarrollar en C# en lugar de tener que traducir tu "proceso de pensamiento sintáctico" de vuelta a VB.

Encontrará C# más desafiante desde la perspectiva de que la sintaxis distingue entre mayúsculas y minúsculas, y puede que confíe en intellisense más de lo que cabría esperar.

2

También comencé en asp classic y me pareció mucho más fácil elegir VB.NET que C#. Claro, la mayoría de las muestras están en C#, pero si comprende la sintaxis de C#, no es tan difícil de entender y aplicar. Debería poder leer ambos bastante cómodamente de cualquier manera.

No estoy codificando (ni quiero) aplicaciones web grandes y complejas. Encuentro que VB tiene muchas cosas pequeñas que me ayudan a concentrarme en la lógica en lugar de cosas "tontas" como la sensibilidad de mayúsculas y minúsculas.

Creo que tiene mucho que ver con tu forma de pensar. Me resulta 100 veces más fácil leer VB que C#, pero otras personas son diferentes. Es por eso que no hay un solo lenguaje que sea el mejor para todos.

0

Los dos idiomas son muy similares, justo lo que yo llamo diferencias sintácticas de azúcar. Elija con lo que esté más feliz. Yo también me haría eco de otros al decir que si no te sientes con fuerza deberías ir C# ya que este es un lenguaje más prolífico.

Un par de otras sugerencias mientras está aquí.

  • No más campos ocultos: ya no tiene que tener campos ocultos que contengan su estado, use la colección Session o la colección ViewState.
  • Mueva el acceso de su base de datos a un proyecto diferente, no hable con el archivo desde la página o desde el código de la página.
  • contemplar la utilización de algunos de mapeo ORM relación de objeto (LLBGenPro, CodeSmith, LINK para SQL, etc.)
  • Iniciar todas las excepciones mirar los eventos de aplicación en global.aspx.cs

Bienvenidos a un nuevo ¡mundo!