Evidentemente cada lenguaje tendrá sus ventajas pero si quieres aprender sólo uno o dos yo te recomiendo estos.
Lo de la lentitud de Java no es tanta y es previsible que baje. Suele necesitar más recursos (más memoria) pero si vas a desarrollar cosas de servidor pues es una decisión muy acertada: tú o la empresa para la que trabajas pone esa memoria RAM (e incluso una máquina más potente y los ahorros en mantenimiento, recursos humanos para desarrollar, etc... seguro que compensan esos costes). Si quieres hacer cosas en cliente pues tienes los applets (vale, también puedes hacer algo JavaScript pero estás limitado...).
Quizá no es muy recomendable para grandes aplicaciones personales que se instalen y puedan acceder a todos los recursos de una máquina (no como los applets, que no se instalan y tienen límites por seguridad)... En este caso, es el que instala el que necesitaría más RAM y en este caso, puede que no se compensen los ahorros en el desarrollo con los gastos de hardware extra. Por eso en estos casos opino que C/C++ puede ser la mejor opción. También el C/C++ tiene mucho en qué apoyarse: multitud de desarrolladores por el mundo, multitud de software (libre y no libre) desarrollado, muchas herramientas...
En cuanto a la libertad de Java, es cierto que la palabra como tal es una marca registrada de Sun (creo que no hay más problemas que ese) pero siempre puedes decir J*va (como hacen algunos desarrolladores) o algo parecido para que esa gente y sus abogados no te busquen las cosquillas.
Existen numeros proyectos de software libre desarrollados en Java y para Java.
En cuanto a las ventajas en sí de Java supongo que ya conocerás muchas: portabilidad (diversos chips: Mac, Pentium, Sparc..., diversos Sistemas Operativos: Linux, Windows, Solaris... incluso diversos dispositivos: PCs, PDAs, teléfonos móviles...), reusabilidad, ausencia de factores de riesgo de fallos como punteros (alguno puede considerarlo desventaja porque también los punteros permiten muchas posibilidades), ...
También en el campo profesional es de lo que más se busca (y como no se cubre la demanda suele estar bien pagado).
Lo que sí te diría es que pasases del Pascal (No digo que sea malo pero hay muchas razones para descartarlo...).
Tanto Java como C/C++ están muy metidos con arquitecturas de componentes (CORBA, por ejemplo) que es una filosofía de desarrollo relativamente reciente y bastante interesante. En el caso de Java existe una arquitectura de componentes propia (JavaBeans, EJBs) y luego Microsoft tiene la suya (empezó siendo OLE, luego COM, luego DCOM y COM+ y ahora al parecer lo llaman .NET)
-- -- Uno de mis lemas: "1º. NO A LOS RECURSOS MAL APROVECHADOS"
Yo recomendaría Java y C/C++
(Puntos:2, Interesante)( http://labitacora.net/ | Última bitácora: Jueves, 20 Mayo de 2004, 19:01h )
Lo de la lentitud de Java no es tanta y es previsible que baje. Suele necesitar más recursos (más memoria) pero si vas a desarrollar cosas de servidor pues es una decisión muy acertada: tú o la empresa para la que trabajas pone esa memoria RAM (e incluso una máquina más potente y los ahorros en mantenimiento, recursos humanos para desarrollar, etc... seguro que compensan esos costes). Si quieres hacer cosas en cliente pues tienes los applets (vale, también puedes hacer algo JavaScript pero estás limitado...).
Quizá no es muy recomendable para grandes aplicaciones personales que se instalen y puedan acceder a todos los recursos de una máquina (no como los applets, que no se instalan y tienen límites por seguridad)... En este caso, es el que instala el que necesitaría más RAM y en este caso, puede que no se compensen los ahorros en el desarrollo con los gastos de hardware extra. Por eso en estos casos opino que C/C++ puede ser la mejor opción. También el C/C++ tiene mucho en qué apoyarse: multitud de desarrolladores por el mundo, multitud de software (libre y no libre) desarrollado, muchas herramientas...
En cuanto a la libertad de Java, es cierto que la palabra como tal es una marca registrada de Sun (creo que no hay más problemas que ese) pero siempre puedes decir J*va (como hacen algunos desarrolladores) o algo parecido para que esa gente y sus abogados no te busquen las cosquillas.
Existen numeros proyectos de software libre desarrollados en Java y para Java.
En cuanto a las ventajas en sí de Java supongo que ya conocerás muchas: portabilidad (diversos chips: Mac, Pentium, Sparc..., diversos Sistemas Operativos: Linux, Windows, Solaris... incluso diversos dispositivos: PCs, PDAs, teléfonos móviles...), reusabilidad, ausencia de factores de riesgo de fallos como punteros (alguno puede considerarlo desventaja porque también los punteros permiten muchas posibilidades), ...
También en el campo profesional es de lo que más se busca (y como no se cubre la demanda suele estar bien pagado).
Lo que sí te diría es que pasases del Pascal (No digo que sea malo pero hay muchas razones para descartarlo...).
Tanto Java como C/C++ están muy metidos con arquitecturas de componentes (CORBA, por ejemplo) que es una filosofía de desarrollo relativamente reciente y bastante interesante. En el caso de Java existe una arquitectura de componentes propia (JavaBeans, EJBs) y luego Microsoft tiene la suya (empezó siendo OLE, luego COM, luego DCOM y COM+ y ahora al parecer lo llaman .NET)
-- Uno de mis lemas: "1º. NO A LOS RECURSOS MAL APROVECHADOS"