Sora

Sora

domingo, 11 de septiembre de 2011

Análisis del problema y Función del análisis

Análisis del problema

Cuando un usuario plantea a un programador un problema que resuelve mediante ordenador, por lo general ese usuario tendrá conocimientos mas o menos óptimos sobre el dominio del problema, pero no es habitual que tenga conocimientos de información.


El informático que va a resolver un determinado problema puede ser un experto programador pero no tiene por que conocer el dominio del problema.

La Función del Análisis

La parte escencial de la planeacion y diseño la constituye el análisis de los sistemas hipotéticos desde el punto de vista de los objetivos de las prepocisiones y de las condiciones limitativas.


Herramientas
*Seleccionar la herramienta correcta para el análisis dado
*Reconocer el momento en que se debe retroceder para adquirir mayores facilidades
*Consultar con los expertos si están en capacidad de entenderse en el mismo lenguaje
*Conocer los limites de utilizacion de determinada herramienta

Reseña: Ejecutables e Interfaz de linea de comando


Ejecutable

En informatica, un ejecutable o archivo ejecutable, es tradicionalmente un archivo binario cuyo contenido se interpreta por el ordenador como un programa.
Generalmente, contiene instrucciones en codigo maquina de un procesador en concreto, pero también puede contener bytecode que requiera un interprete para ejecutarlo. Además suele contener llamadas a funciones específicas de un sistema operativo (llamadas al sistema).
Dependiendo del tipo de que se traten las instrucciones, hablaremos de ejecutables portables (se pueden ejecutar en varias plataformas) y no portables (destinado a una plataforma concreta). Por ejemplo, un ejecutable Java es portable ya que utiliza un bytecode no asociado a un procesador en concreto.
Sin embargo en un sentido más general, un programa ejecutable no tiene por qué necesariamente contener código de máquina, sino que puede tener instrucciones a interpretar por otro programa. Este tipo de ejecutables son conocidos con el nombre de scripts.
Determinar si un archivo es ejecutable es sobre todo una cuestión de convención. Unos sistemas operativos se basan en la extensión de archivo (como la terminación .exe) y otros lo hacen leyendo los metadatos (como los bits de permiso de ejecución en Unix).
En la mayoría de los sistemas modernos, un archivo ejecutable contiene mucha informacion que no es parte del programa en sí: recursos como textos e imagenes, requisitos del entorno de ejecución, información simbólica y de depuracion, u otra información que ayude al sistema operativo a ejecutar el programa.

Interfaz de linea de comando
La Interfaz de Línea de Comando te permite introducir comandos sólo por teclado, en una pantalla llamada “shell".

Teniendo como base esta shell el usuario puede elegir para su para su máquina cualquier otra shell disponible, siendo las más comunes Korn, Bourne y C shell. Por defecto Linux usa la shell Bourne Again, conocida como BASH shell. Teniendo como base esta shell el usuario puede elegir el para se máquina cualquier otra shell disponible. 





RESEÑA:


Bueno un ejecutable es un archivo el cual es captado como un programa portable que se ejecuta inmediatamente al activarlo.El cual no debe tener necesariamente código maquina.


Mientras la interfaz de linea de comando es un método que permite dar instrucciones por medio de texto a un programa informático. Pueden utilizarse insertando instrucciones en una entrada o ejecutando comando desde un archivo.

jueves, 8 de septiembre de 2011

Ejecutables e Interfaz de linea de comando

Ejecutables

Un ejecutable es tradicionalmente un archivo binario cuyo contenido se interpreta por el ordenador como un programa. Dependiendo del tipo de que se trata las instrucciones, puede ser ejecutable, portable o no portable.
No tiene necesariamente contener código de maquina, sino que puede tener instrucciones a interpretar por otro programa.

Interfaz de linea de comando

Es un método que permite a las personas dar instrucciones a algún programa informático por medio de texto simple. Pueden emplearse interactivamente, escribiendo instrucciones en alguna especie de entrada texto, o pueden utilizarse de una forma mucho mas automatizada, leyendo comandos desde un archivo scripts.
Los CLI (comand line interface) son usadas por programadores y administradores de sistema como herramienta primaria de trabajo, especialmente en sistemas operativos basado en Unix.

Reseña: Editores, Procesadores de texto, Compiladores e interpretes

Editores y procesadores de texto
Los procesadores y editores de texto son los programas que nos sirven para escribir: introducir texto en la computadora y guardarlo en un archivo.
Un procesador no es lo mismo que un editor. Un editor permite tan sólo introducir los caracteres (letras, números, signos: texto plano) mientras que un procesador permite, además, cambiar su aspecto (texto enriquecido).
La función de los editores es permitirnos escribir texto, no modificar su aspecto. Son utilizados principalmente por los programadores. Algunos tienen características especiales orientadas a la programación y otros tan sólo permiten introducir simplemente los caracteres y nada más.
Los procesadores sí pueden decidir que aspecto va a tener el texto. En ellos, podemos cambiar el tamaño, el color, la forma, cómo va a aparecer en la página, etc. En muchos podemos hasta incluir imágenes. Su función principal es preparar el texto para que sea vea bien, sea en pantalla o al imprimirse. 


Compiladores e interpretes



Los compiladores realizan la traducción en tiempo de desarrollo. Es decir, el
programa aún no se está ejecutando. El compilador recibe todo el código
fuente, lo analiza, lo optimiza y lo traduce a lenguaje máquina dejando un
programa completo listo para su ejecución. Típicos lenguajes compilados son
el C o el PASCAL
Los intérpretes realizan la traducción en tiempo de ejecución. Es decir, a
medida que el programa se va ejecutando, el intérprete va traduciendo
instrucciones al lenguaje máquina. Un típico lenguaje interpretado es el BASIC.

RESEÑA:

Los editores y procesadores de texto sirven a las personas, ya que con ellos pueden modificar los archivos que estos utilicen  o introducir caracteres para luego guardarlos en un archivo, mientras que los compiladores e interpretes ayudan al programador a traducir el lenguaje de una computadora a otro mas cercano al de una persona y asi este pueda introducirlo en un programa.

Editores y procesadores de texto, Compiladores e interpretes

Editor de texto

Un editor de texto es un programa que permite crear y modificar archivos digitales compuestos únicamente por texto sin formato, conocidos comúnmente como archivos de texto o texto plano. El programa lee el archivo e interpreta los bytes leídos según el código de caracteres que usa el editor. Hoy en día es comúnmente de 7- ó 8-bits en ASCII o UTF-8, rara vez EBCDIC.
Los editores de texto son incluidos en el sistema operativo o en algún paquete de software instalado y se usan cuando se deben crear o modificar archivos de texto como archivos de configuración, scripts o el codigo fuente de algún programa.

Procesadores de texto
Un procesador de texto es una aplicacion informatica destinada a la creación o modificación de documentos escritos por medio de una computadora. Representa una alternativa moderna a la antigua maquina de escribir, siendo mucho más potente y versátil que ésta.
Los procesadores de textos nos brindan una amplia gama de funcionalidades, ya sean tipograficas, idiomáticas u organizativas, con algunas variantes según el programa de que se disponga. Como regla general, todos pueden trabajar con distintos tipos y tamaños de letra, formato de parrafo y efectos artísticos; además de brindar la posibilidad de intercalar o superponer imágenes u otros objetos gráficos dentro del texto.

Existen dos tipos principales de traductores de los lenguajes de programación de alto nivel:

Compilador, que analiza el programa fuente y lo traduce a otro equivalente escrito en otro lenguaje (por ejemplo, en el lenguaje de la máquina). Su acción equivale a la de un traductor humano, que toma un libro y produce otro equivalente escrito en otra lengua.

Intérprete, que analiza el programa fuente y lo ejecuta directamente, sin generar ningún código equivalente. Su acción equivale a la de un intérprete humano, que traduce las frases que oye sobre la marcha, sin producir ningún escrito permanente.

domingo, 4 de septiembre de 2011

Reseña: Programa Informático y Paradigmas de la Programación


¿Qué es un programa informático?

Un programa informático es una serie de comandos ejecutados por el equipo. Sin embargo, el equipo sólo es capaz de procesar elementos binarios, es decir, una serie de 0s y 1s. Por lo tanto, necesitamos un lenguaje de programación para escribir de manera legible, es decir, con comandos que el ser humano pueda comprender (por ser similares a su propio lenguaje) los comandos que el equipo deberá ejecutar.
Estos programas se traducen después a un lenguaje máquina (en binario) a través de un compilador.
El método de escritura de un programa está muy ligado al lenguaje de programación elegido, ya que existen muchos tipos distintos. Además, el compilador debe coincidir con el lenguaje elegido: cada lenguaje de programación tiene su propio compilador (excepto los lenguajes interpretados).
En términos generales, el programa es un simple archivo de texto (escrito usando un procesador o editor de texto), llamado archivo fuente).
El archivo fuente contiene líneas de programa llamadas código fuente. Este archivo fuente, debe compilarse una vez completado. La compilación se realiza en dos pasos:
  • El compilador transforma el código fuente en código objeto y lo guarda en un archivo objeto, es decir que traduce el archivo fuente a lenguaje máquina (algunos compiladores también crean un archivo en ensamblador, un lenguaje similar al lenguaje máquina ya que posee las funciones básicas, pero puede ser leído por los seres humanos.
  • Luego, el compilador llama a un editor de vínculos (o ensamblador) que permite insertar los elementos adicionales (funciones y bibliotecas) a los que hace referencia el programa dentro del archivo final, pero que no se almacenan en el archivo fuente. 
    A continuación, se crea un archivo ejecutable que contiene todos los elementos requeridos por el programa para funcionar de manera independiente (en Microsoft Windows o MS-DOS este archivo tendrá la extensión .exe).

Paradigmas de Programación
Existe una infinidad de definiciones de lo que es un paradigma. Un paradigma es un determinado marco desde el cual miramos el mundo, lo comprendemos, lo interpretamos e intervenimos sobre él. Abarca desde el conjunto de conocimientos científicos que imperan en una época determinada hasta las formas de pensar y de sentir de la gente en un determinado lugar y momento histórico.
Adam Smith define paradigma, en su libro “Los poderes de la mente”, como
un conjunto compartido de suposiciones. Es la manera como percibimos el mundo: agua para el pez. El paradigma nos explica el mundo y nos ayuda a predecir su comportamiento".
En nuestro contexto, el paradigma debe ser concebido como una forma aceptada de resolver un problema en la ciencia, que más tarde es utilizada como modelo para la investigación y la formación de una teoría. También, el paradigma debe ser concebido como un conjunto de métodos, reglas y generalizaciones utilizadas conjuntamente por aquellos entrenados para realizar el trabajo científico de investigación. 
En nuestro contexto, los paradigmas de programación nos indican las diversas formas que, a lo largo de la evolución de los lenguajes, han sido aceptadas como estilos para programar y para resolver los problemas por medio de una computadora.

Se muestran a continuación  los paradigmas de uso más extendido en programación.

*Programación por procedimientos
*Programación modular
*Abstracción de datos
*Programación orientada a objetos (OOP)



RESEÑA:
Un programa informático es un conjunto de instrucciones que una vez ejecutadas realizarán una o varias tareas en una computadora. Los programas se guardan en una memoria no volátil para que el usuario solicite su ejecucion.
Los paradigmas es un modelo básico de diseño y desarrollo de programas, que permite producir programas con unas directrices específicas, tales como: estructura modular, fuerte cohesión, alta rentabilidad, etc.
Se divide en imperativo, funcional, logico, declarativo y orientado a objetos.

sábado, 3 de septiembre de 2011

Programa Informático y Paradigmas de la Programación

Programa informático

Conjunto de instrucciones ejecutadas por programadores mediante la ejecución de un código fuente por adaptaciones.

* Ejecución y almacenamiento de los programas

Los programas se almacenan en una memoria no volátil, para luego el usuario solicite directa o indirectamente su ejecución. 
El programa es cargado en la memoria de acceso aleatorio o RAM del quipo, bajo el control del sistema operativo. El cual accede directamente al procesador.
-Programas empotrados en hardware
-Programas cargados manualmente
-Programas generados automáticamente
-Programas de ejecución simultanea

* Programación

El proceso de diseñar, escribir y mantener el código fuente de programas computacionales. El código fuente es escrito en un lenguaje de programación. Su propósito es crear programas que muestren un comportamiento deseado. Programar involucra el código(diseño de código).

* Léxico y Programación

La programación se rige por reglas y un conjunto mas o menos reducido de ordenes, expresiones, instrucciones y comandos. El lenguaje mas potente es el binario en los lenguajes de programación de alto nivel se distinguen elementos entre los que se incluyen el léxico propio del lenguaje y las reglas semánticas y sintácticas.

Paradigmas de la programación

Es un modelo mediante el cual una comunidad de programadores desarrollan un programa basado en un núcleo central, para resolver determinados problemas.

Tipos de paradigmas

*Imperativo(algorítmico)
-Entrada de datos
-Estados
-Flujo de control
-Condicionales
-Asignaciones en memoria
-Java, Pascal, PHP, etc

*Declarativa
-Afirmaciones
-Restricciones
-Ecuaciones
-Preposiciones
-Transformaciones
-Incógnitas
-Lips, Scheme, Maskell, Prolog

*Demostrativo
-Programación de ejemplos
-Generalizar
-Simular

viernes, 2 de septiembre de 2011

Reseña: Algoritmo y Lenguaje de programación

Definición de Algoritmo

Conjunto finito de reglas que dan una secuencia de operaciones para resolver todos los problemas de un tipo dado. De forma más sencilla, podemos decir que un algoritmo es un conjunto de pasos que nos permite obtener un dato. Además debe cumplir estas condiciones.

Finitud: el algoritmo debe acabar tras un número finito de pasos. Es mas, es casi fundamental que sea en un número razonable de pasos.

Definibilidad: el algoritmo debe definirse de forma precisa para cada paso, es decir hay que evitar toda ambigüedad, puesto que el lenguaje es impreciso, los algoritmos se expresan mediante un lenguaje formal, ya sea matemático o de programación para un computador.

Entrada: el algoritmo tendrá cero o más entradas es decir, cantidades dadas antes de empezar el algoritmo. Estas cantidades pertenece además a conjuntos especificados de objetos (cadenas de caracteres, enteros, naturales, fraccionarios, etc.). Se trata siempre de cantidades representativas del mundo real expresadas de tal forma que sean acta para su interpretación por el computador.

Salida: el algoritmo tiene una o mas salidas en relación con las entradas.

Efectividad: se entiende por eso que una persona sea capa de realizar el algoritmo de modo exacto y sin ayuda de una maquina en un lapso de tiempo finito.

Lo que pretende un algoritmo es sintetizar de alguna forma alguna tarea, calculo o mecanismo antes de ser transcrito al ordenador.

Los pasos que hay que seguir son los siguientes:

1. análisis previo del problema.
2. primera visión del método de resolución.
3. descomposición en módulos.
4. programación estructurada.
5. búsqueda de soluciones parciales.
6. ensamblaje de soluciones finitas.

Lenguaje algorítmico:

El lenguaje algorítmico es aquel que por medio del cual se realiza un análisis previo del problema a resolver y encontrar un método que permita resolverlo. El conjunto de todas las operaciones a realizar, y el orden en el que deben efectuarse se le denomina algoritmo. El lenguaje algorítmico se divide en pseudo código y diagrama de flujo.

Lenguaje de programación

Un lenguaje de programación" es un lenguaje diseñado para describir el conjunto de acciones consecutivas que un equipo debe ejecutar. Por lo tanto, un lenguaje de programación es un modo práctico para que los seres humanos puedan dar instrucciones a un equipo.

Por otro lado, el término "lenguaje natural" define un medio de comunicación compartido por un grupo de personas (por ejemplo: inglés o francés).

Los lenguajes que los equipos usan para comunicarse entre ellos no tienen nada que ver con los lenguajes de programación; se los conoce como protocolos de comunicación. Se trata de dos conceptos totalmente diferentes. Un lenguaje de programación es muy estricto:

A CADA instrucción le corresponde UNA acción de procesador.

El lenguaje utilizado por el procesador se denomina lenguaje máquina. Se trata de datos tal como llegan al procesador, que consisten en una serie de 0 y 1 ( datos binarios).

El lenguaje máquina, por lo tanto, no es comprensible para los seres humanos, razón por la cual se han desarrollado lenguajes intermediarios comprensibles para el hombre. El código escrito en este tipo de lenguaje se transforma en código máquina para que el procesador pueda procesarlo.

El ensamblador fue el primer lenguaje de programación utilizado. Es muy similar al lenguaje máquina, pero los desarrolladores pueden comprenderlo. No obstante, este lenguaje se parece tanto al lenguaje máquina que depende estrictamente del tipo de procesador utilizado (cada tipo de procesador puede tener su propio lenguaje máquina). Así, un programa desarrollado para un equipo no puede ser portado a otro tipo de equipo. El término "portabilidad" describe la capacidad de usar un programa de software en diferentes tipos de equipos. Para poder utilizar un programa de software escrito en un código ensamblador en otro tipo de equipo, ¡a veces será necesario volver a escribir todo el programa!

Por lo tanto, un lenguaje de programación tiene varias ventajas:

· es mucho más fácil de comprender que un lenguaje máquina:

· permite mayor portabilidad, es decir que puede adaptarse fácilmente para ejecutarse en diferentes tipos de equipos.


RESEÑA:
Los algoritmos son un conjunto preescrito de instrucciones o reglas bien definidas, ordenados y finitos que sirven para realizar la actividad medante pasos sucesivos que no generen dudas.
Estos se realizan mediante el lenguaje natural, pseudocodigo, diagramas de flujo, lenguaje de programacion, etc.
El lenguaje de programacion es un lenguaje diseñado para describir el conjunto de acciones consecutivas que un equipo debe ejecutar; es un modo practico para que los seres humanos puedan dar instrcciones a una maquina 

jueves, 1 de septiembre de 2011

Algoritmo y Lenguaje de programacion

Algoritmo

Es un conjunto prescrito de instrucciones o reglas bien definidas, ordenados y finitos que permiten realizar dicha actividad mediante pasos sucesivos que no generan dudas a quien deba realizar dicha actividad.

Los algoritmos pueden ser expresados de muchas maneras:
*Lenguaje natural
*Pseudocodigo
*Diagramas de flujo
*Lenguaje de programación/otros..

La descripción usualmente se hace en niveles:
* Descripción de alto nivel
* Descripción de manera formal

Los diagramas de flujo: son descripciones gráficas de algoritmos; usan símbolos conectados con flechas para indicar la secuencia de instrucciones y están regidos por ISO.

Lenguaje de Programación

Es un lenguaje diseñado para describir el conjunto de acciones consecutivas que un equipo debe ejecutar.

Por lo tanto, un lenguaje de programación es un modo practico para que los seres humanos puedan dar instrucciones a un equipo.

El lenguaje utilizado por el procesador  se denomina lenguaje maquina. Se trata de datos tal como llegan al procesador, que consisten en una serie de de 0 y 1.

El ensamblador fue el primer lenguaje de programación utilizado. Es muy similar al lenguaje maquina pero los desarrolladores pueden comprenderlo.

Se divide en:

*Lenguaje de programación imperativo
*Lenguaje de programación funcional
*Lenguaje interpretado
*Lenguaje compilado

miércoles, 31 de agosto de 2011

Reseña: Tipos de Software


Los programas informáticos o software, es la colección de programas de ordenador y los datos relacionados que proporcionan las instrucciones que le dicen a una computadora lo que debe hacer.
El término fue acuñado como contraste con el hardware (dispositivos físicos).
En contraste con el hardware, el software es intangible, lo que significa que "no se puede tocar". Software a veces también se usa en un sentido más estrecho, lo que significa la aplicación de software solamente. En otros casos el término incluye datos que no se han asociado tradicionalmente con las computadoras, tales como películas, cintas y discos.
Ejemplos de software son:
  • El software de aplicación donde se incluyen aplicaciones de usuario final tales como procesadores de textos, hojas de cálculo o juegos.
  • El middleware controla y coordina los sistemas distribuidos.
  • Los lenguajes de programación definen la sintaxis de los programas de ordenador. Por ejemplo, muchas aplicaciones bancarias, o de adultos, fueron escritos en el lenguaje COBOL, originalmente inventado en 1959. Las nuevas aplicaciones se escriben a menudo en lenguajes de programación más modernos.
  • El software del sistema incluye los sistemas operativos, que rigen los recursos informáticos. Hoy en día hay grandes aplicaciones que se ejecutan en equipos remotos como los sitios web se considera que el software del sistema, porque la interfaz del usuario final es generalmente a través de una interfaz de usuario gráfica (GUI), como un navegador web.
  • Testware es un software para pruebas de hardware o un paquete de software.
  • Los controladores de dispositivos, tales como discos duros, impresoras, unidades de CD o monitores de ordenador.
  • Las herramientas de programación ayudan a realizar tareas de computación en cualquier categoría mencionada anteriormente.


RESEÑA:
Los software se dividen en software de aplicación y software de sistemas.
Los software de sistemas son todos los programas que sirven para gestionar y facilitar el funcionamiento de otras aplicaciones. Es aquel que interactua con el hardware.
Los software de aplicaciones son todos aquellos programas que sirven para facilitar al usuario final la realización de algún tipo de trabajo o función. Es aquel que interactua con el sistema

martes, 30 de agosto de 2011

Tipos de Software

*Software de Sistema

Es el software que nos permite tener una interacción con nuestro hardware, es decir, es el sistema operativo. Es un conjunto de programas que administran los recursos del hardware y proporciona un interfaz al usuario.

*Software de aplicación

Son los programas que nos permiten realizar tareas especificas en nuestro sistema a diferencia del software de sistema, el software de aplicación esta enfocado en un área especifica para su utilización.

*Sistema Operativo (SO)

Es el programa que efectúan la gestión de procesos básicos de un sistema de computo y permite la ejecución del resto de operaciones.
El sistema operativo también es llamado núcleo o Kernel.