Capitulos de este wiki
  1. 1 Declaración de intenciones
  2. 2 Presentación
  3. 3 Introducción a java
  4. 4 Origen de JAVA
  5. 5 Características de JAVA
  6. 6 HotJava
  7. 7 JAVA para aplicaciones corporativas
  8. 8 Instalación del jdk
  9. 9 Windows
  10. 10 Solaris
  11. 11 Linux
  12. 12 Compilación sin JDK
  13. 13 Conceptos básicos de java
  14. 14 Programación en JAVA
  15. 15 Control del Flujo
  16. 16 Clases
  17. 17 Variables y Métodos de Instancia
  18. 18 Alcance de Objetos y Reciclado de Memoria
  19. 19 Herencia
  20. 20 Control de Acceso
  21. 21 Variables y Métodos Estaticos
  22. 23 Clases Abstractas
  23. 24 Interfaces
  24. 25 Métodos Nativos
  25. 26 Paquetes
  26. 27 Referencias
  27. 28 Punteros y Referencias C
  28. 29 Referencias en Java
  29. 30 Referencias y Arrays
  30. 31 Referencias y Listas
  31. 32 Punteros C/C++ y Referencias Java
  32. 33 Programas básicos en java
  33. 34 Una mínima aplicación en Java
  34. 35 Compilación y Ejecución de HolaMundo
  35. 36 El visor de Applets de Sun (appletviewer)
  36. 37 Arquitectura de appletviewer
  37. 38 Métodos de appletviewer
  38. 39 Funciones de menú de appletviewer
  39. 40 Un Applet basico en Java
  40. 41 Compilación de un Applet
  41. 42 La marca APPLET de html
  42. 43 Atributos de APPLET
  43. 44 Paso de parametros a Applets
  44. 45 Tokens en parametros de llamada
  45. 46 El parametro ARCHIVE
  46. 47 Depuración general
  47. 48 Ciclo de vida de un Applet
  48. 49 Protección de Applets
  49. 50 Escribir Applets Java
  50. 51 La aplicación Fecha (Aproximación a OOP)
  51. 52 El depurador de java - jdb
  52. 54 La clase Math
  53. 55 La clase Character
  54. 56 La clase Float
  55. 57 La clase Double
  56. 58 La clase Integer
  57. 59 La clase Long
  58. 60 La clase Boolean
  59. 61 La clase String
  60. 62 La clase StringBuffer
  61. 63 Uso de Conversiones
  62. 64 Abstract window toolkit (awt)
  63. 65 Interface de Usuario
  64. 66 Estructura del AWT
  65. 67 Componentes y Contenedores
  66. 68 Tipos de Componentes
  67. 69 BorderLayout
  68. 70 CardLayout
  69. 71 CheckboxGroup
  70. 72 Color
  71. 73 Component
  72. 74 Button - Botones
  73. 75 Canvas
  74. 76 Checkbox
  75. 77 Choice
  76. 78 Container
  77. 79 Label - Etiquetas
  78. 80 List - Listas
  79. 81 Scrollbar - Barras de desplazamiento
  80. 82 TextComponent
  81. 83 Fijar el tamaño preferido
  82. 84 La clase Event
  83. 85 FlowLayout
  84. 86 Cambio de fuente de caracteres
  85. 87 GridLayout
  86. 88 GridBagLayout
  87. 89 Uso de Insets
  88. 90 MenuComponent
  89. 91 LayoutManager
  90. 92 Diseño de Componentes propios
  91. 93 Creación de Aplicaciones con AWT
  92. 94 Crear el Marco de la aplicación (Frame)
  93. 95 Inicializar Fuentes, Colores, Layouts y demas recursos
  94. 96 Crear menús y Barras de Menús
  95. 97 Crear los controles, dialogos, ventanas, etc.
  96. 98 Layouts
  97. 99 FlowLayout
  98. 100 BorderLayout
  99. 101 GridLayout
  100. 102 GridBagLayout
  101. 103 CardLayout
  102. 104 Crear un Layout propio
  103. 105 Control de Eventos
  104. 106 La clase Event
  105. 107 Tipos de Eventos
  106. 108 Generación y Propagación de Eventos
  107. 109 Métodos de Control de Eventos
  108. 110 Action_Event
  109. 111 Mejorar el Diseño de Interfaces
  110. 112 Cambio de Font de Caracteres
  111. 113 Colores de Fondo y Texto
  112. 114 Fijar el Tamaño Preferido
  113. 115 Uso de Insets
  114. 116 Habilitar y Deshabilitar Componentes
  115. 117 Botón Grafico
  116. 118 Gráficos
  117. 119 Métodos para Dibujos
  118. 120 Líneas
  119. 121 Rectangulos
  120. 122 Círculos, Elipses
  121. 123 Excepciones en java
  122. 124 Funciones Graficas
  123. 125 Manejo de Excepciones
  124. 126 Fractales
  125. 127 Generar Excepciones en Java
  126. 128 Líneas Flotantes
  127. 129 Excepciones Predefinidas
  128. 130 Métodos para Imagenes
  129. 131 Crear Excepciones Propias
  130. 132 Doble Buffering de Graficos
  131. 133 Capturar Excepciones
  132. 134 Nuevas Clases para Dibujo
  133. 135 Propagación de Excepciones
  134. 136 La Clase MediaTracker
  135. 137 Threads y multithreading
  136. 138 Sonido en Java
  137. 139 Flujo en Programas
  138. 140 Entrada por Ratón
  139. 141 Creación y Control de Threads
  140. 142 Arrancar y Parar Threads
  141. 143 Suspender y Reanudar Threads
  142. 144 Estados de un Thread
  143. 145 Scheduling
  144. 146 Prioridades, demonios...
  145. 147 Ejemplo de Animación
  146. 148 Comunicación entre Threads
  147. 149 Métodos nativos
  148. 150 Escribir Código Java
  149. 151 Compilar el Código Java
  150. 152 Crear el fichero de Cabecera
  151. 153 Crear el fichero de Stubs
  152. 154 Escribir la función C
  153. 155 Crear la Librería Dinamica
  154. 156 Ejecutar el Programa
  155. 157 Entrada / salida estándar
  156. 158 La clase System
  157. 159 Clases comunes de Entrada/Salida
  158. 160 Ficheros en java
  159. 161 Ficheros
  160. 162 Streams de Entrada
  161. 163 Streams de Salida
  162. 164 Ficheros de Acceso Aleatorio
  163. 165 Comunicaciones en java
  164. 166 Comunicaciones en Unix
  165. 167 Sockets
  166. 168 Diferencias entre Sockets Stream y Datagrama
  167. 169 Uso de Sockets
  168. 170 Dominios de Comunicaciones
  169. 171 Modelo de Comunicaciones con Java
  170. 172 Apertura de Sockets
  171. 173 Creación de Streams
  172. 174 Cierre de Sockets
  173. 175 Mínimo Cliente SMTP
  174. 176 Servidor de Eco
  175. 177 Cliente/Servidor TCP/IP
  176. 178 Servidor Simple de HTTP
  177. 179 Red en Windows '95 (sin conexión)
  178. 180 Clases Útiles en Comunicaciones
  179. 181 Arquitectura mvc en java
  180. 182 La Arquitectura MVC
  181. 183 Observador y Observable
  182. 184 Cómo utilizar Observer y Observable
  183. 185 Ejemplo de aplicación MVC
  184. 186 Aplicaciones en java
  185. 187 Etiqueta
  186. 188 Reloj Digital
  187. 189 Persiana
  188. 190 Solapas
  189. 191 Transparencia
  190. 192 Calculadora
  191. 193 Cuenta-Kilómetros
  192. 194 Cartel
  193. 195 Final y agradecimientos
  194. 196 Java y matlab

Tutorial de Java - El parametro ARCHIVE

46 - El parametro ARCHIVE

[editar]
Tutorial creado por Agustín Froufe. Extraido de: http://www.publispain.com/supertutoriales/
30 de Noviembre de 1999
Una de las cosas que se achacan a Java es la rapidez. El factor principal en la percepción que tiene el usuario de la velocidad y valor de los applets es el tiempo que tardan en cargarse todas las clases que componen el applet. Algunas veces tenemos que estar esperando más de un minuto para ver una triste animación, ni siquiera buena. Y, desafortunadamente, esta percepción de utilidad negativa puede recaer también sobre applets que realmente sí son útiles.

Para entender el porqué de la necesidad de un nuevo método de carga para acelerarla, necesitamos comprender porqué el método actual es lento. Normalmente un applet se compone de varias clases, es decir, varios ficheros .class. Por cada uno de estos ficheros .class, el cargador de clases debe abrir una conexión individual entre el navegador y el servidor donde reside el applet. Así, si un applet se compone de 20 ficheros .class, el navegador necesitará abrir 20 sockets para transmitir cada uno de los ficheros. La sobrecarga que representa cada una de estas conexiones es relativamente significante. Por ejemplo, cada conexión necesita un número de paquetes adicionales que incrementan el tráfico en la Red.

Me imagino que ya el lector habrá pensado la solución al problema: poner todos los ficheros en uno solo, con lo cual solamente sería necesaria una conexión para descargar todo el código del applet. Bien pensado. Esto es lo mismo que han pensado los dos grandes competidores en el terreno de los navegadores, Netscape y Microsoft.

Desafortunadamente, las soluciones que han implementado ambas compañías no son directamente compatibles. Microsoft, en su afán de marcar diferencia, crea su propio formato de ficheros CAB. La solución de Netscape es utilizar el archiconocido formato ZIP. Por suerte, nosotros podemos escribir nuestro código HTML de forma que maneje ambos formatos, en caso necesario. Esto es así porque podemos especificar cada uno de estos formatos de ficheros especiales en extensiones separadas de la marca <APPLET>.

No vamos a contar la creación de ficheros CAB; quien esté interesado puede consultar la documentación de Java que proporciona Microsoft con su SDK para Java, que es bastante exhaustiva al respecto. Una vez que disponemos de este fichero, podemos añadir un parámetro CABBASE a la marca <APPLET>:

  • lt;APPLET NAME="Hola" CODE="HolaMundo" WIDTH=50 HEIGHT=50 > <PARAM NAME=CODEBASE VALUE="http://www.ejemplo.es/classes">
    <PARAM NAME=CABBASE VALUE="hola.cab">
    </APPLET>

El VALUE del parámetro CABBASE es el nombre del fichero CAB que contiene los ficheros .class que componen el conjunto de applet.

Crear un archivo ZIP para utilizarlo con Netscape es muy fácil. Se deben agrupar todos los ficheros .class necesarios en un solo fichero .zip. Lo único a tener en cuenta es que solamente hay que almacenar los ficheros .class en el archivo; es decir, no hay que comprimir.

Si se está utilizando pkzip, se haría:

Pkzip -e0 archivo.zip listaFicherosClass

El parámetro de la línea de comandos es el número cero, no la "O" mayúscula.

Para utilizar un fichero .zip hay que indicarlo en la marca ARCHIVE de la sección <APPLET>:

  • lt;APPLET NAME="Hola" CODE="HolaMundo" WIDTH=50 HEIGHT=50 CODEBASE VALUE="http://www.ejemplo.es/classes"
    ARCHIVE="hola.zip">
    </APPLET>

Pero hay más. Podemos crear ambos tipos de ficheros y hacer que tanto los usuarios de Netscape Navigator como los de Microsoft Internet Explorer puedan realizar descargas rápidas del código del applet. No hay que tener en cuenta los usuarios de otros navegadores, o de versiones antiguas de estos dos navegadores, porque ellos todavía podrán seguir cargando los ficheros a través del método lento habitual. Para compatibilizarlo todo, ponemos las piezas anteriores juntas:

  • lt;APPLET NAME="Hola" CODE="HolaMundo" WIDTH=50 HEIGHT=50 CODEBASE VALUE="http://www.ejemplo.es/classes"
    ARCHIVE="hola.zip">
    <PARAM NAME=CABBASE VALUE="hola.cab">
    <PARAM NAME=CODEBASE VALUE="http://www.ejemplo.es/classes">
    <PARAM NAME=CABBASE VALUE="hola.cab">
    </APPLET>

Ahora que se puede hacer esto con ficheros .cab y .zip, JavaSoft ha definido un nuevo formato de ficheros, que incorporará en del JDK 1.1, para incluir juntos todos los ficheros de imágenes, sonido y class. JavaSoft llama a esto formato JAR (Java Archive). La marca <APPLET> de HTML se modificará para manejar este nuevo formato JAR a través del parámetro ARCHIVES. Y dejamos al lector el trabajo de poner los tres formatos juntos bajo el mismo paraguas de la marca <APPLET>.
[editar]

172 opiniones

grafos

hola?? alguien puede darme info de aplicación de grafos en el mapeo de una red wan?? o alguna página donde pueda encontrar algo de esto?
choice

espesificar mas a fondo los ejercicios y lo que significa
diferencias entre main() y init()

holas.. no se si me pueden ayudar sobre diferencias entre init y main
no solo c

tambien puede invocara codigo asm
historias

iiiiiiiiiiel david no sabe besar y es gay junto con el carlos
1 2 3 4 5 6 7 ... 35 | siguiente >

Tutoriales relacionados con 'Tutorial de Java'

PHP se ha convertido en el lenguaje de facto de Internet y no es difícil... Más »
Este es el diario de Peter Class sobre sus dias aprendizaje de una disciplina de... Más »
Entiendase que AJAX no se refiere a usar el objeto XMLHttpRequest de manera indispensable porque... Más »
ASP (Active Server Pages) es la tecnología para la creación de páginas dinámicas del lado... Más »
Este documento contiene información acerca del establecimiento de servicios WWW bajo Linux (tanto servidor como... Más »

Autor y licencia de 'Tutorial de Java'


Tutorial de Agustín Froufe. Extraido de: http://www.publispain.com/supertutoriales/ CopyLeft
Este contenido ha sido recopilado por el equipo de Wikilearning. Todo el contenido recopilado se ha obtenido respetando y comunicando en nuestro site la licencia de cada fuente.
Wikilearning tiene permiso expreso por escrito de los autores para publicar los contenidos que ha extraído de otras webs, incluyendo su uso comercial.