Apuntes, resúmenes, trabajos, exámenes y ejercicios de Informática de Universidad

Conceptos Esenciales de OOP, Arquitectura de Capas y Desnormalización de Datos

Informática3,36 KB

Diagrama de Componentes y Arquitectura de Capas

El Diagrama de Componentes muestra la arquitectura basada en tres capas:

  • Capa de Usuario: (Interfaces)
  • Capa de Lógica/Negocio: (Reglas de negocio)
  • Capa de Datos: (Base de datos)

Nota: Se utilizan como referencia las interfaces y menús definidos previamente en el diseño de la interfaz.

Conceptos Fundamentales de Orientación a Objetos (OOP)

Definición de Clase

Una Clase se define como la combinación de: Identidad + Estado + Comportamiento.

Propiedades Clave de los Objetos

Encapsulamiento
Los objetos ocultan sus atributos, estado y comportamiento de otros objetos.
Herencia
Un objeto puede heredar atributos y comportamiento de otros objetos.
Overriding (Sobreescritura)
Propiedad (presente en algunos lenguajes)
...
Continuar leyendo "Conceptos Esenciales de OOP, Arquitectura de Capas y Desnormalización de Datos" »

Fundamentos de Java EE: JSP, Enterprise Beans y Servicios Web REST

Informática6,68 KB

¿Qué es un JSP?

Java Server Pages (JSP) permite separar la lógica de la aplicación de la presentación. La lógica de negocio se mantiene en los servlets, mientras que la presentación dinámica se gestiona con JSP. Las páginas JSP son compiladas por el servidor y ejecutadas como páginas normales. Requieren un servidor compatible, como Apache Tomcat.

Contenido en una JSP

Un archivo JSP es un fichero de texto que se compila en un servlet (pagina.jsp → .java → .class). Se ejecuta en el servidor y devuelve código HTML.

Contiene:

  • Etiquetas HTML estándar.
  • Etiquetas propias de JSP, como:
    • <%@ %> (Directivas de configuración)
    • <%! %> (Declaración de variables y funciones)
    • <% %> (Bloque de código Java)
    • <%= %> (Expresiones
...
Continuar leyendo "Fundamentos de Java EE: JSP, Enterprise Beans y Servicios Web REST" »

Diseño y elementos de la arquitectura de software: componentes, nodos y capas

Informática3,1 KB

Diseño de arquitectura de software

Diseño de Arquitectura de Software: define los componentes estructurales más importantes del software y sus relaciones.

  • Datos del proyecto: diseño de la estructura de datos necesarios para ejecutar el software.
  • Sistema de diseño: diseño de producto y procedimiento (7): afina detalles y la descripción del procedimiento de los componentes estructurales de la arquitectura de software.
  • Diseño de interfaces: describe cómo el software debe comunicar dentro de sí mismo (interfaces internas), con otros sistemas (interfaces externas) y con las personas que lo usan (interfaz de usuario).

Diagrama de componentes vs. Clase: similitudes

Diagrama de componentes x Clase:

  • Ambos pueden implementar una serie de interfaces.
...
Continuar leyendo "Diseño y elementos de la arquitectura de software: componentes, nodos y capas" »

Fundamentos de Sistemas de Radiotelefonía Móvil: PMR vs PMT y Conceptos Celulares

Informática3,51 KB

Definiciones Fundamentales de Sistemas de Radiotelefonía

PMR (Private Mobile Radio)

  • (Generalmente) no conectados directamente a la red pública telefónica.
  • Se modelan como sistemas de espera.

PMT (Personal Mobile Telecommunications)

  • Conectados a la red pública telefónica.
  • Se modelan como sistemas de pérdidas.

Características de PMR

Las principales características de los sistemas de radiotelefonía móvil privada son:

  • Área de acción territorial limitada.
  • No suelen estar conectadas a la Red Telefónica Pública Conmutada (POTS).
  • Uso para servicio de empresas (ej. gestión de flotas).
  • Ejemplo: TETRA (Trans European Trunked Radio).

Otras funcionalidades de PMR:

  • Deben ser posibles las llamadas de MS a MS (Móvil a Móvil).
  • Las llamadas son frecuentes
...
Continuar leyendo "Fundamentos de Sistemas de Radiotelefonía Móvil: PMR vs PMT y Conceptos Celulares" »

Escalabilitat de Sistemes Distribuïts: Tècniques i Models Serverless

Informática9,89 KB

Tècniques per Escalar Sistemes Distribuïts

Un sistema distribuït és escalable si, tot i un augment sobtat de tràfic o connexions d'usuari, es manté eficaç i eficient. Això s'aconsegueix amb les següents tècniques:

  • Ús de dades replicades (replicated data): Consisteix a mantenir còpies de dades en diversos servidors. És essencial per a aplicatius com DNS o bases de dades. Aquesta tècnica permet escalar afegint nodes, evitant la centralització de dades i diversificant la demanda entre servidors.
  • Ús de l'emmagatzematge en cau (caching): Consisteix a emmagatzemar respostes a peticions recents. Si es torna a sol·licitar el mateix recurs, s'evita consultar el servidor original. S'utilitza tant en el client (memòria cau del navegador)
...
Continuar leyendo "Escalabilitat de Sistemes Distribuïts: Tècniques i Models Serverless" »

Conceptos Fundamentales de Software y Programación: Todo lo que Necesitas Saber

Informática2,48 KB

Conceptos Fundamentales de Informática

Definiciones Básicas

  • Software: Es el equipamiento lógico o soporte lógico de una computadora digital.
  • Software de sistema: Es aquel que permite que el hardware funcione; su objetivo es desvincular los detalles de la computadora referentes a las características internas (hardware).
  • Software de programación: Conjunto de programas que permiten al programador desarrollar aplicaciones informáticas usando diferentes alternativas y lenguajes de programación.
  • Software de aplicación: Es aquel que permite a los usuarios llevar a cabo una o varias tareas en cualquier campo de actividad susceptible, como el educativo, médico, cálculo o diseño asistido (CAD).

Programación y Desarrollo

  • Programación: En informática,
...
Continuar leyendo "Conceptos Fundamentales de Software y Programación: Todo lo que Necesitas Saber" »

Arquitectura y Componentes Fundamentales de Apache Spark para Procesamiento Distribuido

Informática3,04 KB

Introducción a Apache Spark

Spark es un framework de programación distribuida, que ofrece un alto rendimiento tanto para procesamiento por lotes como interactivo. Se diferencia con Hadoop en el uso de operaciones en memoria divididas en varias fases de procesamiento.

Requisitos y Componentes de Ejecución

Para ejecutar aplicaciones distribuidas en un clúster, Spark requiere un administrador de clúster.

Librerías Integradas

Spark lleva incluidas librerías específicas para tratar:

  • Datos estructurados: Spark SQL
  • Streaming de datos: Spark Streaming
  • Machine Learning: MLib
  • Computación sobre grafos: GraphX

El Programa Controlador y el Contexto

El shell Spark es un ejemplo de un programa controlador, proceso que se ejecuta en la máquina virtual de Java...

Continuar leyendo "Arquitectura y Componentes Fundamentales de Apache Spark para Procesamiento Distribuido" »

Fundamentos de Programación en C: Vectores, Funciones y Macros

Informática6,81 KB

I. Complete los espacios en blanco

  • Un vector permite almacenar varios datos del mismo tipo utilizando un solo nombre.
  • Los vectores en C comienzan desde la posición 0.
  • Un procedimiento no retorna un valor.
  • Una función retorna un valor.
  • Los datos enviados a funciones o procedimientos se denominan parámetros.
  • La directiva utilizada para crear macros es #define.
  • El operador utilizado para obtener el resto de una división es %.
  • La instrucción return devuelve un valor desde una función.
  • Un arreglo unidimensional también se conoce como vector.
  • La función buscar() retorna 1 cuando encuentra un elemento.

II. Verdadero o Falso

  • (F) Un vector puede almacenar datos de distintos tipos simultáneamente.
  • (F) Un procedimiento retorna un valor.
  • (V) Una función puede
...
Continuar leyendo "Fundamentos de Programación en C: Vectores, Funciones y Macros" »

Evolución de la Computación y Fundamentos de Programación en Python

Informática4,91 KB

Evolución Histórica de la Computación

Se presentan las siguientes etapas o generaciones, marcadas por hitos temporales:

  • 1° Período: 1940 - 1958
  • 2° Período: 1959 - 1964
  • 3° Período: 1964 - 1971
  • 4° Período: 1971 - 1984
  • 5° Período: 1984 - 1990
  • 6° Período: 1990 - Hoy

Ciclo Fundamental de Procesamiento de Datos

El procesamiento de información se estructura en tres fases principales:

  • Entrada: Operaciones de lectura.
  • Procesamiento: Operaciones de cálculo.
  • Almacenamiento / Salida: Operaciones de escritura.

Conceptos Clave de Memoria

Diferencias entre los tipos de memoria principales:

  • DRAM (Memoria de Acceso Aleatorio Dinámica): Refrescada cientos de veces por segundo.
  • ROM (Memoria de Solo Lectura): Memoria usada para almacenar programas que realizan
...
Continuar leyendo "Evolución de la Computación y Fundamentos de Programación en Python" »

Fundamentos Técnicos y Optimización de la Tecnología ADSL

Informática5,49 KB

Bandas de Frecuencia Operacionales en ADSL

La tecnología ADSL (Asymmetric Digital Subscriber Line) utiliza el par de cobre telefónico dividiendo el espectro en tres bandas:

  • Telefonía (POTS): 0 - 4 kHz
  • Canal Ascendente (Upstream): 25.8 - 138 kHz
  • Canal Descendente (Downstream): 138 - 1104 kHz

Modulación y Control de Errores

Modulación Utilizada en ADSL

La modulación principal empleada en ADSL es QAM (Quadrature Amplitude Modulation), implementada a través de la técnica DMT.

Operación del Control de Errores

El control de errores opera mediante la modulación DMT (Discrete Multi-Tone), la cual distribuye la carga de información. Este proceso asigna datos de portadoras con deficiencia (baja calidad de señal) a portadoras con mayor potencia de...

Continuar leyendo "Fundamentos Técnicos y Optimización de la Tecnología ADSL" »