[C con Clase] es posible programar para windows y unix??

Jose Alvaro Dominguez ilgrim en gmail.com
Mar Nov 18 20:15:02 CET 2008


> java es multiplataforma.
> C/C++ no.

Java TIENE FAMA de multiplataforma. La realidad es que no es asi. Java
solo atiende a UNA unica plataforma, la correspondiente a su maquina
virtual, y son estas(las VM), las que cuentan implementaciones para
diversos sistemas. Pero aun asi, para obtener portabilidad, tienes que
sacrificar optimizaciones, y el resultado es el que todos conocemos:
Soft bastante exigente en recursos, con una velocidad de trabajo muy
por debajo de lo deseable y un runtime sobrecargado de clases
deprecated con unas proporciones apocalipticas.

 El ejemplo mas claro de lo limitado que es la "multiplataforma" de
java lo tienes en j2me. Es imposible desarrollar una aplicacion en
j2me y garantizar que funcione en todos los dispositivos del mercado.
Sea la culpa de quien sea(normalmente del fullero del fabricante),
sencillamente no se puede.  Si no rula el acceso a camara, casca el
establecimiento de conexiones,si  no, es la manipulacion de audio lo
que revienta.

C/C++ puede ser perfectamente multiplataforma siempre que no necesites
cosas especificas de un sistema operativo o arquitectura en
particular. Y aun dandose el caso, siempre se puede recurrir a
librerias que se encuentren presentes en todos los sistemas a los que
deseamos dirigir nuestro desarrollo.

En conclusion, que depende hasta que nivel quieres adentrarte en el
sistema operativo, puedes necesitar o no trastear con cosillas fuera
del ansi, pero para un desarrollo "normal" en el que no se precise de
una intervencion a muy bajo nivel ni acceder a caracteristicas del
sistema(principalmente por las protecciones y restricciones del propio
sistema, en teoria, se podria cualquier cosa desde C/C++), C/C++ se
basta y se sobra siempre que el sistema destinatario cuente con algun
compilador.

Si se quiere, se puede hacer soft estrictamente ANSI C. Podra doler
mas o menos la cabeza, pero se puede hacer. Y antes de que el hilo se
convierta en un C/C++ vs Java, me gustaria aņadir que tanto unos como
el otro tienen su utilidad, y que al final, se va a resumir a las
necesidades y/o preferencias del programador.

Un saludo


Más información sobre la lista de distribución Cconclase