PROGRAMACION
La programación es el proceso de diseñar, codificar, depurar y mantener
el código fuente de programas computacionales. El propósito de la programación
es crear programas que exhiban un comportamiento deseado.Programar no involucra
necesariamente otras tareas tales como el análisis y diseño de la aplicación
(pero sí el diseño del código), aunque sí suelen estar fusionadas en el
desarrollo de pequeñas aplicaciones.
Lenguaje de programación
Un lenguaje de programación es un idioma
artificial diseñado para expresar procesos que pueden ser llevadas a cabo por
máquinas como las computadoras.
Pueden usarse para crear programas que controlen el comportamiento físico
y lógico de una máquina, para expresar algoritmos con precisión, o como modo de
comunicación humana.
Está formado por un conjunto de símbolos y reglas sintácticas y
semánticas que definen su estructura y el significado de sus elementos y
expresiones. Al proceso por el cual se escribe, se prueba, se depura, se
compila y se mantiene el código fuente de un programa informático se le llama
programación.
También la palabra programación se define como el proceso de creación de
un programa de computadora, mediante la aplicación de procedimientos lógicos, a
través de los siguientes pasos:
·
El desarrollo lógico del
programa para resolver un problema en particular.
·
Escritura de la lógica
del programa empleando un lenguaje de programación específico (codificación del
programa).
·
Ensamblaje o compilación
del programa hasta convertirlo en lenguaje de máquina.
·
Prueba y depuración del
programa.
·
Desarrollo de la
documentación.
Características de
los lenguajes de programación
Las
computadoras calculan eléctricamente por medio de pulsos de corriente y
voltajes que representan formasde comunicación por demás ajenas al lenguaje
humanos. Así pues, el medio que permite entablar lacomunicación con
las máquinas
se conoce como “lenguaje de programación”.
Aún con su
corta duración, la historia de la computación electrónica ha producido varios
cientos de lenguajes de programación ampliamente reconocidos y utilizados. Al
principio se acercaban mucho al lenguaje propio de las computadoras (ceros y
unos), pero se han ido transformando para acercarse más a las lenguas humanas
como el inglés o bien a formas gráficas mas expresivas y sintéticas. Entre más
cercano a la computadora es un lenguaje se le denomina de bajo nivel, lo
contrario es de alto nivel. Existen cinco generaciones de lenguajes de
programación, en donde cada uno mejora a sus predecesores en cuanto a las
facilidades que otorga al programador.
1.Lenguaje
máquina.
2. Lenguajes
ensambladores.
3. Lenguajes
de alto nivel.
4. Lenguajes
de muy alto nivel
.5.
Lenguajes naturales
Lenguaje Máquina
El lenguaje
máquina, el de más bajo nivel, representa datos e instrucciones con dígitos
binarios (0s y 1s), y el elemento ejecutor es la circuitería misma de
la computadora. Al principio de la comunicación electrónica cada máquina tenía su
propio lenguaje, y los programadores tenían
sistemas rudimentarios para combinar números que representaran
instrucciones simples como SUMAR y COMPARAR. Los métodos de programación en este
lenguaje son tediosos e imprácticos,por lo que la comunidad del cómputo se
movió rápidamente para desarrollar lenguajes
ensambladores.
Lenguaje de alto nivel.
Lenguaje de alto nivel.
La investigación
sobre los lenguajes de alto nivel se inicia en 1945, con el ingeniero alemán
Konrad Zuse, pero hasta el inicio de los 1960 que se generaliza su uso,transformando radicalmente la actividad de la programación.
Estos lenguajes se asemejan más a la lengua humana, particularmente el inglés,
con menos detallados y con menos declaraciones describen tareas más complejas
para la computadora. Como resultado, los programadores
logran trabajos de mayor alcance y con menos esfuerzo. Obviamente se
requiere de un traductor de las declaraciones simbólicas de un lenguaje de
alto nivel al lenguaje máquina ejecutable por la computadora,estos traductores
se llaman compiladores (el primero se desarrollo en 1952). Existen compiladores para
cada lenguaje y cada máquina, pero una ventaja de los lenguajes de alto nivel es
que se pueden trasladar de una máquina a otra con pocas o nulas
modificaciones.Entre los lenguajes de esta generación se encuentran los de
propósito general como BASIC, FORTRAN y COBOL que han sido muy populares. Además
se encuentran Pascal, Cy sus derivados.
Visual C#
Microsoft Visual C# 2005 es un lenguaje de programación diseñado para crear una amplia gama de aplicaciones que se ejecutan en .NET Framework. C# es simple, eficaz, con seguridad de tipos y orientado a objetos. Con sus diversas innovaciones, C# permite desarrollar aplicaciones rápidamente y mantiene la expresividad y elegancia de los lenguajes de tipo C.Visual Studio admite Visual C# con un editor de código completo, plantillas de proyecto, diseñadores, asistentes para código, un depurador eficaz y fácil de usar, además de otras herramientas. La biblioteca de clases .NET Framework ofrece acceso a una amplia gama de servicios de sistema operativo y a otras clases útiles y adecuadamente diseñadas que aceleran el ciclo de desarrollo de manera significativa.
Características principales de C#
A continuación enumeramos las principales características que definen al lenguaje de programación C#. Algunas de estas características no son propias del lenguaje, sino de la plataforma .NET, aunque se listan aquí ya que tienen una implicación directa en el lenguaje.
C# elimina muchos elementos añadidos por otros lenguajes y que facilitan su uso y compresión, como por ejemplo ficheros de cabecera, o ficheros fuentes IDL1 .12. Es por ello que se dice que C# es auto contenido. Además, no se incorporan al lenguaje elementos poco útiles, como por ejemplo macros, herencia múltiple u operadores diferentes al operador de acceso a métodos (operador punto) para acceder a miembros de espacios de nombres.
Al ser C# un lenguaje de última generación, incorpora elementos que se ha demostrado a lo largo del tiempo que son muy útiles para el programador, como tipos decimales oBooleanos, un tipo básico
String, así como una instrucción que permita recorrer colecciones con facilidad (instrucción foreach). Estos elementos hay que simularlos en otros lenguajes como C++ o Java.
-Orientado a objetos
Características principales de C#
-Sencillez de uso
C# elimina muchos elementos añadidos por otros lenguajes y que facilitan su uso y compresión, como por ejemplo ficheros de cabecera, o ficheros fuentes IDL1 .12. Es por ello que se dice que C# es auto contenido. Además, no se incorporan al lenguaje elementos poco útiles, como por ejemplo macros, herencia múltiple u operadores diferentes al operador de acceso a métodos (operador punto) para acceder a miembros de espacios de nombres.
-Modernidad
Al ser C# un lenguaje de última generación, incorpora elementos que se ha demostrado a lo largo del tiempo que son muy útiles para el programador, como tipos decimales oBooleanos, un tipo básico
String, así como una instrucción que permita recorrer colecciones con facilidad (instrucción foreach). Estos elementos hay que simularlos en otros lenguajes como C++ o Java.
-Orientado a objetos
C# como lenguaje de última generación, y de propósito general, es orientado a objetos. C# no permite la inclusión de funciones ni variables globales que no estén incluidos en una definición de tipos, por lo que la orientación a objetos es más pura y clara que en otros lenguajes como C++. Además, C# soporta todas las características del paradigma de la programación orientada a objetos, como son la Encapsulación, la herencia Y el polimorfismo.
-Orientado a componentes
La propia sin taxis de C# incluye elementos propios del diseño de componentes que otros lenguajes tienen que simular. La sintaxis de C# incluye por ejemplo formas de definirPropiedades, eventos o atributos.
Como ya se comentó, todo lenguaje incluido en la plataforma .NET tiene a su disposición el recolector de basura del CLR. Esto implica que no es necesario incluir instrucciones de destrucción de objetos en el lenguaje.
Bibliografias
- wikipedia enciclopedia libre
-
-Orientado a componentes
La propia sin taxis de C# incluye elementos propios del diseño de componentes que otros lenguajes tienen que simular. La sintaxis de C# incluye por ejemplo formas de definirPropiedades, eventos o atributos.
-Recolección de basura
Como ya se comentó, todo lenguaje incluido en la plataforma .NET tiene a su disposición el recolector de basura del CLR. Esto implica que no es necesario incluir instrucciones de destrucción de objetos en el lenguaje.
-Seguridad de tipos
C# incluye mecanismos de control de
acceso a tipos de datos, lo que garantiza que no se produzcan errores
difíciles de detectar como una acceso a memoria de ningún objeto, por ejemplo. Para ello, el lenguaje provee de una serie de normas de sintaxis, como por ejemplo no realizar conversiones
entre tipos que no sean compatibles. Además, no se pueden usar
variables no inicializadas previamente, y en el acceso atablas se hace una comprobación de
rangos para que no se excedan ninguno de los índices de la misma.
Compilador
Un compilador es un programa informático que traduce un programa escrito en un lenguaje de programación a otro lenguaje de programación, generando un programa equivalente que la máquina será capaz de interpretar. Usualmente el segundo lenguaje es lenguaje de máquina, pero también puede ser un código intermedio (bytecode), o simplemente texto. Este proceso de traducción se conoce como compilación.
Intérprete
En ciencias de la computación, intérprete o interpretador es un programa
informático capaz de analizar ejecutar otros programas, escritos en
un lenguaje de alto
nivel. Los intérpretes se
diferencian de los compiladores en que mientras estos traducen un
programa desde su descripción en un lenguaje de programación al código
de máquina del sistema, los intérpretes sólo realizan la traducción a medida que sea necesaria, típica mente,
instrucción por instrucción, y normalmente no guardan el resultado de dicha
traducción.
Usando un intérprete, un
solo archivo fuente puede producir resultados iguales incluso en sistemas
sumamente diferentes (ej. una PC y un PlayStation 3). Usando un compilador, un solo
archivo fuente puede producir resultados iguales solo si es compilado a
distintos ejecutables específicos a cada sistema.
Los programas
interpretados suelen ser más lentos que los compilados debido a la necesidad de
traducir el programa mientras se ejecuta, pero a cambio son más flexibles como
entornos de programación y depuración (lo que se traduce, por ejemplo, en una mayor
facilidad para reemplazar partes enteras del programa o añadir módulos
completamente nuevos), y permiten ofrecer al programa interpretado un entorno
no dependiente de la máquina donde se ejecuta el intérprete, sino del propio
intérprete (lo que se conoce comúnmente como máquina virtual).
Para mejorar el
desempeño, algunas implementaciones de programación de lenguajes de
programación pueden interpretar o compilar el código fuente original en una más
compacta forma intermedia y después traducir eso al código de máquina (ej. Perl, Python, MATLAB, y Ruby). Algunos aceptan los archivos fuente guardados en
esta representación intermedia (ej. Python, UCSD Pascal y Java).
Comparando su actuación
con la de un ser humano, un compilador equivale a un traductor profesional que,
a partir de un texto, prepara otro independiente traducido a otra lengua,
mientras que un intérprete corresponde al intérprete humano, que traduce de
viva voz las palabras que oye, sin dejar constancia por escrito.
En la actualidad, uno de
los entornos más comunes de uso de los intérpretes informáticos es Internet, debido a la posibilidad que estos
tienen de ejecutarse independientemente de la plataforma.
- wikipedia enciclopedia libre
-