0% encontró este documento útil (0 votos)
23 vistas17 páginas

Características y Aplicaciones de Java y Rust

Digitales

Cargado por

britanny holguin
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
23 vistas17 páginas

Características y Aplicaciones de Java y Rust

Digitales

Cargado por

britanny holguin
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

UNIVERSIDAD DE GUAYAQUIL

FALCULTAD DE INGENIERIA INDUSTRIAL

TAREA

ASIGNATURA:
HERRAMIENTAS DIGITALES

CURSO:
IND-S-MA-2-1

PROFESOR:
ING. LUIGGI VASCOS

ESTUDIANTE:

HOLGUIN ARANEA BRITANNY GABRIELA


1.Java
Java es un lenguaje de programación orientado a objetos . Todo en Java está asociado con
clases y objetos, junto con sus atributos y métodos. Por ejemplo: en la vida real, un coche es
un objeto. El automóvil tiene atributos, como peso y color, y métodos, como conducción y
freno.

Caracteristicas principales de Java:


1.
Orientación a objetos: Java es un lenguaje orientado a objetos, lo que significa que
todo en Java es un objeto, lo que permite la modularidad, reutilización y extensibilidad
del código.
2.
Portabilidad: La plataforma Java está diseñada para ser independiente de la plataforma,
lo que significa que el código escrito en Java puede ejecutarse en cualquier dispositivo
que tenga un entorno de ejecución Java (JRE) instalado, sin importar el sistema
operativo subyacente.
3.
Seguridad: Java tiene un sólido modelo de seguridad que protege contra virus y
malware. La máquina virtual Java (JVM) utiliza el concepto de sandboxing para
garantizar que las aplicaciones Java se ejecuten de manera segura sin acceder
directamente al sistema operativo.
4.
Multi-hilo (concurrency): Java ofrece soporte integrado para programación
concurrente mediante el uso de hilos (threads), lo que permite que las aplicaciones
realicen múltiples tareas simultáneamente.
5.
Independiente de la arquitectura: El código Java se compila en un formato intermedio
conocido como bytecode, que puede ejecutarse en cualquier máquina virtual Java
(JVM). Esto significa que el mismo archivo .class puede ejecutarse en cualquier
dispositivo que tenga una JVM.
6.
Rico ecosistema de bibliotecas: Java cuenta con una gran cantidad de bibliotecas y
frameworks de código abierto que facilitan el desarrollo de aplicaciones. Esto incluye
bibliotecas estándar como Java Standard Edition (Java SE), Java Enterprise Edition (Java
EE) para desarrollo empresarial, y frameworks populares como Spring, Hibernate, etc.
7.
Fuerte tipado y seguridad de tipos: Java es un lenguaje de programación fuertemente
tipado, lo que significa que los tipos de datos se verifican en tiempo de compilación, lo
que ayuda a detectar errores antes de que se ejecuten las aplicaciones.
8.
Recopilación de basura (Garbage Collection): Java tiene un sistema de recopilación
de basura automático que gestiona la memoria automáticamente, liberando la memoria
de objetos no utilizados para evitar fugas de memoria y mejorar la eficiencia de la
administración de memoria.

Aplicaciones de Java:
1.
Desarrollo web: Java es ampliamente utilizado en el desarrollo web, tanto para el
desarrollo de aplicaciones web como para la creación de servidores web. Frameworks
como Spring y Apache Struts son populares en este ámbito.
2.
Aplicaciones empresariales: Java es muy popular en el desarrollo de aplicaciones
empresariales debido a su portabilidad, seguridad y robustez. Muchas grandes
empresas utilizan Java para desarrollar sistemas de gestión empresarial (ERP), sistemas
de gestión de relaciones con los clientes (CRM), sistemas de gestión de contenido (CMS)
y más.
3.
Aplicaciones de escritorio: Aunque la tendencia ha cambiado hacia las aplicaciones
web y móviles, Java todavía se utiliza en el desarrollo de aplicaciones de escritorio,
especialmente en entornos empresariales donde se requiere una gran escalabilidad y
portabilidad.
4.
Aplicaciones móviles: Java ha sido históricamente utilizado para el desarrollo de
aplicaciones móviles en Android. Aunque ahora Kotlin se ha convertido en el lenguaje
preferido para el desarrollo de Android, Java sigue siendo utilizado en muchas
aplicaciones existentes y en partes de nuevas aplicaciones.
5.
Juegos: Java se utiliza en el desarrollo de juegos, tanto en aplicaciones de escritorio
como en aplicaciones móviles. Frameworks como LibGDX y JMonkeyEngine son
populares entre los desarrolladores de juegos Java.
6.
Sistemas embebidos: Java también se utiliza en sistemas embebidos y dispositivos IoT
(Internet de las cosas), donde su portabilidad y seguridad son beneficiosas.
7.
Finanzas: En la industria financiera, Java se utiliza ampliamente en el desarrollo de
aplicaciones de trading, sistemas de gestión de riesgos, sistemas de liquidación y
compensación, entre otros.
8.
Educación: Java es un lenguaje popular para enseñar programación en muchas
instituciones educativas debido a su sintaxis clara y su amplia adopción en la industria.

Historia de Java:
Java fue creado por James Gosling en Sun Microsystems en 1995. El objetivo inicial
era desarrollar un lenguaje de programación para dispositivos electrónicos de
consumo, pero Java rápidamente se convirtió en un lenguaje de uso general para
aplicaciones empresariales y web. En 2004, Sun Microsystems fue adquirida por Oracle
Corporation, que continúa desarrollando y manteniendo el lenguaje Java.

Conclusion:
Java es un lenguaje de programación versátil y poderoso que se utiliza en una amplia
gama de aplicaciones. Su portabilidad, facilidad de aprendizaje, robustez y seguridad lo
convierten en una opción atractiva para los desarrolladores de software. Con una gran
comunidad y una amplia gama de recursos disponibles, Java sigue siendo uno de los
lenguajes de programación más populares del mundo.
2.Rust
Rust es un lenguaje de programación de sistema diseñado para ser seguro, concurrente y
práctico. Fue creado por Mozilla Research y lanzado en 2010. Rust se diferencia de otros
lenguajes de programación en varios aspectos clave: 1. **Seguridad a la memoria. Rust se
utiliza en una variedad de aplicaciones y escenarios debido a sus características de seguridad,
rendimiento y facilidad de uso. Algunos de los principales casos de uso de Rust incluyen:
**Desarrollo de sistemas**: Rdad de la memoria**:

Caracteristicas principales de Rust:


• Seguridad de la memoria: Rust está diseñado para evitar errores comunes de memoria
como punteros nulos y fugas de memoria. Esto se logra mediante un sistema de propiedad y
préstamos, que garantiza que la memoria se use de manera segura y se libere
automáticamente cuando ya no sea necesaria.

• Rendimiento: Rust ofrece un rendimiento comparable al de C++ moderno, lo que lo


hace adecuado para aplicaciones donde el rendimiento es crítico. El compilador de Rust
optimiza el código de manera eficiente y permite un control preciso sobre la memoria y los
recursos del sistema.

• Concurrencia: Rust proporciona características integradas para la programación


concurrente, lo que facilita la escritura de código seguro y escalable para sistemas multihilo. El
sistema de tipos de Rust ayuda a prevenir errores de concurrencia comunes como las
condiciones de carrera.
• Modernidad: Rust es un lenguaje moderno con características como inferencia de tipos,
expresiones lambda y coincidencia de patrones. Estas características hacen que el código Rust
sea conciso, expresivo y fácil de leer.

¿Por que Microsoft eligio Rust?


La decisión de Microsoft de adoptar Rust como un lenguaje de programación para ciertos proyectos y
casos específicos se debe a diversos factores tanto estratégicos como técnicos. A continuación, se
presentan razones mas detalladas:

• Popularidad: Rust es uno de los lenguajes de programación de más rápido crecimiento en la


actualidad, con una comunidad de desarrolladores activa y en constante expansión.

• Seguridad: La seguridad de la memoria es una prioridad para Microsoft, y Rust ofrece un enfoque
sólido para prevenir errores de memoria comunes.

• Rendimiento: El alto rendimiento de Rust lo hace adecuado para aplicaciones exigentes, como
sistemas operativos y servicios en la nube.

• Futuro: Microsoft cree que Rust tiene un futuro brillante y está invirtiendo en el desarrollo y la
adopción del lenguaje.

Componentes del ecosistema de Rust:


El ecosistema de Rust está compuesto por varias herramientas y términos importantes:

• Crate: Una unidad de compilación y vinculación en Rust. Puede existir como código
fuente o como ejecutable binario o biblioteca binaria.
• Package: Un proyecto de Rust que contiene uno o más crates y un archivo Cargo.toml
que describe cómo compilarlos.
• rustup: El instalador y actualizador de la cadena de herramientas de Rust.
• Cargo: La herramienta de administración de paquetes de Rust.
• rustc: El compilador de Rust.
• crates.io: El registro de crates de la comunidad de Rust.

Conclusion:
Rust es un lenguaje de programación potente y versátil que ofrece una combinación única de
seguridad, rendimiento y modernidad.

Su creciente popularidad y el apoyo de empresas como Microsoft lo convierten en una opción


atractiva para el desarrollo de software escalable y de alto rendimiento.

LENGUAJE DE PROGRAMACION DE RUST

3.HTML
El HTML o Lenguaje de Marcas de Hipertexto es lo que da estructura y significado al contenido
de una página web. Esto lo logra por medio de los hipertextos, conocidos como etiquetas. El
hipertexto nos ayuda a conectar páginas web entre sí, ya sea dentro de un sitio o entre
diferentes sitios web.

Caracteristicas principales de HTML:


• Estructura: Define la estructura básica de una página web, organizando la forma en que
se mostrará su contenido.
• Elementos: Permite incluir diversos elementos como texto, imágenes, listas, tablas,
formularios, enlaces, entre otros.
• Enlaces: Facilita la creación de hipervínculos para conectar diferentes páginas web o
documentos.
• Simplicidad: Es un lenguaje relativamente fácil de aprender y usar, incluso para
principiantes.
• Compatibilidad: Es compatible con todos los navegadores web modernos.

Diferencias con lenguajes de programacion:


HTML (HyperText Markup Language) es un lenguaje de marcado diseñado específicamente para
crear la estructura y el contenido de páginas web. Su función principal es describir la
información que se muestra en una página web, como texto, imágenes, enlaces y otros
elementos multimedia. En cambio, los lenguajes de programación como Python, JavaScript o
Java se utilizan para crear aplicaciones, realizar cálculos, procesar datos, entre otras tareas .
Historia del HTML:
La historia del HTML comienza en 1989, cuando Tim Berners-Lee propuso un sistema de
hipertexto para intercambiar información en Internet. En 1991, lanzó la primera versión de
HTML (lenguaje de marcado de hipertexto) y el primer navegador web.

Desde entonces, HTML ha seguido evolucionando hacia nuevas versiones


y estándares como HTML4, XHTML y la versión actual, HTML5, lanzada en 2014.

Convertirse en el estándar moderno para la creación de contenido web.

¿Que son las etiquetas de HTML?


Las etiquetas HTML son los bloques de construcción básicos del lenguaje. Son fragmentos de
texto encerrados entre corchetes angulares (< >) que definen el tipo de elemento y sus
atributos.

Tipos de etiquetas:
Las etiquetas de HTML se pueden clasificar en varios tipos según su función:

1. Etiquetas de estructura: Se utilizan para definir la estructura básica de la página web, como
<html>, <head>, <body>, <header>, <footer>, <nav>, <section>, <article>, <aside>, etc.

2. Etiquetas de texto: Permiten dar formato y organizar el texto en la página, como <p> para
párrafos, <h1> a <h6> para encabezados de diferentes niveles, <strong> para texto en negrita,
<em> para texto en cursiva, <span> para aplicar estilos en línea, etc.

3. Etiquetas de lista: Se utilizan para crear listas ordenadas (<ol>) y listas desordenadas (<ul>),
así como los elementos de la lista (<li>).

4. Etiquetas de enlace y medios: Permiten enlazar contenido y multimedia, como <a> para
enlaces, <img> para imágenes, <audio> para audio, <video> para video, etc.
5. Etiquetas de formulario: Se utilizan para crear formularios interactivos, como <form>,
<input>, <textarea>, <select>, <button>, etc.

6. Etiquetas semánticas: Introducidas en HTML5, estas etiquetas proporcionan significado


semántico al contenido, como <header>, <footer>, <nav>, <article>, <section>, <aside>, etc.

7. Etiquetas de tabla: Se utilizan para crear tablas en HTML, como <table>, <tr> para filas, <td>
para celdas de datos, <th> para encabezados de tabla, etc.

Estas son solo algunas de las etiquetas más comunes en HTML, pero hay muchas más que se
pueden utilizar para diferentes propósitos.

Estructura básica de un documento HTML:


Un documento HTML básico se compone de las siguientes secciones:
• <!DOCTYPE html>: Declaración de tipo de documento HTML.
• <html>: Etiqueta raíz que contiene todo el contenido HTML.
• <head>: Encabezado del documento, donde se incluye información como el título de la
página y metadatos.
• <body>: Cuerpo del documento, donde se define el contenido principal que se mostrará
en la página web.
• </html>: Etiqueta de cierre del documento HTML.
Ejemplos de etiquetas HTML comunes: • <h1>…<h6>: Títulos de diferentes niveles.
• <p>: Párrafo de texto.
• <img>: Imagen.
• <ul>: Lista sin numerar.
• <ol>: Lista numerada.
• <table>: Tabla.
• <a>: Enlace.
• <b>: Texto en negrita.
• <i>: Texto en cursiva.

Conclusion:
HTML es el lenguaje básico para la creación de páginas web.

Su simplicidad, flexibilidad y compatibilidad universal la convierten en una


herramienta imprescindible para cualquier desarrollador web.

Ejemplo del uso de los titulos y subtitulos podria ser:

4. No SQL
Las bases de datos NoSQL, también conocidas como "no relacionales" o "bases de datos sin
SQL", son un tipo de base de datos que se diferencia de las bases de datos relacionales
tradicionales (SQL) en su estructura y enfoque para el almacenamiento y la gestión de datos.
Caracteristicas principales de las bases de datos NoSQL:
1. Modelo flexible: Las bases de datos NoSQL suelen ser schema-less o schema-flexible, lo
que significa que no requieren un esquema predefinido y permiten almacenar datos de forma
flexible, adaptándose fácilmente a cambios en la estructura de los datos.

2. Escalabilidad horizontal: Las bases de datos NoSQL están diseñadas para escalar
horizontalmente de manera eficiente, lo que significa que pueden manejar grandes volúmenes
de datos distribuyendo la carga de trabajo en varios servidores.

3. Alto rendimiento: Están optimizadas para operaciones de lectura y escritura de alto


rendimiento, lo que las hace adecuadas para aplicaciones con grandes volúmenes de datos y
alta concurrencia.

4. Modelos de datos variados: Soportan una variedad de modelos de datos, como documentos
(como en MongoDB), columnares (como en Cassandra), clave-valor (como en Redis), grafos
(como en Neo4j), entre otros.

5. Replicación y tolerancia a fallos: Suelen ofrecer capacidades de replicación y tolerancia a


fallos integradas para garantizar la disponibilidad y la fiabilidad de los datos incluso en entornos
distribuidos.

6. Fácil integración con tecnologías modernas: Son compatibles con tecnologías y herramientas
modernas, como la computación en la nube, contenedores, microservicios y análisis en tiempo
real.

7. Escalabilidad y rendimiento lineales: A menudo, el rendimiento y la escalabilidad mejoran


linealmente con la adición de nuevos nodos, lo que facilita el crecimiento de la infraestructura a
medida que aumentan las demandas de la aplicación.

Casos de usos de las bases de datos NoSQL:


Las bases de datos NoSQL son particularmente adecuadas para aplicaciones que requieren:
• Almacenamiento de grandes volúmenes de datos no estructurados o
semiestructurados: Como datos de redes sociales, datos de sensores, registros de actividad,
etc.
• Escalabilidad horizontal para manejar grandes cantidades de datos y tráfico:
Como aplicaciones web a gran escala, comercio electrónico, juegos en línea, etc.
• Alto rendimiento para consultas de baja latencia y operaciones de lectura y
escritura intensivas: Como aplicaciones móviles, análisis en tiempo real, sistemas de
recomendación, etc.

Tipos de modelos de datos NoSQL:


Existen diferentes modelos de datos NoSQL, cada uno con sus propias características y casos
de uso:
• Bases de datos clave-valor: Almacenan datos como pares de clave-valor, donde la
clave es un identificador único y el valor puede ser cualquier tipo de dato.
• Bases de datos documentales: Almacenan datos en documentos JSON o BSON, que
son estructuras jerárquicas que pueden contener diferentes tipos de datos.
• Bases de datos de grafos: Almacenan datos como grafos, donde los nodos
representan entidades y las aristas representan relaciones entre esas entidades.
• Bases de datos NoSQL columnares: Almacenan datos en columnas, donde cada
columna representa un atributo específico de un conjunto de datos.

Ventajas de las bases de datos NoSQL:


1. Escalabilidad horizontal: Las bases de datos NoSQL están diseñadas para escalar
horizontalmente, lo que significa que pueden manejar grandes volúmenes de datos
distribuyendo la carga de trabajo en varios servidores. Esto permite un crecimiento más sencillo
y económico a medida que aumentan los requisitos de almacenamiento y rendimiento.

2. Flexibilidad en el esquema de datos: No requieren un esquema fijo predefinido, lo que


significa que pueden manejar datos no estructurados o semiestructurados sin necesidad de
modificar el esquema de la base de datos. Esto facilita la adaptación a cambios en la estructura
de los datos y permite una mayor agilidad en el desarrollo de aplicaciones.

3. Alto rendimiento: Están optimizadas para operaciones de lectura y escritura de alto


rendimiento, lo que las hace adecuadas para aplicaciones con grandes volúmenes de datos y
alta concurrencia. Además, muchas bases de datos NoSQL ofrecen capacidades de
almacenamiento en caché y procesamiento paralelo para mejorar aún más el rendimiento.

5. Modelos de datos variados: Soportan una variedad de modelos de datos, como


documentos, columnares, clave-valor, grafos, entre otros. Esto permite elegir el modelo de
datos más adecuado para cada aplicación y optimizar el rendimiento y la eficiencia del
almacenamiento.

Desventajas de las bases de datos NoSQL:


1. Falta de soporte para transacciones ACID: Muchas bases de datos NoSQL sacrifican el
soporte para transacciones ACID (Atomicidad, Consistencia, Aislamiento y Durabilidad) en
favor de un mejor rendimiento y escalabilidad. Esto puede ser problemático para aplicaciones
que requieren garantías estrictas de integridad y consistencia de datos.

2. Complejidad de consultas: Algunas bases de datos NoSQL, especialmente las que utilizan
modelos de datos no relacionales como clave-valor o documentos, pueden tener limitaciones
en cuanto a las operaciones de consulta y la capacidad de realizar consultas complejas que
involucren múltiples relaciones entre datos.

3. Falta de herramientas y ecosistema maduro: Aunque el ecosistema de las bases de datos


NoSQL ha crecido significativamente en los últimos años, aún puede carecer de algunas
herramientas y tecnologías maduras en comparación con las bases de datos relacionales. Esto
puede dificultar la adopción y la integración en algunos casos.

4. Mayor curva de aprendizaje: Debido a la variedad de modelos de datos y tecnologías


disponibles en el espacio NoSQL, puede haber una curva de aprendizaje más pronunciada
para los desarrolladores que están acostumbrados a trabajar con bases de datos relacionales.

Conclusion:
Las bases de datos NoSQL son una opción cada vez más popular para aplicaciones que
requieren flexibilidad, escalabilidad y alto rendimiento para manejar grandes volúmenes de
datos diversos y cambiantes. Sin embargo, es importante considerar las ventajas y desventajas
de las bases de datos NoSQL al elegir la tecnología de base de datos adecuada para un
proyecto específico.

LENGUAJE DE PROGRAMACION DE NoSQL:


5. C#
C# (léase C Sharp), es una evolución que Microsoft realizó de este lenguaje, tomando lo mejor
de los lenguajes C y C++, y ha continuado añadiéndole funcionalidades, tomando de otros
lenguajes, como java, algo de su sintaxis evolucionada. Lo orientó a objetos para toda su
plataforma NET (tanto Framework como Core), y con el tiempo adaptó las facilidades de la
creación de código que tenía otro de sus lenguajes más populares, Visual Basic, haciéndolo tan
polivalente y fácil de aprender como éste, sin perder ni un ápice de la potencia original de C. En
la versión de .NET Core, se ha reconstruido por completo su compilador, haciendo las
aplicaciones un 600% más rápidas.
CARACTERÍSTICAS PRINCIPALES C#
Algunas características principales de C# son:

1. Orientado a objetos: C# es un lenguaje orientado a objetos que permite la encapsulación,


la herencia y el polimorfismo.

2. Tipado fuerte y seguro: C# es un lenguaje de tipado estático que garantiza la seguridad de


tipos durante la compilación.

3. Interoperabilidad: Permite la interoperabilidad con otros lenguajes de programación y


plataformas a través de la plataforma .NET.

4. Gestión automática de memoria: Utiliza el recolector de basura (garbage collector) para


gestionar automáticamente la memoria, lo que ayuda a evitar fugas de memoria.

5. Asincronía y await: C# ofrece soporte para programación asincrónica mediante las palabras
clave async y await, lo que permite escribir código más eficiente y receptivo.

6. LINQ (Language Integrated Query): Integra consultas directamente en el lenguaje, lo que


facilita el manejo y la manipulación de datos.
7. Propiedades y eventos: C# ofrece un sistema de propiedades y eventos que permite la
implementación de patrones de diseño como el Observador.

8. Extension methods (métodos de extensión): Permite agregar métodos a clases existentes


sin modificarlas, lo que facilita la extensibilidad del código.

9. Seguridad: C# proporciona características de seguridad, como el control de acceso a


miembros y la verificación de tipos, para garantizar la integridad y la seguridad del código.

https://bsw.es/que-es-c/

También podría gustarte