Re: [escepticos] Lenguajes de programación (era: No pienses en un elefante)

Tei oscar.vives en gmail.com
Jue Ago 23 09:16:05 WEST 2012


Me alegro mucho de verte, Borja.

2012/8/23 Borja Marcos <BORJAMAR at sarenet.es>:
>
> On 23 Aug 2012, at 09:48, Tei <oscar.vives at gmail.com> wrote:
>
>> La gente programa videojuegos en C/C++ porque:
>>
>> - Programar videojuegos es programacion de sistemas. C esta
>> optimizado para hacer programacion de sistemas, porque es un lenguaje
>> de "escribir sistemas operativos".  C++ aporta la orientacion a
>> objetos que permite programar mejor.
>
> Y un videojuego no es un sistema operativo.
>

Tienen cosas en comun.

>> - Porque las librerias estan pensadas para C/C++ y tienen bindings
>> para C/C++ y estan testeadas para C/C++.  Si quieres otro lenguaje, te
>> pelearas con los bindings, bugs que nadie ha visto antes, y el diseño
>> de la libreria no sera completamente adecuado para tu lenguaje.
>
> Que sí, pero por motivos históricos y malas decisiones.

Tendrian todo el sentido en su momento y contexto, y no estoy seguro
de que si no se volvieran a repetir las mismas circunstancias si
hariamos algo distinto.



>> Los juegos web suelen estar en PHP,   los flash estan en una variante
>> de javascript con tipado fuerte, "actionscript". La gran mayoria de
>> los juegos estan en C++, quizas esto cambie en el futuro, pero un
>> desarrollador de videojuegos siempre estara mejor en un
>> lenguaje/entorno como de programacion de sistemas, porque los juegos
>> son programas que crean su propio gui, crean su propio scheduler de
>> procesos, etc.
>
> Eso no quiere decir que tengas que usar C. Crearte tu esquema para planificar tareas en absoluto implica que estés haciendo un sistema operativo, por la sencilla razón de que no estás accediendo directamente a registros de E/S, tablas de memoria virtual, etc, operaciones en las que, como explico en otro mensaje, sí necesitas tener la certeza de una correspondencia biunívoca entre los datos que maneja tu programa y su representación en la memoria o los registros del procesador.

Los juegos son los primeros programas que venian equipados con drivers
especiales para acceder a la memoria en modo flat, cuando el resto
pedia memoria al sistema operativo.

Muchos juegos no piden continuamente memoria al sistema operativo,
porque esto seria lento. Piden un bloque grande de memoria, y tienen
su propio gestor de memoria, el cual esta escrito para ser eficiente
en velocidad. Seguramente esperan a cambiar de nivel o similar para
hacer una desfragmentacion de este bloque de memoria.

Casi todos los juegos del mundo crean su propio interfaz de usuario desde cero.

Muchos juegos tienen un diseño de disco virtual, donde los ficheros
estan dentro de ficheros grandes de datos.  Un  europe.dat en un juego
suele ser una "imagen de disco" dentro de la cual hay un monton de
ficheros.  Los juegos virtualizan un disco usando uno o varios
columenes de estos.  Estos volumenes tienen como versiones primitivas
(optimizadas para velocidad) de FAT.

Esto... creo que no es programacion de negocio, ..¿o si lo es?.


> Que se estén haciendo las cosas así "desde siempre" no implica en absoluto que se estén haciendo bien. De hecho, ¿por qué la informática es una puta mierda que funciona a golpes, y la profesión de informático es la que más percibe la sociedad como "Pepe Gotera y Otilio"?
>

Hay muchos tipos y muchos niveles de informatica, incluso hay gente
que efectivamente trabaja en las trincheras, tratando de mantener
windows equispes a flote, para que la gente pueda mas o menos
trabajar.  Los informaticos no nos hemos cuidado demasiado de nuestra
imagen, porque nosotros mismos no somos nuestra preocupacion
principal.  Somos gente de "producto" o de "servicio", y no nos
consideramos nosotros el producto.  Tratamos de dar el mejor servicio
y producto, en ocasiones a costa de nuestra propia salud, y eso
tambien a veces es a costa de que muchos informaticos sean facilmente
explotados.   Los ejecutivos, o en determinadas profesiones liberales,
 ellos son el producto que promocionan, por tanto todo lo que hacen es
en funcion de como promociona su carrera,   y cuando la empresa
quiebra por su propia mala gestion, despliegan un paracaidas de hilo
de oro.  Ellos tienen lo que han construido, que es tener una buena
imagen, a costa de vampirizar recursos.  Nosotros somos otro tipo de
profesionales, y somos gente que de verdad se preocupa por ayudar a
los demas.




-- 
--
ℱin del ℳensaje.


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