Hola gente.. Verán.. Ultimamente se me pintó la pregunta de: EN QUE ME CONVIENE PROGRAMAR???
La pregunta viene de lo siguiente: En la facultad me enseñan Java.. porque dicen que es el codigo mas "solicitado"... y Grosos amigos.. en realidad, conocidos de internet, me dicen: "Programa Todo en C".. y otros: "Dejá todo por Visual Basic.net que es lo mejor"
Y en realidad.. QUE ES LO QUE CONVIENE??
Que ventajas y desventajas tienen a la hora de hablar de ECONOMIA.. o sea.. Como profesional vendedor de software.. que conviene??? Porque???
Entiendo que para cada cosa, su cosa Entiendo que si necesito aplicacion para Celulares, no voy a programar en visual basic.net
Pero un panerama general.. que me pueden decir??? o que conviene para que cosa...
Es depende lo que hagas. Y de la industria a la que te dediques.
Java/.NET tienen la ventaja de que programarás a una mejor velocidad, comparandola con C/C++. Ya que eso influye mucho.
Por ejemplo, para software empresarial / software privado, la tendencia es usar Java y .NET, porque programarás a una velocidad más rápida, aunque claro, el rendimiento del programa no será el mejor, pero un sistema que puedes hacer en un dia en Java o .NET, te puede demorar mucho más que programandolo en C++ o C.
C++ y C, serían para los software con usuario final.
Si haces software empresarial, lo más seguro es que te pidan en Java o .NET, ya que es mucho más fácil de trabajar.
Pero, por ejemplo, si trabajas para un programa que va a ser usado por muchas personas, y en el que el rendimiento es importante, sea los casos de juegos comerciales, o programas comerciales, hay muy pocas chances de que se haga el proyecto usando Java o .NET.
Asi que depende en la industria que te metas. Y de lo que a ti te convenga...
Está claro que programar en C o C++ es un mejor desafio que programar en Java o en .NET, pero pierdes mucho tiempo, y tiempo del que no necesitas gastarlo inecesariamente, pudiendo ahorrarte horas/dias de trabajo, programandolo en Java o .NET, y solo lo van a usar 5 personas.
Concuerdo ... depende un poco del tipo de software que se quiera desarrollar, pero actualmente le dejo mis puntos tanto a JAVA como a la plataforma .NET ya que como he dicho alguna vez, estan enfocados a "lo próximo", la web Personalmente me encuentro actualmente enfocado a C# (estudiandolo a nivel academico y no solo en la web), el cual ya conocía y manejaba medianamente desde hace un tiempo, pero con el aumento de los CMS, base de datos en general y formularios/aplicaciones web's, creo que me es lo más conveniente
Con respecto a uno frente al otro ... el que sigue siendo totalmente portable es JAVA (más allá de mono), estando en win, mac, linux o dispositivos móviles, así que en eso tiene un "plus" y va siendo mi próxima meta
Saludos
« Última modificación: 10 Julio 2009, 14:59 por Novlucker »
En línea
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD http://twitter.com/novlucker"Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro."
Antes estaba J# que en realidad es más malo que Java (no confundir con JavaScripts). En tV al menos en España, salió en el telediario que el más demandado para empresas españolas es el Java.
Cada vez se usa muchas aplicaciones para Web, entre ellas el nuevo standar .NET. El que se usa demasiado también es el PHP. Como vez todo en Web, incluyendo ASP .net.
- Visual Basic .net está orientado a personas que se introduce por primera vez en el mundo de la programación, más fácil pero no es el más potente.
- Visual C# es el más moderno lenguaje de programación que sacó MicroSoft aprendiendo de los errores de los demás lenguajes como C/C++, Java, etc... Es potente y más recomendable que Visual Basic .net.
- Visual C++ es el más usado por ahora y desde hace años, es de más bajo nivel y está bueno para hacer driver cosa que no hace VB. net ni VC#.
Los productos de microsoft se consideran según empresas los más fáciles y rápidos, no por ellos significan el mejor.
En cuando a pasar el VB .net a Java no tiene nada que ver uno con el otro, sólo saber programar con los dos ya puedes pasar uno al otro programándolo tu. Java es similar al Visual C++ y Visual C# entre otros...
Saludo.
« Última modificación: 10 Julio 2009, 21:02 por Meta »
Tu has dicho: "más fácil pero no es el más potente."
A que nos referimos cuando hablamos de que un lenguaje es mas potente que otro? Mas funcionalidades? Mejor adaptado? mas protable? Mas Rapido? Todooo junto??
Cuales son los factores en que te puedes basar para decir: "C es mas potente que VB"?
la progamacion en C es mas eficaz en cuanto a la variedad de campos que puedes tratar... puedes hacer tanto controladores, como servicios, como programas de usuario... me atreveria a decir que para PC te conviene C/C++/C#
las ventajas de Java radican en la capacidad del lenguaje para ser usado en cualquier plataforma (Pc, MAC, Moviles, pda, Web... ). la estructuracion de objetos de Java es imitada por las nuevas versiones de .NET, pero aun asi, creo que java sige siendo mejor en este aspecto.
Pyros, hablemos sin tirar para Microsoft o Anti-Microsoft.. A mi no me interesa quien IMITA a quien.. si los 2 tienen las mismas cosas (no me interesa porque), queda ahí y punto..
Hablaste de Punteros, Estructuras complejas, Compilador "desente", ASM InLine..
Algun ejemplo (en castellano por favor) de Estructuras complejas que se puedan dar en Java y no en VB? Cual sería la gran diferencia entre los Compiladores? Y que me dicen de ASM Inline? Que significa, o que ventaja tiene?
Hablaste de Punteros, Estructuras complejas, Compilador "desente", ASM InLine.. Con todo ese detalle, tiene más control sobre el microprocesador, flujo de datos, más funiones complejas, incrustación ensamblador (ASM) o código máquina. AL trabajar más a bajo nivel los programas se ejecutan más rápido, eficiencia y eficacia aunque muy engorroso programarlos pero si rinde es lo mejor.
Algun ejemplo (en castellano por favor) de Estructuras complejas que se puedan dar en Java y no en VB? Java está orientado al mundo de las web o Internet, mientras Visual Basic a escritorio. Puedes usar Visual Basic .net y Visual C# vía Web con ASP .net.
Cual sería la gran diferencia entre los Compiladores?
Se refiere el IDE, los de Microsoft son muy cómodos y amigables que muchos otros, no quiere decir el mejor.
Y que me dicen de ASM Inline? Que significa, o que ventaja tiene?
Ensamblador. Código máquina, unos y ceros. Ejemplo:
Código:
; Implementar una tabla de la verdad mediante el manejo de tablas grabadas en ROM. ; Por ejemplo, la tabla será de 3 entradas y 6 salidas tal como la siguiente: ; ; C B A | S5 S4 S3 S2 S1 S0 ; -----------|--------------------------- ; 0 0 0 | 0 0 1 0 1 0; (Configuración 0). ; 0 0 1 | 0 0 1 0 0 1; (Configuración 1). ; 0 1 0 | 1 0 0 0 1 1; (Configuración 2). ; 0 1 1 | 0 0 1 1 1 1; (Configuración 3). ; 1 0 0 | 1 0 0 0 0 0; (Configuración 4). ; 1 0 1 | 0 0 0 1 1 1; (Configuración 5). ; 1 1 0 | 0 1 0 1 1 1; (Configuración 6). ; 1 1 1 | 1 1 1 1 1 1; (Configuración 7). ; ; Las entradas C, B, A se conectarán a las líneas del puerto A: RA2 (C), RA1 (B) y RA0 (A). ; Las salidas se obtienen en el puerto B: ; RB5 (S5), RB4 (S4), RB3 (S3), RB2 (S2), RB1 (S1) y RB0 (S0). ; ; ZONA DE DATOS **********************************************************************
; ZONA DE CÓDIGOS ********************************************************************
ORG 0; El programa comienza en la dirección 0. Inicio bsfSTATUS,RP0; Acceso al Banco 1. clrfTRISB; Las líneas del Puerto B se configuran como salida. movlwb'00011111'; Las 5 líneas del Puerto A se configuran como entrada. movwfTRISA bcfSTATUS,RP0; Acceso al Banco 0. Principal movfPORTA,W; Lee el valor de las variables de entrada. andlwb'00000111'; Se queda con los tres bits de entrada. addwfPCL,F; Salta a la configuración adecuada. Tabla gotoConfiguracion0 gotoConfiguracion1 gotoConfiguracion2 gotoConfiguracion3 gotoConfiguracion4 gotoConfiguracion5 gotoConfiguracion6 gotoConfiguracion7 Configuracion0 movlw b'00001010'; (Configuración 0). gotoActivaSalida Configuracion1 movlw b'00001001'; (Configuración 1). gotoActivaSalida Configuracion2 movlw b'00100011'; (Configuración 2). gotoActivaSalida Configuracion3 movlw b'00001111'; (Configuración 3). gotoActivaSalida Configuracion4 movlw b'00100000'; (Configuración 4). gotoActivaSalida Configuracion5 movlw b'00000111'; (Configuración 5). gotoActivaSalida Configuracion6 movlw b'00010111'; (Configuración 6). gotoActivaSalida Configuracion7 movlw b'00111111'; (Configuración 7). ActivaSalida movwfPORTB; Visualiza por el puerto de salida. goto Principal
END
Nota, este ASM es para microcontroladores, cada micro con su ensamblador, incluido los mciroprocesdores nuevos i7 difíciles de programar.
Lo que conviene es saber moverte sin problemas entre varios lenguajes,paradigmas,IDEs... o qué ? Te dicen que Java es muy solicitado y te enseñan ese,amigos te dicen que uses otros... pues cuando trabajes te pedirán programar bajo diferentes lenguajes,paradigmas,con tal o cual ide,para tal o cual os o con tal o cual librería para gráficos y deberás ser un trabajador versátil para saber moverte y en caso necesario aprender algo en un momento puntual....
SI, en la facultad aprendí ASEMBLER.. ese codigo es algo así no? o sea.. ¿Eso esta hecho con C, y con VB no se puede hacer? Efectivamente entonces, drivers, controladores y esas cosas a bajo nivel con VB entonces no se puede o es mas dificil :/
Algunas otras buenas diferencias para hablar.. para tener en cuenta?
Agrego: Buen punto lo de ser un programador versatil.. Es obvio que en programacion, TODOS LOS DIAS aprendes algo nuevo.. Y todo depende de QUE TENGAS QUE HACER... es por eso que hablé desde un comienzo, de APLICACIONES DE ESCRITORIO (no web) para Usuario final y para empresas..