|
Es:NeoOffice y Aqua
From NeoWiki
Preguntas frecuentes acerca del proyecto y desarrollo de NeoOffice, o "Todo lo que necesitas saber sobre NeoOffice (y que deberÃas leer antes de hacer una petición en [Mac]Slash[Dot]"
"Aqua-ficación" e Integración con Mac OS X
¿Por qué NeoOffice no tiene una interfaz decididamente cercana a Aqua del Mac?
A partir de la versión 2.x Aqua Beta de NeoOffice, esta incluye una progresiva Aqua-ficación. Los usuarios exigentes de Mac (¿hay otros?) pueden notar que todavÃa faltan algunos detalles, pero no te preocupes; esta es la primera versión de NeoOffice que tiene estas caracterÃsticas en estilo Aqua, y los programadores están trabajando para hacer desaparecer las partes grises.
El objetivo es añadir con calma las caracterÃsticas de Aqua a NeoOffice de tal manera que sea cada vez más similar al ambiente Mac y lo más semejante a las aplicaciones nativas de ese sistema operativo.
Durante los últimos meses, en cada parche se ha podido ir mejorando el aspecto Aqua de nuestra aplicación.
¿Cuáles son los últimos pasos que se han realizado en el proceso de Aqua-ficación?
Para agosto de 2006:
- ventanas de diálogo para Abrir y Guardar (07/2006)
- nuevos iconos de documemtnos que corresponden mejor con el aspecto Aqua (07/2006)
- Las iconas deshabilitadas tienen el aspecto apropiado previsto para las aplicaciones de Mac OS X (antes eran gris oscuro) (07/2006)
- Numerosos widget Aqua (barras de desplazamiento, botones, barras indicadoras de avance, etc.) (04/2006-07/2006)
- Compatibilidad mejorada con el software de dictado vocal (10/2005)
- Capacidad de imprimir los ficheros EPS que se inserten (09/2005)
- Soporte mejorado para los teclados internacionales (09/2005)
- Menú con los elementos del servicio de inicio rápido ("Quickstart") (que se encuentra también en el menú NeoOffice) (06/2005)
- No aparece más la "ventana gris" cuando se cierra el último documento sino que el programa permanece abierto, precisamente como para los programas normales de Mac (05/2005)
- Integración con Spotlight para Mac OS X 10.4 "Tiger" a través de NeoLight (05/2005)
- Uso de los colores definidos en el panel de control Apariencia de las Preferencias del Sistema... (04/2005)
- Soporte para las lenguas indoarias (04/2005)
- Soporte para Eudora, Entourage y Mail como programas para enviar ficheros como archivos anexos (03/2005)
- AppleScript para instalar drag-and-drop los ficheros de ayuda para las lenguas que no sean inglés (03/2005)
- Drag & drop entre NeoOffice y otras aplicaciones (03/2005)
- Cuando se hace click sobre la tecla roja "cerrar" arriba a la izquierda en la ventana del último documento abierto de la aplicación, ésta no se cierra (03/2005)
- Las secciones About NeoOffice y Preferencias se encuentran en el menú NeoOffice (02/2005)
- Interfaz en 40 lenguas (12/2004)
- Nuevo icono del programa en estilo Aqua y nuevo splash screen (12/2004)
- Ficheros PDF optimizados y más pequeños (12/2004)
- Drag & drop del texto (12/2004)
- Soporte para la rueda del ratón (11/2004)
- Los menú nativos aparecen en la barra blanca arriba de la pantalla, como para todos los demás programas para Mac (antes aparecÃan arriba del documento activo) (11/2004)
- Aviso automático para cuando surgen nuevos parches o versiones (11/2004)
- Los parches están disponibles como paquetes estándar para el installer de Mac OS X (09/2004)
- Suporte para los formatos de ficheros de Macintosh en las ventanas de diálogo Abrir... y Guardar como... (09/2004)
Mantente alerta pues continuamente se añaden nuevas caracterÃsticas a través de los parches regulares del programa
TecnologÃas y utilidades
¿Qué tecnologÃas han sido usadas para la Aqua-ficación de NeoOffice?
Aqua (Mac OS X) es la interfaz gráfica desarrollada por Apple para OS X. Apple ofrece tres bases (frameworks) para el desarrollo de programas con la interfaz Aqua:
- Carbon (una especie de modo compatible con OS 9, usado también por Mozilla/Firefox)
- Cocoa (el nuevo framework que ha sido adaptado por NeXT para Mac OS X)
- Java (lenguaje multi-plataforma, incluye JFC/Swing para los elementos de la interfaz de usuario)
NeoOffice/C (el proyecto prototipo inicial) fue un intento de iniciar a usar Cocoa y Carbon. El proyecto de mayor éxito, NeoOffice (antes conocido como NeoOffice/J), actualmente usa una mezcla de Cocoa, Carbon e Java 1.4.2/1.5.
Entonces... ¿NeoOffice está escrito con Java?
No.
NeoOffice es la versión nativa para Mac OS X de OpenOffice.org que usa algunos detalles del código Java en el diseño gráfico y en la configuración.
OpenOffice.org está escrito principalmente en lenguaje C++ que es independiente de la plataforma. Sin embargo, NeoOffice aprovecha la especial integración de Mac OS X y Java para obtener el aspecto de Mac OS X. En otras palabras, los pocos bit de Java en NeoOffice buscan realizar operaciones relacionadas con la interfaz. Los "engranajes" de la suite office siguen escritos en C++. (El código de NeoOffice es en su 99% el mismo que OpenOffice.org y condividido con las demás plataformas sobre las que OpenOffice.org corre, y el 1% restante está escrito en Java, C++, C, y Objective-C.)
Por tanto, NeoOffice podrá correrse sólo en ordenadores MacIntosh Mac OS X 10.3.x o 10.4., y no en Mac OS 9, Mac OS X 10.2 o anteriores, Windows, Linux, Darwin, o cualquier otra forma de UNIX.
¿Cómo se usa Java en NeoOffice?
Como se mencionó arriba, Java se usa en NeoOffice para lograr el interfaz tÃpico de aplicaciones Mac. Por tanto, no es que Java permita que NeoOffice corra sino que sólo permite que las librerÃas relacionadas con ventanas de dos dimensiones (por ejemplo) se vean mejor en NeoOffice. Estas están actualmente en forma "nativa" en Apple VM en el sentido de que son realmente Java 2D y CoreGraphics/Quartz y AWT usa Carbon.[1]
La cantidad de código Java usado ha ido disminuyendo con el tiempo.
¿Por qué no trabajáis con Cocoa para una versión Aqua de OpenOffice.org?
Ci sono diverse ragioni. OpenOffice.org non è stato costruito come un'applicazione Cocoa Mac nativa. Tradurre tutti i modelli degli eventi, la gestione dei caratteri e le routine di visualizzazione in "puro" Cocoa implicherebbe una grande quantità di lavoro. D'altra parte, la implementazione di Java fatta da Apple fornisce un buon accesso alle caratteristiche Aqua ed è più facile da fondere con il sottostante codice di OpenOffice.org. NeoOffice/C ha provato che una implementazione Cocoa "pura" non è una soluzione praticabile nel breve-medio termine; mentre risultava con un buon aspetto dopo un sacco di hack, non era tuttavia abbastanza stabile neppure per un uso sporadico. Per una spiegazione più dettagliata delle ragioni che stanno dietro a questa scelta di implementazione vai a vedere questo post [en] del co-fondatore del progetto NeoOffice ed ingegnere di sistema Ed Peterlin.
Come abbiamo detto, NeoOffice è moto stabile e non molto lontano da fornire un'interfaccia utente completamente in stile Aqua, e prendere un differente percorso adesso vorrebbe dire gettare nella spazzatura un sacco di codice buono, ben testato e stabile. La parte negativa dell'usare Java è che consuma (un po') più risorse di una pura implementazione Cocoa. (C'è bisogno di più RAM rispetto alle richieste minime per Mac OS X—ma d'altra parte il Mac OS X beneficia dall'avere più RAM rispetto al minimo raccomendato!—e la RAM è ormai economica; aggiungere RAM è la cosa più economica per velocizzare il tuo Mac.) I miglioramenti che Apple ha introdotto in Java 1.4.2 rispetto a Java 1.3.1 ha permesso a NeoOffice 1.2 Alpha di ridurre l'uso delle risorse e di migliorare le prestazionI.
Invece di rimanere fedele dogmaticamente ad un singolo toolkit, gli sviluppatori di NeoOffice "usano il miglior tool per affrontare il compito che si presenta loro" nel tentativo di "aggiungere un involucro completamente in stile Mac OS X all'uso di [it:OpenOffice.org|OpenOffice.org]."[2]
¿No es mejor Cocoa que Java?
Aqua es aqua.
Esta pregunta la hacen frecuentemente los programadores y los usuarios más expertos. Por otro lado, los usuarios finales suelen juzgar los resultados. Una de las personas que participó en la fase de pruebas del programa dijo:
"Si tiene el aspecto de un pato, camina como un pato, y hace lo mismo que un pato, entonces, ¿por qué el usuario final está seguro de que se trata de un pato? Ahora bien, que este pato beba chocolate caliente o café es una cosa poco importante (en inglés hay un juego de palabras entre chocolate=cocoa y café=java."
Como John Gruber ha dicho, después de haber citado lo que un ingeniero de Apple escribió en la mailing-list Carbon-Dev, "enviad [el segundo párrafo] a cualquiera que pretenda que sólo las 'aplicaciones Cocoa' son 'verdaderamente nativas' de Mac OS X."
Pero Java ¿no es muy lento?
Como se ha mencionado, la mayor parte de NeoOffice se escribió en C++. Solo aquellas partes que permiten un aspecto en estilo Aqua han sido personalizadas para usar Java. Esto porque Mac OS X Java tiene un aspecto excelente y va mejor para configurar los controles "blue-button" nativos de Aqua.
Y luego, precisamente para hacer justicia, Java ya no es tan lento...
Perché non usa Java 1.5.x?
NeoOffice 2.0 Aqua Beta 3 e superiori adesso possono usare Java 1.5 (e la versione di Java richiesta è la Java 1.5 per i Mac-Intel su cui gira Mac OS X 10.4). Per comprendere perché NeoOffice ha storicamente usato diversa dall'ultima versione offertada Apple, vai avanti nella lettura. Ci sono un certo numero di ragioni per cui NeoOffice usa Java 1.4.2, sia umane che tecniche. Per cominciare dall'inizio, quando è cominciato lo sviluppo del programma (come NeoOffice/J), Java 1.4.x non era disponibile per Mac OS X. Quando finalmente Java 1.4.1 divenne disponibile per Mac OS X, era abbastanza pieno di bug e mancava di una serie di caratteristiche su Mac OS X 10.2.x. Java 1.5 è disponibile solo per Mac OS X 10.4.x. Inoltre, Java 1.4.x e 1.5 sono basati su Cocoa mentre Java 1.3.1 è basato su Carbon. Così per la maggior parte della sua vita iniziale come NeoOffice/J, l'applicazione usava Java 1.3.1 su Mac OS X 10.2.x, 10.3.x, and 10.4.x.
Il cambiamento ad una versione di Java più recente non solo include l'abbandono del supporto per quegli utenti che usano versioni di Mac OS X più vecchie ma richiede anche centinaia, per non dire migliaia, di ore di tempo per reimplementare molte delle parti dell'applicazione scritte in Carbon in Cocoa e per lavorare sui nuovi bug introdotti dalla nuova versione di Java. Quindi cambiare per usare Java 1.4.x (o 1.5) non è una strada percorribile per la maggior parte di NeoOffice/J's data la quantità di persone che fanno parte del team di siluppo e per il fatto che Java 1.3.1 continua a lavorare bene.
Dal momento che Java 1.3.1 non è previsto nella transizione verso i Mac basati sui processori Intel, l'estate del 2005 (Luglio-Settembre) è stata passata in un lavoro a tempo pieno per la transizione di NeoOffice/J verso Java 1.4.2, e Ottobre e quasi tutto Novembre è stato passato (sempre a tempo pieno) a fissare i nuovi bug che sono venuti alla luce durante la fase di verifica. NeoOffice 1.2 Alpha è stata la prima versione a richiedere Java 1.4.2 ae Mac OS X 10.3 o più recente.
La transizione a Java 1.5.x non era così difficile dal momento che è anch'esso basato su Cocoa, ed è stato fatto (per i Mac-Intel) durante il ciclo di test di NeoOffice 2.0 Aqua Beta. Java 1.4.2 è ancora la versione predefinita di Java usata da NeoOffice sui Mac con processore PowerPC sui quali gira 10.3.x o 10.4.x. (Forzare NeoOffice/J 1.1 o NeoOffice 1.2 Alpha ad usare Java 1.5 avrà come risultato un aumento dei crash e di situazioni non supportate.)
Perché non usare gtk o Qt o qualche altro toolkit multipiattaforma?
Vedi gli articoli Perché non state lavorando con Cocoa per una versione Aqua di OpenOffice.org? e Cocoa non è meglio di Java? :-) La risposta breve è che per rilavorare sul codice sorgente di OpenOffice.org per usare un altro toolkit prenderebbe almeno lo stesso tempo e lavorarci per portare NeoOffice al punto in cui si trova oggi (dopo tra anni di lavoro praticamente a tempo pieno da parte di un programmatore e mezzo e per tutto il lavoro preparatorio), senza la garanzia della stabilità del risultato.
Inoltre, nel caso di gtk, il port per Mac OS X è solo di versioni più datate di gtk e piuttosto incomplete. Anche nel caso di Qt, che ha un port del toolkit per Mac OS X moderno e completo, il lavoro da fare su OpenOffice.org per "usare Qt" non porterebbe ad una versione nativa ed indipendente da X11. La versione Qt/KDE OpenOffice.org non è una implementazione di vcl [en] con "Qt nativo". Tutte le parti che riguardano la gestione dei caratteri, il disegno, ecc., deve essere ancora fatto usando X11[3].
¿Y los i Mac-Intel? Hay un paquete Universal Binary?
Lee esta FAQ [en] (de la primavera 2006) para encontrar una explicación detallada en relación con los MacIntel y para conocer los últimos desarrollos. (También puedes ver las FAQ de inicio de 2006 para consultar información anterior).
Otras preguntas
¿NeoOffice ha sustituido a NeoOffice/C?
.
¿Qué ha pasado con NeoOffice/J?
Como reconocimiento del hecho de que el "clásico" puerto para el uso de Cocoa (NeoOffice/C) ha sido abandonado, asà como por el hecho de que la "/J" era más bien poco clara para muchos usuarios, lo que fue NeoOffice/J simplemente ha sido rebautizado como NeoOffice a partir de la versión 1.2 Alpha.
¿Hay algún plan de desarrollo?
La dirección del proyecto es discutida normalmente en el foro "NeoOffice Development" en trinity. Los planes sucesivos al 6 de junio de 2005 [en] de los dos desarrollar principales para 2005-06 están resumidos en este enlace al foro [en]. Los planes para la fase sucesiva a la realización de NeoOffice 2.0 Aqua Beta incluyen más detalle en la aqua-ficación y un proyecto de la comunidad para desarrollar una serie de iconos para las barras de herramientas (toolbars) en estilo Aqua, pero no existe un plan de desarrollo oficial.
¿Dónde puedo aprender más cosas acerca de NeoOffice?
Para encontrar trucos sobre el uso de NeoOffice, mira la sección Trucos y sugerencias de esta Wiki.
Tengo más preguntas acerca del desarrollo de NeoOffice, ¿dónde puedo hacerlas?
- Revisa las FAQ oficiales de NeoOffice
- Busca en esta wiki
- Busca en los foros de Trinity
- Si aun asà no encuentras respuesta, hazla en la sección apropiada del foro. Normalmente se ha de escribir en inglés pero es posible que haya usuarios que puedan responder en español allÃ.