martes, 18 de agosto de 2009

.Net Tercero (Programa, Lenguajes)

Un programa, o también llamado programa informático, programa de computación o programa de ordenador, es simplemente un conjunto de instrucciones para una computadora.[1] Las computadoras necesitan de los programas para funcionar, y un programa no hace nada a menos que sus instrucciones sean ejecutadas por el procesador.[2] Un programa se puede referir tanto a un programa ejecutable como a su código fuente, el cual es transformado en un ejecutable cuando es compilado.
Generalmente el código fuente de los programas es escrito por profesionales conocidos como
programadores. El código fuente es escrito en un lenguaje de programación que sigue uno de los siguientes dos paradigmas: imperativo o declarativo. El código fuente puede ser convertido en una imagen ejecutable por un compilador. Cuando se pide que el programa sea ejecutado, el procesador ejecuta el programa instrucción por instrucción, hasta que el programa termina.
De acuerdo a sus funciones, los programas pueden ser clasificados en
software de sistema y software de aplicación. Pueden ejecutarse muchos programas de forma simultánea en un mismo ordenador, a lo cual se le llama multitarea

Un lenguaje de programación es un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones. Es utilizado para controlar el comportamiento físico y lógico de una máquina.
Aunque muchas veces se usan los términos 'lenguaje de programación' y '
lenguaje informático' como si fuesen sinónimos, no tiene por qué ser así, ya que los lenguajes informáticos engloban a los lenguajes de programación y a otros más, como, por ejemplo, el HTML (lenguaje para el marcado de páginas web que no es propiamente un lenguaje de programación).
Un lenguaje de programación permite a uno o más
programadores especificar de manera precisa sobre qué datos debe operar una computadora, cómo estos datos deben ser almacenados o transmitidos y qué acciones debe tomar bajo una variada gama de circunstancias. Todo esto, a través de un lenguaje que intenta estar relativamente próximo al lenguaje humano o natural, tal como sucede con el lenguaje Léxico. Una característica relevante de los lenguajes de programación es precisamente que más de un programador puedan tener un conjunto común de instrucciones que puedan ser comprendidas entre ellos para realizar la construcción del programa de forma colaborativa.

Clasificación de los lenguajes de programación
Los lenguajes de programación se pueden clasificar atendiendo a varios criterios:
Según el nivel de abstracción
Según el paradigma de programación que poseen cada uno de ellos

Según su nivel de abstracción

Lenguajes de Máquina
Están escritos en lenguajes directamente legibles por la máquina (computadora), ya que sus instrucciones son cadenas binarias (0 y 1). Da la posibilidad de cargar (transferir un programa a la memoria) sin necesidad de traducción posterior lo que supone una velocidad de ejecución superior, solo que con poca fiabilidad y dificultad de verificar y poner a punto los programas.

Lenguajes de bajo nivel
Los lenguajes de bajo nivel son lenguajes de programación que se acercan al funcionamiento de una computadora. El lenguaje de más bajo nivel por excelencia es el código máquina. A éste le sigue el lenguaje ensamblador, ya que al programar en ensamblador se trabajan con los registros de memoria de la computadora de forma directa. Ejemplo:
;Lenguaje ensamblador, sintaxis Intel para procesadores x86
mov eax,1 ;mueve a al registro eax el valor 1
xor ebx, ebx ;pone en 0 el registro ebx
int 80h ;llama a la interrupción 80h (80h = 128 sistema decimal)
Ejecutar ese código en sistemas
UNIX o basados en él equivale a una función exit(0) (terminar el programa retornando el valor 0)

Lenguajes de medio nivel
Hay lenguajes de programación que son considerados por algunos expertos como lenguajes de medio nivel (como es el caso del lenguaje C) al tener ciertas características que los acercan a los lenguajes de bajo nivel pero teniendo, al mismo tiempo, ciertas cualidades que lo hacen un lenguaje más cercano al humano y, por tanto, de alto nivel. Ejemplo:
/*Lenguaje C*/

/*declaración de las funciones estandars de entrada y salida*/
#include

int main(int argc, char **argv)
{
char *p; /*creamos un puntero a un byte*/
if(argc == 1){
printf("\nIngrese un argumento al programa\n");/*imprimimos el texto*/
return 1;
}
p = 0x30000 /*el puntero apunta a 0x30000 */
*p = argv[1][0] /*el primer caracter del primer argumento lo copiamos a la posición 0x30000 */
return 0;
}
El ejemplo es muy simple y muestra a los
punteros de C, éstos no son muy utilizados en lenguajes de alto nivel, pero en C sí.

Lenguajes de alto nivel
Los lenguajes de alto nivel son normalmente fáciles de aprender porque están formados por elementos de lenguajes naturales, como el inglés. En BASIC, uno de los lenguajes de alto nivel más conocidos, los comandos como "IF CONTADOR = 10 THEN STOP" pueden utilizarse para pedir a la computadora que pare si el CONTADOR es igual a 10. Esta forma de trabajar puede dar la sensación de que las computadoras parecen comprender un lenguaje natural; en realidad lo hacen de una forma rígida y sistemática, sin que haya cabida, por ejemplo, para ambigüedades o dobles sentidos. Ejemplo:
{Lenguaje Pascal}
program suma;

var x,s,r:integer; {declaración de las variables}
begin {comienzo del programa principal}
writeln('Ingrese 2 números enteros');{imprime el texto}
readln(x,s); {lee 2 números y los coloca en las variables x y s}
r:= x + s; {suma los 2 números y coloca el resultado en r}
writeln('La suma es ',r); {imrpime el resultado}
readln;
end.{termina el programa principal}
Ese es el lenguaje Pascal, muy utilizado por principiantes al aprender a programar.

Según el paradigma de programación
Un paradigma de programación representa un enfoque particular o filosofía para la construcción del software. No es mejor uno que otro, sino que cada uno tiene ventajas y desventajas. Dependiendo de la situación un paradigma resulta más apropiado que otro.
Atendiendo al paradigma de programación, se pueden clasificar los lenguajes en :
El
paradigma imperativo o por procedimientos es considerado el más común y está representado, por ejemplo, por el C o por BASIC.
El
paradigma funcional está representado por la familia de lenguajes LISP (en particular Scheme), ML o Haskell.
El
paradigma lógico, un ejemplo es PROLOG.
El
paradigma orientado a objetos. Un lenguaje completamente orientado a objetos es Smalltalk.
Nota: La representación orientada a objetos mejora la estructura de los datos y por lo tanto se ha aplicado a diferentes paradigmas como
Redes de Petri, Imperativo Secuencial, Lógica de Predicados, Funcional, etc. No obstante, la manipulación no queda fundamentalmente afectada y por lo tanto el paradigma inicial tampoco a pesar de ser re-orientado a objetos.
Si bien puede seleccionarse la forma pura de estos paradigmas a la hora de programar, en la práctica es habitual que se mezclen, dando lugar a la
programación multiparadigma.
Actualmente el paradigma de programación más usado debido a múltiples ventajas respecto a sus anteriores, es la
programación orientada a objetos.

Lenguajes imperativos
Son los lenguajes que dan instrucciones a la computadora, es decir, órdenes.

Lenguajes Funcionales
Paradigma Funcional: este paradigma concibe a la computación como la evaluación de funciones matemáticas y evita declarar y cambiar datos. En otras palabras, hace hincapié en la aplicación de las funciones y composición entre ellas, más que en los cambios de estados y la ejecución secuencial de comandos (como lo hace el paradigma procedimental). Permite resolver ciertos problemas de forma elegante y los lenguajes puramente funcionales evitan los efectos secundarios comunes en otro tipo de programaciones.

Lenguajes Lógicos
La computación lógica direcciona métodos de procesamiento basados en el razonamiento formal. Los objetos de tales razonamientos son "hechos" o reglas "if then". Para computar lógicamente se utiliza un conjunto de tales estamentos para calcular la verdad o falsedad de ese conjunto de estamentos. Un estamento es un hecho si sus tuplas verifican una serie de operaciones.
Un hecho es una expresión en la que algún objeto o conjunto de objetos satisface una relación específica. Una tupla es una lista inmutable. Una tupla no puede modificarse de ningún modo después de su creación.
[1]
Un regla if then es un estamento que informa acerca de conjuntos de tuplas o estamentos relacionados que pueden predecir si otras tuplas satisfacerán otras relaciones.
Un estamento que es probado verdadero como resultado de un proceso se dice que es una inferencia del conjunto original. Se trata por tanto de una descripción de cómo obtener la veracidad de un estamento dado que unas reglas son verdaderas.
La computación lógica está por tanto relacionada con la automatización de algún conjunto de métodos de inferencia.

Lenguajes orientados a objetos
Artículo principal:
Programación orientada a objetos
La Programación Orientada a Objetos (POO u OOP según sus siglas en inglés) es un paradigma de programación que usa objetos y sus interacciones para diseñar aplicaciones y programas de computadora. Está basado en varias técnicas, incluyendo herencia, modularidad, polimorfismo y encapsulamiento. Su uso se popularizó a principios de la década de 1990. Actualmente son muchos los lenguajes de programación que soportan la orientación a objetos.
La programación visual brinda 000 los conocimientos necesarios para diseñar y desarrollar aplicaciones con un entorno visual amigable y fácil de utilizar para el usuario.
Los
lenguajes de programación visual tienden a facilitar la tarea de los programadores, dado que con los primeros lenguajes de programación crear una ventana era tarea de meses de desarrollo y de un equipo de trabajo

domingo, 16 de agosto de 2009

Programa de Introducción a programacion .Net

Introducción a la programación en .NET

Objetivo: El alumno elaborará programas básicos para la solución de problemas relacionados con su entorno para desarrollar las estructuras lógicas de programación en un lenguaje de alto nivel.

UNIDAD I Conceptos Generales

1.1 El Software
Software de sistema
Software de aplicación
1.2. Lenguajes de programación
Clasificación por nivel
Lenguajes de máquina
Lenguajes de bajo nivel
Lenguajes de alto nivel

Clasificación por paradigma
Estructurados
Orientados a Objetos
Declarativos
Funcionales
1.3 Resolución de problemas con computadora
Análisis del problema
Diseño del algoritmo solución
Codificación
Compilación y Ejecución
Verificación
Depuración
Documentación

UNIDAD II Introducción al Lenguaje de Programación

2.1. Ambiente de programación
Edición de un programa
Compilación de un programa
Depuración de un programa
Características del Ambiente específico .NET
(Elementos, estructura, ventajas, desventajas)

2.2. El Estilo de Programación
Comentar el código
Sangría y líneas en blanco
Uso de nombres significativos
Otras recomendaciones
2.3. Tipos de Datos
Número Entero
Número Real
Cadena de Caracteres
Valor Lógico (Verdadero o Falso)
2.4. Variables y Constantes
Reglas para variables y constantes
Estructura de una Variable
Estructura de una Constante

2.5. Operadores y Expresiones
Aritméticos: suma, resta, multiplicación, etc.
De relación: igual, mayor, menor, distinto, etc.
Lógicos: and, or, not, etc.

2.6. Estructuras Básicas de Control
De Selección
Estructura de IF - THEN
Estructura de CASE
De Repetición o Iteración
Estructura de WHILE
Estructura de FOR

2.7. Arreglos
Definición
Estructura de un arreglo Unidimensional
Estructura de un arreglo Multidimensional
2.8. Procedimientos y Funciones
Subprogramas
Ventajas del uso de subprogramas
Estructura de un procedimiento
Estructura de una función
Tipos de parámetros (entrada y salida)
2.9. Visibilidad de variables (ámbito)
Descripción de Variable Local
Descripción de Variable Global
2.10. Bibliotecas
¿Qué es una biblioteca?
Características de la bibliotecas
Ventajas del uso de las bibliotecas
Bibliotecas básicas del lenguaje



UNIDAD III Fundamentos de Programación Orientada a Objetos

3.1 ¿Qué es un objeto?
Definición
Ejemplos
3.2 ¿Qué es una clase?
Definición
Ejemplos
Instancia de una clase
3.3 Propiedades de un objeto
Abstracción
Publicas
Privadas
3.4 Métodos
Definición de métodos
Públicos
Privados
Acceso a propiedades mediante métodos

3.5 Encapsulamiento

3.6 Herencia

Programa de Introduccion a los Algoritmos

Introducción a los Algoritmos

1.1 Introducción a los algoritmos
- Qué es un algoritmo
- Características de los algoritmos
- Qué es un programa
- Qué es un lenguaje de programación
- Estructuras de control

1.2. Introducción a la programación con el ambiente KAREL

- Ambiente Karel
- El mundo de Karel
- Como hacer un programa básico
- Instrucciones básicas (avanza, gira-izquierda, coge-zumbador, apágate)


UNIDAD II
Estructuras de Control


2.1 Estructura de secuencial

2.2. Estructura de decisión

- ¿Qué es una instrucción condicional?
- Condiciones que detecta Karel
- Solución de algoritmos con decisiones simples SI-ENTONCES
- Solución de algoritmos con decisiones SI-ENTONCES-OTRO CASO

2.3. Estructura de Repetición

- Repetir N veces
- Mientras condición hacer
- Tablas de verdad Y(AND), O(OR) y No (NOT)
- Decisiones con condiciones NO.
- Decisiones con condiciones Y.
- Decisiones con condiciones O.
- Decisiones anidadas


2.3 Estructuras de repetición

- Repetir un número fijo de veces
- Repeticiones mientras se cumple una condición
i. Condición simple
ii. Condición NO
iii. Condición Y
iv. Condición O
- Repeticiones anidadas


UNIDAD III
PROCEDIMIENTOS

3.1 Procedimientos (Nuevas instrucciones)
● Definición
● Ejemplo rápido de una Nueva Instrucción en KAREL (gira_derecha)
● Como definir una nueva instrucción en KAREL
● Concepto de procedimiento y subprograma
● Procedimiento avanza_hasta_pared
● Procedimientos recoge_todos

3.2 Recursividad
· La recursividad vista como repetición.
· Caso Base
· Ejemplos rápidos: avanza_hasta_pared y recoge_todos.
· Ejemplos avanzados: El laberinto

3.3 Aritmética con Karel
· Concepto de parámetro
· Concepto de variable y constante
· Concepto de ámbito de la variable
· La instrucción precede
· La instrucción sucede
· Algoritmo para sumar
· Algoritmo para restar.

Programa de Informática I

PROGRAMA DE INFORMÀTICA I SEM: 2009-B

BLOQUE I OPERA FUNCIONES BÁSICAS DE UNA COMPUTADORA
TIEMPO ASIGNADO: 12 horas

UNIDADES DE COMPETENCIA
- Analiza aspectos elementales sobre el desarrollo de las Tecnologías de Información y Comunicación.
- Opera las funciones de uso común de un sistema operativo para administrar información personal y escolar, tras conocer el funcionamiento básico de una computadora y aplica los procedimientos correspondientes para garantizar la seguridad de la información.

COMPETENCIAS
- Emplea los términos usados en las TIC, tras analizar las características de los términos
- Describe el funcionamiento básico de una computadora así como, las funciones de los diferentes tipos de dispositivos.
- Practica las funciones elementales de una computadora, empleando los diferentes tipos de dispositivos de manera correcta.
- Comprende la importancia del entorno de trabajo del sistema operativo como parte de las funciones de una computadora.
- Explica la forma en que se realizan las funciones básicas del sistema operativo.
- Maneja las herramientas de uso común de un sistema operativo relacionadas con las funciones básicas del explorador de archivos.
- Analiza en grupo el impacto y la importancia de proteger información comentando casos reales.
- Aplica medidas de prevención de software dañino, utilizando de manera oportuna los dispositivos.
- Ejecuta medidas de seguridad en ejercicios prácticos o casos ficticios.


BLOQUE II UTILIZA LAS TECNOLOGÍAS DE INFORMACIÓN Y COMUNICACIÓN.
TIEMPO ASIGNADO: 12 horas

UNIDADES DE COMPETENCIA
- Emplea las TIC para aprender e incrementar sus posibilidades de formación, al buscar, obtener, procesar y comunicar información para transformarla en conocimiento y usarla en el contexto cotidiano y escolar.

COMPETENCIAS
- Identifica el impacto y papel que tienen las TIC en la vida cotidiana de los jóvenes, al reconocer su naturaleza, función, ventajas y desventajas.
- Participa en grupos de discusión para comunicar sus ideas, intereses, inquietudes y difundir información, aprovechando las diversas posibilidades de este medio.
- Crea una cuenta, accede al correo, envía y responde los mensajes de correo electrónico, utilizando las diversas funciones que ofrece este medio.
- Identifica diferentes procedimientos o alternativas de búsqueda de información de un
tema de su interés, a través de las TIC, y selecciona uno de ellos.
- Ejecuta el procedimiento para búsqueda, selección y uso de la información de un tema de su interés, valorando las posibilidades que le ofrecen diversos medios electrónicos.
- Accede a un curso en línea, tras haber comparado varias alternativas con base en sus requerimientos académicos e intereses personales
- Comunica a las personas y grupos de interés la información obtenida, empleando los medios electrónicos.
- Identifica las oportunidades académicas que ofrecen los cursos en línea, y la manera como pueden cubrir diversas necesidades de formación.



BLOQUE III EMPLEA EL PROCESADOR DE TEXTOS
TIEMPO ASIGNADO: 12 horas

UNIDADES DE COMPETENCIA
-Produce textos mediante el empleo de procesadores de textos para expresarse, comunicarse y producir diversos materiales de estudio.

COMPETENCIAS
- Emplea la ayuda como un recurso para desarrollar una operación o saber cómo se efectúa un comando.
- Emplea eficientemente las herramientas del procesador de textos.
√ Dar formato al documento.
√ Insertar imágenes, gráficos, columnas, tablas y cuadros de texto.
√ Revisar,detectar y corregir errores.
√ Imprimir documentos usando la opción de impresión adecuada.
√ Proteger el documento
- Desarrolla un proyecto escolar de su interés, aplicando las funciones de un procesador de textos.



BLOQUE IV REALIZA PRESENTACIONES ELECTRÓNICAS
TIEMPO ASIGNADO:12 horas

UNIDADES DE COMPETENCIA
- Utiliza las presentaciones electrónicas como un recurso de apoyo para expresarse ante el público o producir y publicar diversos materiales multimedia de estudio de manera creativa.

COMPETENCIAS
- Identifica en su vida cotidiana el papel que juegan las presentaciones electrónicas como un medio de comunicación.
- Emplea eficientemente las herramientas de la aplicación.
√ Diseñar fondo y estilo de la diapositiva.
√ Insertar texto, imágenes, transiciones y animaciones, objetos de audio y video e hipervínculos.
√ Revisar, detectar y corregir errores.
√ Imprimir la presentación usando la opción de impresión adecuada.
√ Proteger el documento
- Desarrolla un proyecto escolar de su interés, aplicando las funciones de las presentaciones electrónicas.

Informática I, Mate y .Net

hola a todos Bienvenidos a mi blog, contiene toda la información de importancia. espero sea de beneficio.