Comparar revisiones

Prefacio

Change Revisions

Revisión 283304:

Revisión 283304 de Maharba el

Revisión 226539:

Revisión 226539 de Maharba el

Título:
Prefacio
Prefacio
Enlace amigable (slug):
Creación_de_Componentes_XPCOM/Prefacio
Creación_de_Componentes_XPCOM/Prefacio
Contenido:

Revisión 283304
Revisión 226539
t7    <p>t
8      Este es un libro acerca de Gecko, y cómo crear componentes 
><a href="es/XPCOM">XPCOM</a> para aplicaciones basadas en Gecko.  
>Aunque se hace énfasis en los pasos prácticos que sigues para que 
> hagas tu código C++ dentro de un componente que pueda ser usado  
>en Gecko, esperamos que esos pasos nos den también la ocasión de  
>abordar todas las herramientas, técnicas y tecnologías que integr 
>an XPCOM. En consecuencia, este libro es arreglado de tal forma q 
>ue puedes seguirlo y crear tus propios componentes o aprender dis 
>tintos tópicos de XPCOM individualmente, como en una guía de refe 
>rencia. Por ejemplo, la introducción incluye una discusión acerca 
> de lo que son los componentes; y el primer capítulo - en el cual 
> tu compilas un código básico y lo registras en Mozilla - apunta  
>una discusión de la relación entre componentes y módulos de las i 
>nterfases de XPCOM y del proceso de registro en general. 
9    </p>
10    <p>
11      El principio de cada capítulo provee una lista de los tópic
>os más importantes tratados. Las secciones en la barra de al lado 
> son incluidas para resaltar detalles técnicos. Al terminar el li 
>bro, si hemos hecho nuestro trabajo, habrás aprendido como constr 
>uir componentes y sabrás algo acerca del framework para esos comp 
>onentes en Gecko, que es XPCOM. 
12    </p>
13    <h3 id="Qui.C3.A9n_debe_leer_este_Libro" name="Qui.C3.A9n_deb
>e_leer_este_Libro"> 
14      Quién debe leer este Libro
15    </h3>
16    <p>
17      <a href="es/Creaci%c3%b3n_de_Componentes_XPCOM">Creación de
> Componentes XPCOM</a> está dirigido a desarrolladores C++. Aunqu 
>e puedes crear componentes XPCOM en <a href="es/Javascript">Javas 
>cript</a> y otros lenguajes y aunque tal vez puedas seguir el lib 
>ro como programador <a href="es/C">C</a>, el código de implementa 
>ción está escrito en C++ y mucha de la discusión de cómo hacer tu 
> código <i>dentro</i> de un componente XPCOM empieza desde C++. D 
>e cualquier modo no necesitas ser un experto en C++, aunque debes 
> estar familiarizado con ideas básicas como herencia y encapsulac 
>ión, ideas que cuando es posible son explicadas en el libro donde 
> son usadas. También muchos de los ejemplos son en Javascript, qu 
>e es usado en Mozilla para accesar componentes XPCOM como objetos 
> script, así que estar familiarizado con ese lenguaje es útil tam 
>bién. 
18    </p>
19    <p>
20      XPCOM significa Cross Platform Component Object Model(Model
>o Componente Objeto Multiplataforma), como su nombre lo implica,  
>XPCOM es similar al Microsoft COM, si tienes alguna experiencia c 
>on esta tecnología, grán parte de eso puede aplicarse a XPCOM. De 
> cualquier modo este libro no asume ningún conocimiento previo de 
> COM - todas las ideas básicas de COM serán introducidas. 
21    </p>
22    <p>
23      Este libro provee un tutorial de cómo construir un componen
>te XPCOM que controle el comportamiento de búsqueda; aunque XPCOM 
> puede ser usado en muchos ambientes relacionados con búsqueda we 
>b, su principal cliente es Gecko, un buscador web embebido de cód 
>igo abierto, que cumple con estándares, donde es más fácil y prác 
>tico ilustrar la funcionalidad de XPCOM. Una descripción completa 
> del componente de este turial puede ser encontrada en la sección 
> <a href="es/Creaci%c3%b3n_de_Componentes_XPCOM/Creaci%c3%b3n_de_ 
>el_C%c3%b3digo_del_Componente#En_lo_que_Estaremos_Trabajando">En  
>lo que Estaremos Trabajando</a> de este tutorial. 
24    </p>
25    <div class="note">
26      <p>
27        A pesar de lo que dice la documentación, XPCOM no debe se
>r usado para hacer <a href="es/Plugins">NPAPI plugins</a> script. 
> A partir de la versión 1.7.5 de Gecko(Firefox 1.0) una extensión 
> especial NPAPI para llamar desde script es soportada vea <a href 
>="es/Gecko_Plugin_API_Reference/Scripting_plugins">Scripting plug 
>ins</a>. 
28      </p>
29    </div>
30    <h3 id="Organizaci.C3.B3n_del_Tutorial" name="Organizaci.C3.B
>3n_del_Tutorial"> 
31      Organización del Tutorial
32    </h3>
33    <p>
34      La siguiente lista da una reseña de de los pasos que seguir
>emos para crear un componente XPCOM llamado <i>Weblock</i>, el cu 
>al provee la funcionalidad de bloqueo de sitios a los buscadores  
>basados en Gecko. Cada uno de estos pasos tiene su propio capitul 
>o, en el que se discuten varios tópicos asociados al paso. 
35    </p>
36    <ul>
37      <li>Crear el módulo genérico de módulo para el componente.
38      </li>
39      <li>Usar macros C++, clases especiales de cadenas y puntero
>s inteligentes para optimizar el código. 
40      </li>
41      <li>Definir la funcionalidad del componente; crear una inte
>rfaz <a href="es/XPIDL">XPIDL</a> para esa funcionalidad, crear e 
>l código específico para la implementación adaptada de la interfa 
>z del componente <i>Weblock</i>. 
42      </li>
43      <li>Finalizar la implementación del componente <i>Weblock</
>i>: <code>nsIContentPolicy</code>, E/S de archivos, bloqueo, etc. 
44      </li>
45      <li>Creación de la interfaz de usuario del componente <i>We
>block</i>. 
46      </li>
47      <li>Empaquetar <i>Weblock</i> para su distribución e instal
>ación. 
48      </li>
49    </ul>
50    <h3 id="Continuando_con_los_Ejemplos" name="Continuando_con_l
>os_Ejemplos"> 
51      Continuando con los Ejemplos
52    </h3>
53    <p>
54      Hay dos formas diferentes de tener XPCOM en tu máquina para
> poder crear componentes. Si ya tienes un Mozilla construído o el 
> código fuente de Mozilla 1.2 o posterior, entonces puedes usar l 
>a plataforma XPCOM disponible ahí. Si no tienes las fuentes de Mo 
>zilla, entonces puedes bajar el Gecko SDK, que es una colección d 
>e librerías y herramientas que componen la plataforma de componen 
>tes XPCOM. 
55    </p>
56    <p>
57      No importa si compilas tu código en el directorio de las fu
>entes de Mozilla o usas el Gecko SDK, puedes construir tus propio 
>s componentes que usen los componentes previamente existentes en  
>Gecko. el componente <b>Weblock</b> que describimos en este tutor 
>ial es un complemento práctico(y esperamos genuinamente útil) par 
>a el navegador. Para poder construirlo, tu Gecko SDK o tus fuente 
>s de Mozilla deben ser versión 1.2 o superior (las interfaces XPC 
>OM en versiones anteriores no fueron completamente congeladas). 
58    </p>
59    <p>
60      Este Libro asume que estas usando el SDK en vez del directo
>rio de las fuentes de Mozilla, de cualquier forma la diferencia e 
>ntre ambos es mínima. Detalles acerca de cómo obtener el SDK, con 
>struir y obtener acceso programático a los componetes de Gecko se 
> dan en el APENDICE del libro, <a href="es/Creaci%c3%b3n_de_Compo 
>nentes_XPCOM/Configurar_el_Gecko_SDK">Configurar el Gecko SDK</a> 
>. 
61    </p>
62    <h3 id="Convenciones" name="Convenciones">
63      Convenciones
64    </h3>
65    <p>
66      Las convenciones de formato listadas abajo se usan para des
>ignar tipos específicos de información en el libro y hacer las co 
>sas más fáciles de encontrar. El objetivo es usar tan pocos forma 
>tos como sea posible, pero distinguir los diferentes tipos de inf 
>ormación claramente. 
67    </p>
68    <table class="standard-table">
69      <tbody>
70        <tr>
71          <td class="header">
72            Formato
73          </td>
74          <td class="header">
75            Descripción
76          </td>
77        </tr>
78        <tr>
79          <td>
80            <b>bold</b>
81          </td>
82          <td>
83            <b>nombres de componentes</b> aparecen en negro en el
> texto 
84          </td>
85        </tr>
86        <tr>
87          <td>
88            <code>monospace</code>
89          </td>
90          <td>
91            <code>referencias al código</code>, <code>nombres de 
>interfaces</code> y <code>miembros</code> de interfaces (ejm. <co 
>de>createInstance()</code>) aparecen en letra monospaced. Líneas  
>de código aparecen en cajas separadas. También <code>nombres de a 
>rchivos</code> y <code>directorios</code> aparecen en letra monos 
>paced. 
92          </td>
93        </tr>
94        <tr>
95          <td>
96            <i>itálica</i>
97          </td>
98          <td>
99            <i>variables</i> aparecen en letra itálica. Términos 
>importantes y nuevos conceptos también aparecen en letra itálica  
>la primera vez que aparecen en el texto. También aquellos término 
>s que son explicados inmediatamente después de ser citados, o don 
>de se le dice al lector que vaya a una sección en el libro en don 
>de se describen dichos términos a detalle. 
100          </td>
101        </tr>
102        <tr>
103          <td>
104            link
105          </td>
106          <td>
107            Referencias a otras secciones, imágenes y tablas tamb
>ién son links a esas secciones. 
108          </td>
109        </tr>
110      </tbody>
111    </table>
112    <h3 id="Agradecimientos" name="Agradecimientos">
113      Agradecimientos
114    </h3>
115    <p>
116      Gracias a Peter Lubczynski, John Gaunt, Ellen Evans y Alec 
>Flett por sus revisiones técnicas. Un agradecimiento especial a D 
>arin Fisher por sus observaciones tan meticulosas, lectura tan ce 
>rcana y atención a los detalles. 
117    </p>

Volver al historial