martes, 4 de diciembre de 2012

Actividad 8

Programación orientada a objetos

Que es un paradigma orientado a objetos
Es un paradigma de programación que facilita la creación de un software de calidad; trata de amoldarse al modo pensar del hombre y no al de la máquina, los datos que describen su estado y las operaciones que pueden modificar dicho estado, y determinar las capacidades del objeto.

Los principios básicos de la programación orientada a objetos
  • Principios de abstracción: mediante la abstracción la mente humana modernizan  para realizar en la forma objeto. Para ello busca un programa bajo el paradigma de la orientación a objetos.
  • Principios encapsulados: permite a los objetos elegir que información es publicar y que información es oculta al resto de los objetos. Para ello los objetos suelen presentar sus métodos como interface pública y sus atributos.
  • Principios de modularidad: se propone el programa dividir su aplicación en varios módulos diferentes, cada de uno  de ellos son un seguido propio. Esta fragmentación disminuye el grado de dificultad.
  • Principios de jerarquía: la mayoría de nosotros ve de manera natural nuestro mundo como objeto que se relacionan entre si de una manera jerárquica.
  • Principios del paso de mensajes: un objeto puede solicitar de otro objeto que realiza una acción determinada o que modifique su estado.
  • Principios de polimórfico: quiere decir “ un objeto y muchas formas” esta propiedad permite que un objeto presente diferente comportamientos en función del contexto en que se encuentra.

Definición de clase, método y objeto
  • Clase: definición de los propiedades y comportamientos de un tipo de objetos concreto. La instancia es La lectura de estas definiciones y la creación de un objeto a partir de ellos “sustantivo, persona, lugar o casa.”
  • Método: es la facilidad del algoritmo asociado a objetos, cuya ejecución se desencadena tras la repetición de un “mensaje”. Un método puede producir un cambio en las propiedades del objeto.
  • Objeto: entidad provista de un conjunto de propiedades o atributos y de comportamientos o funcionalidades los mismos que consecuentemente reaccionan a eventos “a un servicio”.

Las propiedades de un objeto

Todo objeto puede tener ciertos números de propiedades, cada una de los cuales tendrá, a su vez uno o varios valores. Las propiedades de un objeto pueden tener único o pueden contener un conjunto de valores más o menos estructurados.

Propiedades propias: están formados dentro de la capsula del objeto
Propiedades heredadas: están definidas en un objeto diferente, antepasado de este. A veces se le llama propiedad miembro.

Java

 Es un lenguaje de programación y la primera plataforma informática creado por Microsystems en 1995. En la tecnología subyacente que permite el uso de programación punteros, como herramientas, juegos y aplicaciones de negocio.
Bycoode de java
Es un tipo de instrucción que la máquina virtual de java ejecuta su bytecode. Usualmente es el resultado de utilizar un compilador del lenguaje de programación java, pero puede ser generado desde otro lenguaje.
Como ejecutar un programa  y como se hace en Netbeans.

Es un entorno de desarrollo integrado libre, hecho principalmente para el lenguaje en java. Existen un número importante de módulos para extenderlo. Netbeans  es un producto libre.
Como iniciar un programa en Netbeans.

Es la acción de inicio la carga de un programa o de cualquier archivo ejcutable, implica que estaba en estado de ejecución y por ente, en memoria que finalice. Inicio- ejecutar- escribe CMD y dale aceptar- navega hasta el directorio- donde se encuentra tu archivo java- ejecuta el programa Ej. Java mi archivo java. Class.



martes, 6 de noviembre de 2012

Actividad 7


Realización de algoritmos
  •                           Análisis previo del problema

Se debe realizar un análisis del fundamento del problema antes de que se realice cualquier algoritmo. Esto es para poder obtener los requerimientos que deberá satisfacer el algoritmo luego de ser ejecutado
  •        Identificación de los módulos                                       

Esta están importante como la identificación correcta de los requerimientos, esto por que la correcta identificación de los módulos simplifica considerablemente la realización delo algoritmos que darán solución a los requerimientos identificados en el paso inferior.
  •                              Definición de requerimientos

Los problemas a solucionar, esto es, por ejemplo el sumando números, multiplicador de dos matrices, ordenador de una lista de números, generar un reporte etc.
  •                  Implementación de los algoritmos

Se debe realizar en un lenguaje de programación para que una computadora pueda comprender los instrucciones que el algoritmo modele para así poder ejecutarse y obtener el resultado esperado.
Datos primitivos de java
·        Booleam: contiene valores que puedan ser solo true “verdadero” y false ”falso” o si , no
·        Bytes : es un entero de 8 bit complemento a dos valores mínimo de  -128 y máximo de 127
·        Shorts: enteros de 16 bit con signo, la presentación interna es un complemento a dos
·        Int: enteros de 32 bit con signo, la representación interna es en complemento de dos
·        Long: entero de 64 bit con signo, la representación interna es en complemento de dos
·        Float: reales de 32 bit con coma móvil, la representación interna es IEEE 754-1985
Los tipos de pseudocódigos

 Los tipos de datos básicos utilizados son: CHARR, UNT, FLOAT, BOOLEAM




lunes, 22 de octubre de 2012

Actividad 6


Fundamentos en programación

2.1 fases de la resolución de problemas
·        Análisis del problema (analiza el problema que hay)
·        Diseño de algoritmo (diseña una solución)
·        Codificación (soluciona el problema y lo escribe en lenguaje de alto nivel)
·        Ejecución (se prueba y se eliminan los errores)
2.2 programación modular 

Es uno de los métodos de diseño de mas flexibles y potentes para mejorar la productividad de un programa. El programa se debido en modulo, cada una de las cuales  ejecuta una única actividad o tarea y se codifican y ponen a punto por separados d otros módulos.
2.3 programación estructurada

Significa que escribe un programa d e acuerdo a las siguientes reglas
·        El programa tiene un diseño modular
·        Los módulos son diseñados de modo descendente
·        Cada modulo se codifica utilizando las tres reglas estructuras de control básicas: secuencia, selección y repetición; es un conjunto de técnicas recursos abstractos: consiste en descomponer una determinación acción compleja en términos de un número de acciones más simples. Diseño descendente: consiste en efectuar una resolución entre las sucesiones etapas de estructuración de modo que se relaciona una con otra. Estructura de control: consiste fundamentalmente en los lenguajes de programación y en los díselo de algoritmos especialmente los pseudocódigos.
2.4 representación grafica de los algoritmos

Ellos permiten que un algoritmo0 pueda ser codificado indirectamente en cualquier lenguaje. Los métodos usuales son:
·        Diagrama de flujo: se utilizan todos los símbolos
·        Diagrama N-S: igual al de flujo, el que se omiten las fechas de unión y las cajas contiguas.
·        Lenguaje especial de algoritmos: pseudocódigo
·        Lenguaje español e ingles
·        Formulas
2.5 diagrama de NASSI-SCHEIDERMAN (N-S)

Es como un diagrama de flujo en el que se omiten las fechas de unión y las cajas que son contiguas, las acciones sucesivas se escriben en cajas sucesivas en una caja.
2.6 el ciclo de vida del software 

Hay dos tipos de niveles el primer nivel se denomina programación a pequeña escala, el segundo se denomina programación a gran escala.
La programación a pequeña  escala se preocupa en crear pequeños programas y pueden tener más de 100,000 líneas de códigos.
Ciclo de vida de un software
Análisis, diseño, implementación, depuración, mantenimiento
Análisis: esta producción de un sistema de software que se supone ha de hacer el sistema.
Diseño: lo que el sistema debe hacer, como ha de hacer.
Implementación: traduce el algoritmo del diseño en un programa escrito en lenguaje de programación.
Depresión: el sistema completo se ensambla y se integra.
Mantenimiento: el programa aunque sirva excelente tiene que mantenerse en mantenimiento y actualizado.

2.7 métodos formas de verificación de programa

·        Aserciones: una parte importante de una verificación formal es la documentación de un programa a través de acentos o afirmaciones.
·        Precondiciones y pos condiciones: son afirmaciones simples sobre condiciones al principio y al final de los módulos es una afirmación lógica sobre sus parámetros de entrada.
2.8 factores en la calidad de software 

·        Eficiencia: la eficiencia de un software es su capacidad para hacer un buen uso de los recursos que manipulan
·        Transportabilida (portabilidad): es la facilidad con la que un software  puede ser transportado sobre diferentes sistemas físicos o lógicos.
·        Verificabilidad: es la facilidad de verificación de un software, es su capacidad para soportar los procesos de validación y de aceptar juegos de test o ensayo de programa.
·        Integridad: es la capacidad de un software a proteger sus propios componentes contra los procesos que no tenga el derecho de acceso.
·        Facilidad de usar: es  fácil de utilizar si se puede comunicarse consigo de manera cómoda.
·        Corrección: capacidad de los productos software que realice exactamente loas tareas definidas por su especificación.
·        Robustez: capacidad de los software de realizar incluso en situaciones  anormales.
·        Extensibilidad: facilidad que tiene los productos de adaptarse a cambios en su especificación de nuevas aplicaciones.
·        Reutilización: capacidad de los productos de ser reutilizados, en su totalidad o en parte, en nuevas aplicaciones.
·        Compatibilidad: facilidad de los productos para ser combinados con otros.







Actividad 5


Naturaleza de los valores
Son valores numéricos, son todos aquellos valores con los cuales se pueden realizar cálculos aritméticos; que pueden ser valores de fecha, valores nulos, valores de cadena, valores booleanos, valores blob.

Propiedades  de datos
Son representaciones simbólicas, no significativas a trabes  del procesamiento y las interpretaciones se convertirían en información de ahí su importancia.
Expresión y variables

Expresión: es el valor de un dato se trata de expresión absoluta y se representa en literal. Las variables: es la referencia lógica nominada a la posición física de la memoria RAM
Tipos de datos

Es el dominio de datos que permiten el almacenamiento de una determinada naturaleza de valores.
Dominio

Es el conjunto de valores validos para un posible dato adquirido. A la cantidad de valores permitidos, se divide en tres
·       Tipo: es la restricción de valores originada por el tiempo de datos especificados.
·       Regla de negocios: es le restricción de valores originada por la relación de reglas especificadas en los negocios que restringe la amplitud.
·       Relación: es la restricción de valores origina por la relación de datos que debe mantener con otros datos.
Representación abstracta  de los tipos de datos

Ofrece un a serie de datos básicas o elementales que permiten emplearse para almacenar datos en variables  y definir en que podrían manipularse. El tipo es (TDA) que es la abstracción de manera equivalente y esto es debido a la similitud e inter dependencia de ambos.
Operadores 

Es un elemento de programa que se amplia a uno o varios. Que son cuatro:
·       Aritmético: es la lista de operadores que son: suma, resta, producto, cociente de división y resta de división.
·       Asignados: es la expresión formando una nueva expresión,  se denomina post-incremento y pre-incremento.
·       Lógicos: es un programa de ordenadores que se utilizan para combinar  valores lógicos (verdaderos/ falsos) y también puede ser de 0 y 1.
·       Comparativos: son utilices en los programas y por supuesto a nivel de operadores con base de datos en my SQL.
Reglas de precedencia

·       Implícita: aritméticas, exponenciales, negativas, multiplicación, división, lógica.
·       Posicional: tiene una precedencia de izquierda a derecha.
·       Explícita: esta usa el paréntesis para alterarlo

miércoles, 12 de septiembre de 2012

Actividad 2

¿definifión de computadora?
es un sistema de dispositivos electronicos mecanicos y magneticos que sirben e procesos y almacen de datos es un conjunto de elementos interelacionados para un mismo fin.

¿elabora un mapa conceptual hardware?

¿elabora un mapa conceptual de software?

martes, 11 de septiembre de 2012

Actividad 4


¿Que es un paradigma de programación y sus tipos?
Es una propuesta tecnológica que es adoptada por una comunidad de programadores cuyo núcleo central es incuestionable en cuanto a que unívocamente trata de resolver uno o varios problemas claramente delimitados. La resolución de estos problemas debe suponer consecuentemente un avance significativo en al menos un parámetro que afecte a la ingeniería de software.

·         Paradigmas Imperativo: Modelo abstracto que consiste en un gran almacenamiento de memoria donde la computadora almacena una representación codificada de un cálculo y ejecuta una secuencia de comandos que modifican el contenido de ese almacenamiento

·         Paradigmas Procedimentales:
Modelos de Desarrollo: Orientado a Objetos, a Eventos, y a Agentes. Secuencia computacional realizada etapa a etapa para resolver el problema.

·         Paradigmas Declarativos. - Modelos de Desarrollo: Funcional, Lógico y de Flujo de Datos. Se construye señalando hechos, reglas, restricciones, ecuaciones, transformaciones y otras propiedades derivadas del conjunto de valores que configuran la solución.

·         Paradigmas Demostrativos.- Modelos de Desarrollo: Genético. Cuando se programa bajo un paradigma demostrativo (también llamada programación por ejemplos), el programador no especifica procedimentalmente cómo construir una solución sino que presentan soluciones de problemas similares.

·         Paradigmas Funcional: Modelo matemático de composición funcional donde el resultado de un cálculo es la entrada del siguiente, y así sucesivamente hasta que una composición produce el valor deseado.

·          Paradigma Orientado a Objeto: disciplina de ingeniería de desarrollo y modelado de software que permite construir más fácilmente sistemas complejos a partir de componentes individuales. Objetos + Mensajes = Programa
.Realiza mapas comparativo de la programación estructurada programación funcional programación orientada a objetos  programación orientada a eventos

Nombre
significado
ventajas
desventajas
Programación estructurada
Es una técnica para escribir programas. para ello se utiliza únicamente 3 estructuras: secuencial, selectiva e interacción
-Mas fácil de entender
-Reducen el esfuerzo en las pruebas
-Reducen los costos de mantenimiento
-aumenta la productividad
-cuando se hace grande es problemática
-se obtiene un único bloque de programa
Programación funcional
Esta consiste en funciones matemáticas esta basado en modelo matemático
-incorporan funciones de orden superior
-evolución paralela
-reutilización de códigos
-datos infinitos
-falta de estandarización
-bajo rendimiento en los programas
Programación orientada a objeto
Se define como una metodología de diseño de software que modela las características del objeto
-reusabilidad
-extensibilidad
-facilidad de mantenimiento
-rapidez de desarrollo
-fácil de entender

-curvas de aprendizaje largas
-dificultad en la abstracción
Programación orientada a eventos
La ejecución de los programas van determinados por los sucesos
que ocurran en el sistema o que ellos mismos provoquen
-sencillo
-lenguaje simple
-semejanza el lenguaje humano
-lenguaje RAD centrado en el menor tiempo posible los resultados
-lenguaje completo de Microsoft office
-solo existe un compilador
-la sintaxis es demasiada inflexible
-los ejecutables generalmente son relativos lentos
-complicada en la secuencia y la interacción.





Actividad 3


1.     ¿Definición de lenguaje de programación?
Es aquel elemento dentro de la información que nos permite crear programas mediante un conjunto de instrucciones, operaciones y reglas de sintaxis que ponen a dispositivos del programador para que este pueda comunicarse con los dispositivos de hardware y software existentes
2.      ¿Elementos de un lenguaje de programación?
Los elementos de un  lenguaje de programación  son de dos variables y vectoriales; Los variables son contenedores de datos y por ello se diferencian según el tipo que son;  Un vector no es más que un conjunto de variables ordenadas guardadas dentro de un variable contenedor.
-Variables tipo Char: Estas variables contienen un único carácter, es decir, una letra, un signo o un número.
-Variables tipo Int: Contienen un número entero.
-Variables tipo float: Contienen un número decimal.
-Variables tipo String: Contienen cadenas de texto, o lo que es lo mismo, es un vector con varias variables del tipo Char.
-Variables del tipo Boolean: Solo pueden contener un 0 o un 1.
3.   ¿tipos de códigos en un lenguaje de programación?
·         El código fuente: no es otra cosa que un texto escrito, simple.Un texto similar al que usted genera cuando usa el ''block de notas'' de su sistema Windows;                                                                                                          
·         Compilador: El lenguaje de programación utilizado para la redacción del código fuente es lo que se denomina un lenguaje de alto nivel, esto es, un lenguaje en que el programador puede expresarse con cierta facilidad por ser el más próximo al lenguaje natural.
·         Código objeto: Resumiendo hasta aquí: el programador escribe el código fuente con el lenguaje de programación elegido, y, en un proceso de compilación, este código fuente se convierte en código objeto.
·         Lenguaje de bajo nivel: es el que proporciona poca o ninguna abstracción del microprocesador de un ordenador consecuentemente es fácil trasladarlo a un lenguaje maquina
·         Lenguaje de medio nivel: suele clasificarse como de alto nivel pero permite ciertos manejos de bajo nivel.

·         Lenguaje de alto nivel: se caracteriza por expresar los algoritmos de una manera a la capacidad cognitiva humana en lugar a l a ejecución de la maquinas.

4.     ¿los compiladores,  las fases de compiladores y los interpretes
 Compilador: es un programa que permite traducir e código fuente de un programa en lenguaje de alto nivel, a otro lenguaje de nivel inferior (típicamente lenguaje maquina).
El análisis léxico: constituye la primera fase, aquí se lee el programa fuente de izquierda a derecha y se agrupa en componentes léxicos
Análisis sintáctico: en esta fase los caracteres o componentes léxicos se agrupan jerárquicamente en frases gramaticales que el compilador utiliza para sintetizar la salida.
Análisis semántico: la fase de análisis semántico revisa el programa fuente para tratar de encontrar errores semánticos y reúne la información sobre los tipos para la fase posterior de generación de código. 
Los interpretes: es un programa informático capaz de analizar y ejecutar otros programas escritos en un lenguaje de alto nivel, suelen ser más lentos que los compiladores debido a la necesidad de traducir.
5.     ¿la utilidad de un código intermedio?
Este código puede conservarse como un arreglo de cadenas de un texto, un archivo de texto temporal o bien una lista de instrumentos ligados que permite una fácil organización.
6.     ¿Clasificación de los lenguajes de programación?
Generación
·         Lenguajes de primera generación: Código máquina.
·         Lenguajes de segunda generación: Lenguajes ensamblador.
·         Lenguajes de tercera generación: La mayoría de los lenguajes modernos, diseñados para facilitar la programación a los humanos. Ejemplos: C, Java.
·         Lenguajes de cuarta generación: Diseñados con un propósito concreto, o sea, para abordar un tipo concreto de problemas. 
·         Lenguajes de quinta generación: La intención es que el programador establezca el qué problema ha de ser resuelto y las condiciones a reunir, y la máquina lo resuelve.
En su nivel
·         Lenguaje de bajo nivel: es el que proporciona poca o ninguna abstracción del microprocesador de un ordenador consecuentemente es fácil trasladarlo a un lenguaje maquina
·         Lenguaje de medio nivel: suele clasificarse como de alto nivel pero permite ciertos manejos de bajo nivel.

·         Lenguaje de alto nivel: se caracteriza por expresar los algoritmos de una manera a la capacidad cognitiva humana en lugar a l a ejecución de la maquinas.


Propósito.
Según el propósito, es decir, el tipo de problemas a tratar con ellos:
·         Lenguajes de propósito general: Aptos para todo tipo de tareas: Ejemplo C.
·         Lenguajes de propósito especifico: Hechos para un objetivo muy concreto. Ejemplo: Csound (para crear ficheros de audio).
·         Lenguajes de programación sistemática: Diseñados para realizar sistemas operativos o drivers. Ejemplo: c.
·         Lenguajes de scrip: Para realizar tareas varias de control y auxiliares. Antiguamente eran los llamados lenguajes de procesamiento por lotes (batch) o JCL (“Job Control Lenguajes”).