Por favor ingrese la pregunta de…. .JAVA.
Java es el nombre general del lenguaje de programación Java (en adelante, lenguaje Java) y la plataforma Java lanzada por Sun Microsystems en mayo de 1995. El navegador HotJava implementado en Java (que admite subprogramas de Java) demuestra el encanto de Java: computación web e Internet dinámica y multiplataforma. Desde entonces, Java ha sido ampliamente aceptado y ha promovido el rápido desarrollo de la Web. Ahora los navegadores de uso común admiten subprogramas de Java. Por otro lado, la tecnología Java también se actualiza constantemente.
La plataforma Java consta de la máquina virtual Java y la interfaz de programación de aplicaciones (API) Java. La interfaz de programación de aplicaciones Java proporciona una interfaz estándar para aplicaciones Java que es independiente del sistema operativo y se puede dividir en una parte básica y una parte de extensión. Una vez instalada la plataforma Java en el hardware o en la plataforma del sistema operativo, las aplicaciones Java están listas para ejecutarse. Ahora la plataforma Java se ha integrado en casi todos los sistemas operativos. De esta forma, los programas Java se pueden compilar una vez y ejecutar en varios sistemas. La interfaz de programación de aplicaciones Java ha evolucionado desde la versión 1.1xa la versión 1.2. La plataforma Java más utilizada actualmente se basa en Java1.4 y la última versión es Java1.6.
Java se divide en tres sistemas: JavaSE, JavaEE y JavaME.
java 3d
El lenguaje Java es un lenguaje de programación orientado a objetos que soporta la computación en red. El lenguaje Java absorbe las ventajas del lenguaje Smalltalk y el lenguaje C ++ y agrega otras características, como soporte de programación concurrente, comunicación de red, control de datos multimedia, etc. Las características principales son las siguientes:
1. El lenguaje Java es simple. La sintaxis del lenguaje Java es muy similar a la sintaxis del lenguaje C y del lenguaje C ++, lo que facilita que la mayoría de los programadores aprendan y utilicen Java. Por otro lado, Java abandona aquellas características de C++ poco utilizadas, difíciles de entender y confusas, como la sobrecarga de operadores, la herencia múltiple y las conversiones automáticas. En particular, el lenguaje Java no utiliza punteros y proporciona recolección automática de basura, por lo que los programadores no tienen que preocuparse por la administración de la memoria.
2. El lenguaje Java está orientado a objetos. El lenguaje Java proporciona primitivos como clases, interfaces y herencia. En aras de la simplicidad, solo se admite la herencia única entre clases, la herencia múltiple entre interfaces y el mecanismo de implementación entre clases e interfaces (la palabra clave es implements). El lenguaje Java es totalmente compatible con el enlace dinámico, mientras que el lenguaje C++ solo utiliza el enlace dinámico para funciones virtuales. En resumen, el lenguaje Java es un lenguaje de programación puramente orientado a objetos.
3.Se distribuye el lenguaje Java. El lenguaje Java soporta el desarrollo de aplicaciones de Internet. Hay una interfaz de programación de aplicaciones de red (java.net) en la interfaz de programación de aplicaciones Java básica, que proporciona una biblioteca de clases para la programación de aplicaciones de red, que incluye URL, URLConnection, Socket, ServerSocket, etc. El mecanismo RMI (activación de método remoto) de Java también es un medio importante para desarrollar aplicaciones distribuidas.
4.El lenguaje Java es robusto. El sólido mecanismo de escritura de Java, el manejo de excepciones y la recolección automática de basura son garantías importantes para la solidez de los programas Java. Descartar punteros es una buena elección para Java. El mecanismo de verificación de seguridad de Java hace que Java sea más robusto.
5. El lenguaje Java es seguro. Java se usa comúnmente en entornos de red. Para ello, Java proporciona un mecanismo de seguridad para evitar ataques de códigos maliciosos. Además de las muchas características de seguridad del lenguaje Java, Java tiene un mecanismo de protección de seguridad (ClassLoader) para las clases descargadas a través de la red, como asignar diferentes espacios de nombres para evitar que las clases locales sean reemplazadas con los mismos nombres, verificar códigos de bytes y proporcionar Aplicaciones Java con un mecanismo de gestión de seguridad (Class SecurityManager) para configurar la protección de seguridad.
6. El lenguaje Java es neutral en cuanto a arquitectura. Los programas Java (archivos con el sufijo Java) se compilan en la plataforma Java en un formato de código de bytes independiente de la arquitectura (archivos con el sufijo de clase), que luego se puede ejecutar en cualquier sistema que implemente esta plataforma Java. Este enfoque es adecuado para entornos de red heterogéneos y distribución de software.
7.El lenguaje Java es portátil. Esta portabilidad proviene de la neutralidad arquitectónica. Además, Java también regula estrictamente la longitud de cada tipo de datos básico. El sistema Java en sí tiene una gran portabilidad. El compilador de Java está implementado en Java y el entorno de ejecución de Java está implementado en ANSI C.
8.El lenguaje Java es interpretativo. Como se mencionó anteriormente, los programas Java se compilan en formato de código de bytes en la plataforma Java y luego se pueden ejecutar en cualquier sistema que implemente esta plataforma Java. En tiempo de ejecución, el intérprete de Java en la plataforma Java interpreta y ejecuta estos códigos de bytes, y las clases requeridas durante la ejecución se cargan en el entorno de ejecución durante la fase de unión.
9.Java es de alto rendimiento. En comparación con los lenguajes de secuencias de comandos interpretados de alto nivel, Java es realmente de alto rendimiento. De hecho, con el desarrollo de la tecnología de compilación JIT (Just-In-Time), la velocidad de ejecución de Java se acerca cada vez más a la de C++.
10. El lenguaje Java es multiproceso. En el lenguaje Java, un hilo es un objeto especial que debe ser creado por la clase Thread o sus subclases. Por lo general, hay dos formas de crear un hilo: una es usar el constructor del tipo Thread (Runnable) para envolver un objeto con la interfaz Runnable en un hilo y la otra es derivar una subclase de la clase de hilo y anular la ejecución; método y uso El objeto creado por esta subclase es un hilo. Vale la pena señalar que la clase Thread implementa la interfaz Runnable, por lo que cualquier hilo tiene su método de ejecución, que contiene el código que el hilo desea ejecutar. La actividad de un hilo está controlada por un conjunto de métodos. El lenguaje Java admite la ejecución simultánea de múltiples subprocesos y proporciona un mecanismo de sincronización entre múltiples subprocesos (la palabra clave está sincronizada).
11. El lenguaje Java es dinámico. Uno de los objetivos de diseño del lenguaje Java es adaptarse a entornos dinámicos. Las clases requeridas por los programas Java se pueden cargar dinámicamente en el entorno de ejecución o a través de la red. Esto también facilita las actualizaciones de software. Además, las clases en Java tienen una representación en tiempo de ejecución y el tipo se puede verificar en tiempo de ejecución.
Las excelentes características del lenguaje Java hacen que las aplicaciones Java sean extremadamente robustas y confiables, lo que también reduce el costo de mantenimiento del sistema de aplicaciones. El soporte integral de Java para la tecnología de objetos y la API integrada en la plataforma Java puede acortar el tiempo de desarrollo de los sistemas de aplicaciones y reducir los costos. Java se puede compilar una vez y ejecutar en cualquier lugar, lo que le permite proporcionar una estructura abierta que se puede utilizar en cualquier lugar y una forma económica de transferir información entre múltiples plataformas. En particular, Java Enterprise API proporciona tecnologías relevantes y bibliotecas ricas para sistemas de aplicaciones de comercio electrónico y computación empresarial.
Las tecnologías relacionadas
1 y JDBC (Java Database Connectivity) proporcionan una interfaz unificada para conectar varias bases de datos relacionales.
2.EJB (Enterprise JavaBeans) permite a los desarrolladores crear, implementar y gestionar fácilmente aplicaciones empresariales multiplataforma basadas en componentes.
3.Java RMI (Java Remote Method Invocation) se utiliza para desarrollar aplicaciones Java distribuidas. La máquina virtual Java remota puede llamar a métodos de objetos Java. De esta manera, la activación remota del método puede ocurrir en ambos lados del par, o entre el cliente y el servidor, siempre que ambas aplicaciones estén escritas en Java.
4.Java IDL (lenguaje de definición de interfaz Java) proporciona una interoperabilidad incomparable con CORBA (arquitectura de agente de solicitud de objetos común). Esto permite a Java integrar recursos de información empresarial heterogéneos.
5.JNDI (Java Naming and Directory Interface) proporciona acceso desde la plataforma Java a. Esta interfaz bloquea varios servicios de directorio y nombres utilizados por las redes corporativas.
6.JMAPI (Java Management API) proporciona un rico conjunto de objetos y métodos para el desarrollo de la gestión de sistemas, redes y servicios en redes heterogéneas.
7.JMS (Java Message Service) proporciona servicios de mensajería empresarial, como colas de mensajes confiables, comunicaciones de publicación y suscripción y todos los aspectos de la tecnología push/pull.
8.JTS (Servicio de transacciones Java) proporciona un estándar abierto para acceder a recursos de transacciones, incluidas aplicaciones de transacciones, gestión y monitoreo de transacciones.
En la tecnología Java, JavaBeans también merece atención. Es una arquitectura de componentes estándar abierta que es independiente de la plataforma pero utiliza el lenguaje Java. Un JavaBean es una clase Java que se ajusta a la especificación JavaBeans y normalmente define cosas o conceptos en el mundo real. Las características principales de JavaBeans incluyen propiedades, métodos y eventos. Generalmente, en un entorno de desarrollo que admita la especificación JavaBeans (como Sun Java Studio e IBM VisualAge para Java), puede realizar operaciones visuales en JavaBeans o utilizar JavaBeans para construir nuevos JavaBeans. La ventaja de JavaBeans también radica en la portabilidad que ofrece Java. Ahora, EJB (Enterprise JavaBeans) extiende el concepto de JavaBeans a la arquitectura de componentes del servidor Java para admitir aplicaciones de objetos distribuidos multicapa. Además de JavaBeans, las arquitecturas de componentes típicas incluyen DCOM y CORBA, y una discusión en profundidad de estas arquitecturas de componentes está fuera del alcance de este libro.
Proyecto Java Open Source
Spring Framework Java Open Source J2EE Framework
Spring es un potente framework que resuelve muchos problemas comunes en el desarrollo J2EE. Spring proporciona una forma coherente de gestionar objetos comerciales y fomenta la buena práctica de inyectar interfaces de programación en lugar de clases. La base arquitectónica de Spring se basa en la inversión de contenedores de control utilizando propiedades de JavaBean. Sin embargo, esto es sólo una parte del panorama: Spring es único en el uso del contenedor IoC como una solución completa que se centra en todas las capas arquitectónicas después de la construcción. Spring proporciona una abstracción de acceso a datos única, incluido un marco JDBC simple y eficiente, que mejora enormemente la eficiencia y reduce posibles errores. La arquitectura de acceso a datos de Spring también se integra con Hibernate y otras soluciones de mapeo O/R. Spring también proporciona una abstracción de gestión de transacciones única que proporciona un modelo de programación consistente en varias tecnologías de gestión de transacciones subyacentes, como las transacciones JTA o JDBC. Spring proporciona un marco AOP escrito en el lenguaje Java estándar, que proporciona gestión de transacciones declarativas y otros asuntos empresariales para POJO; también puede implementar sus propios aspectos si es necesario. Este marco es lo suficientemente potente como para que las aplicaciones puedan escapar de la complejidad de los EJB y disfrutar de servicios clave asociados con los EJB tradicionales. Spring también proporciona un marco web MVC potente y flexible que se puede integrar con contenedores IoC. Spring IDE: complemento de desarrollo auxiliar Spring IDE: plataforma Eclipse.
Marco web de código abierto WebWork Java
WebWork es un marco web J2EE con un patrón MVC extraíble. Está desarrollado por la organización OpenSymphony y está comprometido con la componenteización y la reutilización de código. La última versión de WebWork es 2.1. El WebWork2.x actual fue desarrollado por Rickard Oberg, pero el WebWork actual se ha dividido en dos proyectos: Xwork1 y WebWork2. Xwork es simple, flexible y poderoso. Es una implementación de patrón de comando estándar y está completamente separada de la capa web. Xwork proporciona muchas características principales: interceptores de front-end, validación de atributos de formulario en tiempo de ejecución, conversión de tipos, potente lenguaje de expresión (OGNL - lenguaje de notación de gráficos de objetos), contenedores IoC (inversión de control) y más. WebWork2 se basa en Xwork, que maneja respuestas y solicitudes HTTP. WebWork2 utiliza ServletDispatcher para asignar solicitudes HTTP a parámetros de acción (clase de operación de capa empresarial), sesión (aplicación) y solicitud.
WebWork2 admite representación de múltiples vistas y la parte de vista puede usar JSP, Velocity, Freemarker, JasperReports, XML, etc. WebWork2.2 basado en DWR y Dojo agrega soporte AJAX. EclipseWork: complemento de Eclipse para desarrollo asistido por red.
Marco web de código abierto Struts Java
Struts es un marco MVC basado en la plataforma Sun J2EE, implementado principalmente a través de tecnología Servlet y JSP. Struts ha atraído mucha atención el año pasado porque puede satisfacer plenamente las necesidades del desarrollo de aplicaciones, es simple y fácil de usar, ágil y rápido. Struts integra Servlets, JSP, etiquetas personalizadas y recursos de mensajes en un marco unificado. Los desarrolladores no necesitan codificarse ellos mismos para implementar un conjunto completo de patrones MVC durante el desarrollo, lo que ahorra mucho tiempo. Lado de Struts: complemento de Eclipse para desarrollo asistido por Struts
Marco de capa de persistencia de código abierto Hibernate Java
Hibernate es un marco de mapeo relacional de objetos de código abierto que utiliza un método muy liviano Encapsula JDBC para que los programadores de Java puedan utilizar el pensamiento de programación de objetos para manipular la base de datos a voluntad. Hibernate se puede utilizar en cualquier situación en la que se utilice JDBC, no sólo en programas cliente Java sino también en aplicaciones web Servlet/JSP. Lo más revolucionario es que en la arquitectura J2EE que usa EJB, Hibernate puede reemplazar a CMP para completar la tarea de persistencia de datos. Herramientas de desarrollo auxiliares de Hibernate bajo la plataforma Eclipse: Leyenda de sincronización de Hibernate
Programación de trabajos de código abierto de Quartz Java
Quartz es otro proyecto de código abierto en el campo de la programación de trabajos de la organización de código abierto OpenSymphony . Se puede utilizar junto con aplicaciones J2EE y J2SE o solo. Quartz se puede utilizar para crear programaciones diarias simples o complejas para ejecutar diez, cientos o incluso decenas de miles de tareas. Los trabajos se pueden convertir en componentes Java estándar o EJB. La última versión de Quartz es Quartz 1.5.0.
Motor de plantillas de código abierto Velocity Java
Velocity es un motor de plantillas basado en Java. Permite que cualquiera haga referencia a objetos definidos por código Java simplemente usando un lenguaje de plantilla. Cuando Velocity se aplica al desarrollo web, los diseñadores de interfaces y los desarrolladores de Java pueden desarrollar un sitio web que sigue la arquitectura MVC al mismo tiempo, es decir, los diseñadores de páginas solo pueden centrarse en el efecto de visualización de la página, mientras que los desarrolladores de Java se centran en la lógica empresarial. codificación. Velocity separa el código Java de las páginas web, facilita el mantenimiento a largo plazo del sitio web y nos proporciona soluciones alternativas a JSP y PHP. Las capacidades de Velocity se extienden mucho más allá del ámbito del desarrollo de sitios web. Por ejemplo, puede generar SQL, PostScript y XML a partir de plantillas, y también puede utilizarse como herramienta independiente para generar código fuente e informes, o como componente integrado de otros sistemas. Velocity también puede proporcionar servicios de plantillas para la arquitectura de desarrollo web de Turbine. Velocity+Turbine proporciona un servicio de plantillas que permite el desarrollo de aplicaciones web utilizando un modelo MVC real. VeloEclipse: Velocity es un complemento de desarrollo auxiliar en la plataforma Eclipse.
Marco de capa de persistencia de código abierto Java de Ibatis
Utilizando el mecanismo ORM proporcionado por ibatis, los implementadores de lógica de negocios se enfrentan a objetos Java puros, que es básicamente lo mismo que implementar ORM a través de Hibernate. Para operaciones de datos específicas, Hibernate generará automáticamente declaraciones SQL, mientras que ibatis requiere que los desarrolladores escriban declaraciones SQL específicas. En comparación con los mecanismos ORM "completamente automáticos" como Hibernate, ibatis proporciona una mayor libertad para el diseño del sistema al hacer concesiones en la carga de trabajo de desarrollo de SQL y la portabilidad de la base de datos.
Como complemento útil para lograr un ORM "completamente automático", la aparición de ibatis es de gran importancia.
Compiere ERP & amp sistema ERP y CRM de código abierto
Compiere ERP & ampCRM proporciona soluciones integrales a pequeñas y medianas empresas de todo el mundo, cubriendo todas las áreas, desde la gestión de clientes hasta el suministro. cadena hasta la gestión financiera, compatible con funciones internacionales como múltiples organizaciones, múltiples monedas, múltiples modelos contables, múltiples cálculos de costos, múltiples idiomas y múltiples sistemas tributarios. Fácil de instalar, implementar y utilizar. En tan solo unas horas, puede utilizar potentes funciones como Adquisición-Compra-Pago de factura, Cotización-Pedido-Cobro de factura, Productos y precios, Gestión de activos, Relaciones con el cliente, Relaciones con proveedores, Relaciones con los empleados, Análisis de rendimiento empresarial y más. .
Blog continuo Blog de código abierto de Java
Este blog está bellamente diseñado y el código fuente es un buen material de aprendizaje. Admite funciones de blogs como la funcionalidad de comentarios, edición HTML WYSIWYG, TrackBack, proporciona plantillas de página, distribución RSS, gestión de blogs y proporciona una interfaz XML-RPC.
Herramienta de desarrollo de código abierto Eclipse Java
La plataforma Eclipse es un marco de desarrollo donado por IBM a la comunidad de fuentes de desarrollo. Es famoso no porque IBM afirme haber invertido un total de 40 millones de dólares en su desarrollo, sino por el resultado de una inversión tan enorme: una arquitectura madura, bien diseñada y escalable.
Gestión de proyectos de código abierto XPlanner Java
XPlanner es una herramienta de seguimiento y planificación de equipos XP basada en web. XP tiene conceptos de desarrollo únicos, como iteración e historias de usuarios, y XPlanner proporciona las herramientas de gestión correspondientes. XPlanner apoya el proceso de desarrollo de XP y resuelve los problemas encontrados en el desarrollo de proyectos utilizando ideas de XP. XPlanner presenta planificación de modelos simple, tarjetas de notas virtuales), iteración, seguimiento de historias de usuario y registros de trabajo, las historias sin terminar se iteran automáticamente, se rastrea el tiempo de trabajo, se genera la eficiencia del equipo, se generan informes de tiempo de trabajo individuales y proporciona soporte de interfaz SOAP.
Base de datos DBMS de código abierto de Java
HSQLDB (Hypersonic SQL) es una base de datos relacional desarrollada en Java puro, que proporciona acceso a datos controlado por JDBC. Admite la sintaxis SQL estándar ANSI-92. Y ocupa muy poco espacio. Sólo cuesta alrededor de 160 000, con un motor de base de datos rápido.
Portal Liferay Java Open Source
Representa una aplicación J2EE completa, utilizando tecnologías como Web, EJB y JMS, especialmente la interfaz front-end que utiliza la tecnología framework Struts. El archivo de configuración del portlet basado en XML se puede expandir de forma libre y dinámica, utilizando servicios web para admitir la adquisición de información remota y utilizando Apache Lucene para lograr la recuperación de texto completo.
Características principales:
1. Proporciona una interfaz de inicio de sesión única y múltiples modos de autenticación (LDAP o SQL);
2. y roles;
3. Los usuarios pueden personalizar el diseño del portal según sus propias necesidades;
4. Puede ejecutarse en servidores de aplicaciones J2EE convencionales, como JBoss +Jetty/Tomcat, Jonas.
5. Admite bases de datos convencionales, como PostgreSQL, MySQL;
6. Se utilizan la tercera versión de proyectos de código abierto, como Hibernate, Lucene y Struts. p>
7. Admite múltiples idiomas, incluido el chino;
8. Adopta las tecnologías más avanzadas como Java, EJB, JMS, SOAP, XML, etc. p>Portal de código abierto JetSpeed Java
Jetspeed es una implementación de un portal de información empresarial (EIP) de código abierto que utiliza Java y XML. Los usuarios pueden utilizar un navegador, teléfono móvil u otro dispositivo que admita el protocolo WAP para acceder al portal de información creado por Jetspeed para obtener información. Jetspeed desempeña el papel de un concentrador de información, que puede centralizar la información y proporcionársela a los usuarios de manera conveniente.
Jetspeed tiene las siguientes características:
* La API del Portlet de Java está a punto de estandarizarse.
*Diseño basado en plantillas, incluidos JSP y Velocity.
* Admite el intercambio remoto de contenido XML a través de tecnología abierta de sincronización de contenido.
*Personaliza la página de inicio predeterminada
*Usa la base de datos para la autenticación de usuarios.
*Tecnología de almacenamiento en caché para acelerar la respuesta de la página.
*Admite contenido sincronizado a través de una rica tecnología de resumen de sitios web.
*Integración con Cocoon, WebMacro y Velocity.
* Compatibilidad con lenguaje de marcado inalámbrico (WML)
* Registre portlets mediante archivos de configuración XML.
*Compatibilidad total con Archivo de aplicaciones web (WAR).
*Infraestructura para el desarrollo de aplicaciones web
*El contenido remoto se puede almacenar en caché localmente.
*Sincronizado con Avantgo
*Se puede portar a todas las plataformas que admitan JDK1.2 y Servlet 2.2.
*Integración con módulos y servicios de turbinas
*Se pueden generar diferentes servicios personalizados en función de diferentes configuraciones de usuario, tipo de medio de instalación e idioma.
*Los servicios de persistencia permiten que los portlets almacenen fácilmente el estado de cada usuario, página y portlet.
*Utilice tecnología de máscara para permitir a los usuarios seleccionar el color y mostrar las propiedades de los portlets.
*Función de personalización del usuario Sí, los administradores pueden seleccionar portlets y definir el diseño de las páginas personales.
*Almacenar PSML en la base de datos.
*Administre usuarios, grupos, roles y permisos a través de los portlets de seguridad de Jetspeed.
*Control de acceso al portlet basado en roles
Servidor J2EE de código abierto Java JOnAS
JOnAS es una implementación J2EE de código abierto desarrollada por la Asociación ObjectWeb. Integre Tomcat o Jetty como su contenedor web para garantizar el cumplimiento de las especificaciones de Servlet 2.3 y JSP 1.2. El servidor JOnAS se basa en las siguientes API de Java o las implementa: JCA, JDBC, JTA, JMS, JMX, JNDI, JAAS, JavaMail.
Servidor J2EE de código abierto Java JFox3.0
JFox es un servidor de aplicaciones Java EE de código abierto dedicado a proporcionar servidores de aplicaciones Java EE livianos. A partir de 3.0, JFox proporciona un marco MVC que admite modularidad para simplificar el desarrollo de aplicaciones web y EJB. Si está buscando una plataforma de desarrollo Java EE simple, liviana, eficiente y perfecta, entonces JFox es exactamente lo que necesita.
JFox 3.0 tiene las siguientes características:
1. El microkernel IoC rediseñado incorpora el pensamiento modular OSGi.
2. Diseñado como una arquitectura integrada, se puede integrar e implementar con cualquier servidor web Java.
3. Admite especificaciones EJB3 y JPA, y admite componentes EJB y JPA dentro y fuera del contenedor.
4. Admite la publicación EJB en servicios web.
5. La información en JOTM (son todos documentos HTML rígidos y aburridos. Esto es simplemente insoportable para las personas que están obsesionadas con la navegación web. Están ansiosas por ver contenido interactivo en WEN, y los desarrolladores también lo están. Estamos ansiosos por crear una clase de aplicaciones que se puedan ejecutar en la WEB sin considerar las plataformas de hardware y software. Por supuesto, estos programas también tienen una gran seguridad y los ingenieros de SUN no pueden cumplir con este requisito. En 1994, comenzaron a aplicar la tecnología OAK a la WEB y desarrollaron la primera versión de HotJava. Cuando SUN se lanzó oficialmente en nombre de Java en 1995, casi todos los desarrolladores WEB pensaron: Oh, esto es exactamente lo que quiero. . Entonces Java se convirtió en una estrella deslumbrante y el patito feo de repente se convirtió en un cisne blanco.
Existen diferentes versiones de entornos de desarrollo Java, como el Java Development Kit de Sun, o JDK para abreviar. Más tarde, Microsoft lanzó el entorno de desarrollo Java Microsoft Visual J++ que admite especificaciones Java, denominado VJ++.
Características de Java
1. Independencia de plataforma
La independencia de plataforma significa que Java puede ejecutarse en diferentes plataformas. Java introduce el principio de la máquina virtual y se ejecuta en la máquina virtual para implementar la interfaz Java entre diferentes plataformas. Los programas escritos en Java se pueden apreciar en todo el mundo. Los tipos de datos de Java son independientes de la máquina. La máquina virtual Java se basa en hardware y sistemas operativos, implementa funciones de interpretación y ejecución de códigos binarios Java y proporciona interfaces para diferentes plataformas.
2. Seguridad
La programación Java es similar a C++. Los lectores que hayan aprendido C++ pronto comprenderán la esencia de Java. Java abandona la operación directa de punteros de C++ en direcciones de memoria. Cuando el programa se está ejecutando, el sistema operativo asigna la memoria, lo que puede evitar que los virus invadan el sistema a través de punteros. Java proporciona un administrador de seguridad para programas para evitar el acceso ilegal a los programas.
3. Orientado a objetos
Java absorbe el concepto orientado a objetos de C++, encapsula datos en clases y utiliza las ventajas de las clases para lograr la simplicidad y la facilidad de mantenimiento del programa. Funciones como la encapsulación de clases y la herencia permiten que el código del programa se compile solo una vez y luego se reutilice mediante las funciones anteriores. Los programadores sólo necesitan centrarse en el diseño y la aplicación de clases e interfaces. Java proporciona muchas clases de objetos generales y los métodos de las clases principales se pueden utilizar mediante herencia. En Java, la relación de herencia de las clases es única y no múltiple. Una subclase tiene solo una clase principal y la clase principal de una subclase tiene otra clase principal. La relación de herencia entre la clase Object y sus subclases proporcionada por Java es como un árbol invertido. La clase raíz es la clase Object, que tiene funciones poderosas que a menudo se utilizan.
4. Distribuido
Java está construido sobre una plataforma de red TCP/IP extendida. Las funciones de la biblioteca proporcionan métodos para enviar y recibir información utilizando los protocolos HTTP y FTP. Esto hace que sea tan fácil para los programadores trabajar con archivos en la red como con archivos locales.
Fuerte
Java se dedica a comprobar si hay errores al compilar y ejecutar programas. La verificación de tipos ayuda a detectar muchos errores que ocurren en las primeras etapas del desarrollo. Java manipula la memoria por sí mismo, reduciendo la posibilidad de errores de memoria. Java también implementa matrices verdaderas para evitar la posibilidad de que se sobrescriban los datos. Estas características acortan enormemente el ciclo de desarrollo de aplicaciones Java. Y Java también proporciona funciones como detección de puntero nulo, detección de límites de matriz, salida anormal, inspección de código de bytes, etc.
Lenguajes Java y C/C++
Java proporciona todas las características de un lenguaje potente, pero casi sin ambigüedad. C++ tiene poca seguridad, pero tanto C como C++ son aceptados por todos, por lo que Java está diseñado en forma de C++ para que sea más fácil de aprender para todos.
Java elimina operaciones de puntero, estructuras, typedefs, #define, liberación de memoria y otras funciones en el lenguaje C++, reduciendo el 50% de los errores comunes, haciendo que las funciones del lenguaje Java sean muy refinadas. Y debido a que Java es tan pequeño, todo el intérprete solo requiere 215 KB de RAM y se agregan algunas funciones muy útiles, como la recopilación automática de fragmentaciones.
Java implementa la tecnología básica orientada a objetos de C++ y realiza algunas mejoras (algunas funciones se eliminan en aras de la simplicidad del lenguaje). Java maneja los datos de la misma manera que los datos de los objetos se manejan con las interfaces de objetos.
Java e Internet
Sabemos que los primeros www solo podían transmitir texto e imágenes. La aparición de Java realizó páginas interactivas, lo que fue una gran revolución.
Java no está diseñado para Internet o www, y también se puede utilizar para escribir aplicaciones independientes. Java es un lenguaje orientado a objetos, similar a C++, por lo que a los programadores que dominan C++ les resultará mucho más fácil aprender Java. Los programas Java deben compilarse. Se colocan en servidores de Internet. Cuando un usuario accede al servidor, el programa Java se descarga en la computadora del usuario local y el navegador lo interpreta y ejecuta.
En realidad, existen dos tipos de programas Java: Una aplicación Java es un programa completo, como un navegador web. Otro subprograma de Java es un programa que se ejecuta en un navegador web.
Programas Java y sus navegadores HotJava proporciona una manera para que su navegador ejecute programas. Puede reproducir sonidos directamente desde su navegador o reproducir animaciones en la página, y Java puede indicarle a su navegador cómo manejar nuevos tipos de archivos. HotJava podrá mostrar estos videos cuando podamos transmitirlos en la línea de 2400 baudios.
Java y el comercio electrónico
El comercio electrónico es un tema candente en la actualidad. Sin embargo, los lenguajes de programación tradicionales no son adecuados para los sistemas de comercio electrónico. El comercio electrónico requiere un código de programa con requisitos básicos: seguridad, confiabilidad y la capacidad de hacer negocios con clientes de todo el mundo que se ejecutan en diferentes plataformas. Con su sólida seguridad, independencia de plataforma, independencia de estructura de hardware, lenguaje conciso y naturaleza orientada a objetos, Java tiene ventajas incomparables entre los lenguajes de programación de redes y se ha convertido en el lenguaje preferido para implementar sistemas de comercio electrónico.