PDF de programación - Introducción al entorno de programación de Mac OS X

Imágen de pdf Introducción al entorno de programación de Mac OS X

Introducción al entorno de programación de Mac OS Xgráfica de visualizaciones

Actualizado el 28 de Julio del 2017 (Publicado el 14 de Enero del 2017)
2.306 visualizaciones desde el 14 de Enero del 2017
754,3 KB
15 paginas
Creado hace 14a (27/07/2009)
Introducción al
entorno de
programación
de Mac OS X



Introducción al entorno de programación de Mac OS X MacProgramadores


Acerca de este documento

Mac OS X es el nuevo sistema operativo de Apple. La X de 10 no debe
entenderse como una evolución de Mac OS 9, sino como un sistema operativo
totalmente distinto, diseñado desde cero, y con una base distinta.

La historia de Mac OS X, empezó con NeXTSTEP, un SO diseñado con fines
experimentales y de investigación, creado por Steve Jobs tras abandonar
Apple. Cuando se abrió el código fuente de este sistema operativo paso a
llamarse OpenStep, y después, tras comprarlo Apple como la base para su
nuevo sistema operativo, se le volvió a cambiar el nombre por Rhapsody, y
por último, cuando se terminó de retocar para comercializarlo paso a llamarse
Mac OS X.

En este reportaje vamos a estudiar las principales características que ofrece
este SO de cara al programador.

Nota legal

Este reportaje ha sido escrito por Fernando López Hernández para
MacProgramadores, y de acuerdo a los derechos que le concede la legislación
española e internacional el autor prohíbe la publicación de este documento en
cualquier otro servidor web, así como su venta, o difusión en cualquier otro
medio sin autorización previa.

Sin embargo el autor anima a todos los servidores web a colocar enlaces a
este documento. El autor también anima a cualquier persona interesada en
aprender a programar en Mac OS X a bajarse o imprimirse este reportaje.

Madrid, Enero del 2006
Para cualquier aclaración contacte con:
[email protected]



Pág 2



Introducción al entorno de programación de Mac OS X MacProgramadores


Tabla de contenido

API totalmente orientada a objeto ..............................................................4
Programando el API...................................................................................4
Cocoa....................................................................................................5
Carbon ..................................................................................................5
Java ......................................................................................................6
Objective-C++.......................................................................................7
Herramientas de programación...................................................................8
Xcode....................................................................................................9
Interface Builder ..................................................................................10
Desarrollo de aplicaciones ........................................................................11
REALBasic ...........................................................................................11
AppleScript ..........................................................................................12
Automator ...........................................................................................13
Darwin....................................................................................................15
Conclusión ..............................................................................................15



Pág 3



Introducción al entorno de programación de Mac OS X MacProgramadores

API totalmente orientada a objetos

A diferencia de las API de otros sistemas operativos tradicionales como
Windows, UNIX u OS/2, Mac OS X tiene una API totalmente orientada a
objetos, con un diseño realmente bueno, que vamos a ir explicando.

Como ha comentado varias veces Steve Jobs, una API totalmente orientada a
objetos es una apuesta arriesgada ya que exige a los programadores un
mayor nivel de formación, aunque tiene la ventaja de que el tiempo de
desarrollo se reduce mucho. Esto pudo ser un inconveniente a principios de
los 90, cuando se empezó a desarrollar NeXTSTEP, pero actualmente la
mayoría de las herramientas de programación que se están diseñando usan
metodologías de programación orientadas a objetos.

Una apreciación curiosa, como consecuencia de esta clara orientación a
objetos, y de la reducción del coste de desarrollo que implica, es que en el
mundo de Mac OS X la mayoría de las aplicaciones están siendo desarrolladas
por programadores individuales, a diferencia de los grandes equipos de
trabajo que suelen desarrollar las aplicaciones más conocidas en otros
entornos.

Programando el API

En Mac OS X, aunque da soporte a muchos lenguajes de programación, los
lenguajes más usados para trabajar directamente con su API son dos:
Objective-C y Java.

Objective-C es un superconjunto de C que amplía a éste para convertirle en
un lenguaje orientado a objetos. Es decir, tiene la misma raíz que tuvo C++,
pero incluye conceptos más avanzados que C++ como son los protocolos o
interfaces, y es mucho más dinámico que C++, en el sentido de que toda la
toma de decisiones se realiza en tiempo de ejecución, y se dejan pocas
decisiones para el compilador. Esto da al programador mucha más flexibilidad
en la creación de estructuras de datos dinámicas y de objetos polimórficos.

Aunque no formaba parte del NeXTSTEP original, Apple ha introducido un
segundo lenguaje mucho más popular: Java. En principio, la función de Java
no es la programación de aplicaciones en red como podría pensarse, ya que
Objective-C permite programar las mismas aplicaciones, sino la adopción de
estándares y la posibilidad de exportar e importar aplicaciones a otros
entornos fácilmente.

A diferencia de otros sistemas operativos Mac OS X trae instalado Java “de
fábrica” con lo cual siempre podemos ejecutar una aplicación Java sin
necesidad de instalar previamente la máquina virtual.


Pág 4



Introducción al entorno de programación de Mac OS X MacProgramadores

Cocoa

La API de programación de Mac OS X se llama Cocoa (chocolate, suponemos
que para complementar el café que tomaban los programadores de Java) y
como dijimos antes es una API totalmente orientada a objetos, es decir
formada básicamente por clases. A esta API se la considera un framework en
el sentido de que sus clases ayudan al programador a montar el esqueleto de
su aplicación.

Una característica importante de esta API es que es accesible tanto desde
Objetive-C como desde Java, lo cual es muy útil ya que reduce
considerablemente el tiempo de aprendizaje del framework. Hay que tener en
cuenta que en la actualidad las librerías de programación son tan grandes,
que su aprendizaje nos lleva mucho más tiempo que el aprendizaje del
lenguaje de programación en sí.

La librería Cocoa está dividida en dos kits:

Application Kit Este kit contiene todas las clases relacionadas con la interfaz
gráfica (ventanas, botones, cajas de texto, etc.). Pero el Application Kit es
mucho más que un conjunto de componentes de interfaz gráfica, también nos
da acceso a OpenGL, o tiene clases para gestión de documentos (mediante el
patrón vista-documento usado también en otros muchos frameworks de
programación), o por ejemplo, también trae clases que encapsulan fuentes,
colores, impresión, corrección ortográfica o drag and drop.

Foundation Kit Este kit contiene todas las demás clases no visuales como
son las clases de acceso a ficheros, de programación multihilo, de trabajo en
red, de utilidad, de gestión de cadenas, etc.


Carbon

Carbon es el nombre de la API que mantiene compatibilidad con la antigua
API de Mac. Para facilitar la migración al nuevo SO a las aplicaciones Mac
actuales, Apple ha puesto esta API en Mac OS X. Se trata de un API
programable basada en funciones C.

Los nuevos programadores que lleguen a Mac OS X no deben de estudiar esta
API, ya que con el tiempo Apple acabará dejando de darla soporte y luego
quitándola.

La estrategia es la misma que la que aplicó Microsoft cuando migro de Win16
a Win32, pero con la diferencia de que Win32 está ahí para quedarse, y
Carbon acabará siendo sustituida por Cocoa.


Pág 5



Introducción al entorno de programación de Mac OS X MacProgramadores

Java

Por un lado la máquina virtual de Apple dispone de todas las librerías
estándar del Java 2 SDK 1.4.2 (AWT, Swing, Servlets, JSP, J2EE…), y de
hecho está certificada por Sun como una máquina virtual 100% pure Java.
Esto permite ejecutar aplicaciones Java hechas en otros entornos en Mac OS
X, y viceversa.

Pero además desde Java podemos acceder a todas las clases de la API Cocoa
(véase Figura 1), lo cual permite realizar aplicaciones Java prácticamente tan
rápidas como sus correspondientes aplicaciones Objective-C.



Figura 1: Java puede acceder directamente a Cocoa, además de disponer de las librerías
gráficas estándar AWT y Swing.

De todos es conocida la lentitud que caracteriza a las aplicaciones gráficas
hechas con Swing. Pero este problema desaparece al utilizar Cocoa, la API
nativa de Mac OS X.

No sólo las aplicaciones Java sobre Cocoa se ejecutan muy rápidamente, sino
que además la implementación de la máquina virtual de Apple está mucho
más optimizada que en otros SO como Windows o Linux, esto es debido a
que la máquina virtual de Apple accede directamente a las capas de rederning
del SO también llamadas Core Services (p.e
  • Links de descarga
http://lwp-l.com/pdf91

Comentarios de: Introducción al entorno de programación de Mac OS X (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad