Animamos a otros sitios web a poner enlaces a nuestros tutoriales, pero por favor no hagan copias de ellos en otros servidores, ya que si actualizamos los tutoriales seguirá habiendo copias antiguas en circulación durante mucho tiempo. Esto va en perjuicio de los lectores que cojan la copia antigua. Lo que sí recomendamos es poner enlaces directos los permalink de esta página.
Mac OS X 10.6 y iOS 4 han introducido en el lenguaje los bloques (blocks), una construcción sintáctica que simplifica la programación de tareas. Su implementación es de código abierto, forma parte de GCC y Apple la ha enviado al comité de estandarización de ISO. Actualmente el compilador de GCC de Apple permite utilizar bloques tanto en lenguaje C como en el lenguaje C++ y Objective-C. En este tutorial se explica qué son los bloques, qué ventajas ofrecen y cómo se programan.
Este tutorial asume que el lector conoce el lenguaje C, y los conceptos de lenguaje y de programación que se explican en el tutorial Compilar y depurar aplicaciones con las herramientas de programación de GNU.
| Download | [enlace alternativo] | [permalink] |
En este tutorial pretendemos mostrar el manejo de las herramientas de programación que GNU ha puesto a disposición de los usuarios en multitud de sistemas, y que Apple ha elegido como base para sus herramientas de programación. Estas herramientas incluyen los conocidos comandos gcc y gdb. Sin embargo, las herramientas de programación de GNU son mucho más completas, e incluyen multitud de comandos que vamos a ir comentando a lo largo de este tutorial.
Al acabar este tutorial el lector debería de haber aprendido a compilar y depurar sus aplicaciones, crear librerías, medir el rendimiento, e incluso a combinar aplicaciones escritas en distintos lenguajes.
| Download | [enlace alternativo] | [permalink] |
Este tutorial pretende recoger toda la información necesaria para poder escribir ficheros Makefile usados para controlar la construcción de un programa con el comando make.
El documento empieza explicando las opciones más básicas para ir profundizando en ellas poco a poco. En los apartados 6 y 7 se acaban dando una serie de reglas prácticas que simplifican mucho el desarrollo de estos ficheros, con lo que aunque el lector no desee leer todo el documento le recomendamos que por lo sí que consulte estos apartados.
| Download | [enlace alternativo] | [permalink] |
El uso de un gestor de versiones se vuelve imprescindible para evitar la tediosa tarea de intercambiar entre los programadores los ficheros de código fuente que componen un proyecto según estos ficheros se van actualizando. Este documento intenta recopilar los conocimientos necesarios para usar y administrar los gestores de versiones CVS y Subversion.
La primera parte de este documento recopila los elementos generales que incorporan los gestores de versiones. La segunda y tercera parte del documento se centra en estudiar CVS y Subversion, respectivamente.
| Download | [enlace alternativo] | [permalink] |
En este tutorial pretendemos enseñar el manejo de Bash, el Bourne Again Shell de GNU. Este shell es el que proporcionan por defecto muchos sistemas UNIX entre ellos Mac OS X o Linux.
Los ejemplos se explicarán sobre Mac OS X, pero debido a la interoperatividad que caracteriza a Bash, estos ejemplos deberían ser exactamente igual de útiles en otros sistemas UNIX. Cuando existan diferencias las indicaremos para que usuarios de otros sistemas puedan seguir correctamente este documento.
Al acabar este tutorial el lector debería de haber aprendido a usar las principales teclas rápidas, personalizar mucho más su terminal para hacerlo más manejable, y modificar o crear los scripts que configuran su sistema.
| Download | [enlace alternativo] | [permalink] |
GNU ha definido un mecanismo estándar para construir paquetes software que puedan compilar en distintas plataformas. Una vez construido el paquete de acuerdo a las reglas que vamos a ver, podemos usar los conocidos comandos configure y make para compilar e instalar el software. Este documento pretende definir cuáles son estas recomendaciones.
Aunque los ejemplos se realizan sobre Mac OS X, la interoperatividad de este mecanismo de empaquetamiento debería permitir aplicar estas mismas reglas en otros sistemas con facilidad.
Al acabar este documento el lector deberá ser capaz de crear sus propios paquetes GNU de forma que se configuren, compilen, e instalen correctamente en distintas plataformas.
| Download | [enlace alternativo] | [permalink] |
Este tutorial nos enseña a programar en ensamblador del PowerPC de Mac OS X.
El tutorial empieza enseñando a manejar la herramienta de compilación que se distribuye con las herramientas de programación de Mac OS X y rápidamente se mete a estudiar la sistaxis del lenguaje con ejemplo aclaratorios.
| Download | [enlace alternativo] | [permalink] |
Este tutorial pretende recopilar los conceptos y tecnologías que se usan para conseguir crear sistemas informáticos seguros.
Muchos tutoriales de seguridad se centran en el uso de las herramientas administrativas. En este tutorial, aunque se evalúan bastantes herramientas desde el punto de vista administrativo, pretendemos llevar este estudio hasta el punto de vista del programador de estas herramientas. Con este fin hemos elegido las librerías criptográficas de Java, ya que creemos que son unas librerías completas, homogéneas, y que abarcan todos los aspectos de la criptografía moderna. Aunque el estudio se hace sobre Mac OS X, la interoperatividad del lenguaje Java permite llevar estos conceptos a otros sistemas operativos sin problemas.
| Download | [enlace alternativo] | [permalink] |
Este documento es un tutorial de JNI (Java Native Interface), el mecanismo que permite ejecutar funciones C y C++ desde Java.
El tutorial supone que el lector conoce tanto los lenguajes Java como C, no es necesario saber C++, aunque el saber siempre ayuda. También supone que el lector esta familiarizado con el uso de herramientas de programación como gcc, java o javac
El tutorial trata cómo realizar estas operaciones en varios sistemas operativos aunque se centra sobre todo en dos: Mac OS X y Win32.
| Download | [enlace alternativo] | [permalink] |