Me parece que eres tú quien no tiene claro lo que es un API. Deberías leer el artículo que me has enlazado y entonces entenderías lo que te estoy preguntando.
Si con Linux te estás refiriendo al kernel, están el API que te enseñé ayer y las llamadas al sistema. Si te estás refiriendo al sistema operativo, que podríamos llamar GNU/Linux, tienes distintas APIs según lo que quieras hacer.
Por ejemplo, si lo que quieres es programación gráfica a bajo nivel, tienes xlib (todo un estándar de facto en el mundo UNIX), si quieres un toolkit Gtk o Qt, si quieres integración con el escritorio, GNOME o KDE, y creo que estas últimas pueden parecerse a lo que tú estás pidiendo. No sé cómo se te puede ocurrir que no existan APIs, porque sin un API me explicarás cómo se puede construir una aplicación para el sistema operativo.
Estas bibliotecas son públicas y documentadas. La documentación puede estar mejor o peor, pero no es lo crucial que estamos discutiendo, como te muestro un poco más abajo.
Windows y MacOS tienen APIs públicas, claro, pero también, y ahí está el punto, tienen APIs secretas que utilizan Microsoft y Apple para sus programas, obteniendo una ventaja competitiva sobre los demás. Estas APIs ocultas (y sin documentación) son de lo que estamos hablando y es muy diferente de un API que no esté suficientemente documentada.
Las APIs secretas no es que cueste usarlas, es que no se puede, salvo prodigios de la ingeniería inversa, pero aún así es prácticamente imposible.
Por un lado, las apis existen y están documentadas. Como ejemplos puedes tomar el API de Gtk [gtk.org] y el API de Qt [trolltech.com].
Pero aunque no estuvieran bien documentadas, sigue siendo muy diferente que ser secretas.
API libre mal documentada: el autor tendrá dificultades para comprender el API, aunque, si tiene mucho interés podrá mirar el código fuente de la biblioteca para averiguar qué hace una función exactamente. Y si es alguien altruista y con tiempo, podrá completar la documentación con los datos que averigüe.
API privativa mal documentada: parecido, pero no hay posibilidad de mirar qué hace, así que el sufrido progrador tendrá que averiguarlo a base de prueba y error, o viendo programas de ejemplo.
API privativa secreta: el programador se jode y no puede usarla. Además, está en desventaja competitiva frente al propietario del sistema operativo.
Desde el punto de vista pragmático está claro que no hay color. Ahora un punto de vista moral: a un lado tenemos que no ha habido un voluntario que realice esa documentación, y al otro tenemos que la empresa no quiere que usemos el API buena para sacarnos ventaja con sus programas propios. Creo que tampoco hay color.
Re:APIs no documentadas
(Puntos:2)( http://press.asqueados.net/ | Última bitácora: Jueves, 17 Abril de 2014, 09:50h )
Si con Linux te estás refiriendo al kernel, están el API que te enseñé ayer y las llamadas al sistema. Si te estás refiriendo al sistema operativo, que podríamos llamar GNU/Linux, tienes distintas APIs según lo que quieras hacer.
Por ejemplo, si lo que quieres es programación gráfica a bajo nivel, tienes xlib (todo un estándar de facto en el mundo UNIX), si quieres un toolkit Gtk o Qt, si quieres integración con el escritorio, GNOME o KDE, y creo que estas últimas pueden parecerse a lo que tú estás pidiendo. No sé cómo se te puede ocurrir que no existan APIs, porque sin un API me explicarás cómo se puede construir una aplicación para el sistema operativo.
Estas bibliotecas son públicas y documentadas. La documentación puede estar mejor o peor, pero no es lo crucial que estamos discutiendo, como te muestro un poco más abajo.
Windows y MacOS tienen APIs públicas, claro, pero también, y ahí está el punto, tienen APIs secretas que utilizan Microsoft y Apple para sus programas, obteniendo una ventaja competitiva sobre los demás. Estas APIs ocultas (y sin documentación) son de lo que estamos hablando y es muy diferente de un API que no esté suficientemente documentada.
Envíos descartados por Mu [barrapunto.com]
Re:APIs no documentadas
(Puntos:2)( http://press.asqueados.net/ | Última bitácora: Jueves, 17 Abril de 2014, 09:50h )
Por un lado, las apis existen y están documentadas. Como ejemplos puedes tomar el API de Gtk [gtk.org] y el API de Qt [trolltech.com].
Pero aunque no estuvieran bien documentadas, sigue siendo muy diferente que ser secretas.
Desde el punto de vista pragmático está claro que no hay color. Ahora un punto de vista moral: a un lado tenemos que no ha habido un voluntario que realice esa documentación, y al otro tenemos que la empresa no quiere que usemos el API buena para sacarnos ventaja con sus programas propios. Creo que tampoco hay color.
Envíos descartados por Mu [barrapunto.com]