Antecedentes del lenguaje C

sábado, 21 de diciembre de 2013



Si no fuera por el C, estaríamos escribiendo programas en BASI, PASAL, o OBOL. 
La computadora, a diferencia de otras herramientas que en general apoyan el esfuerzo físico  de los humanos, fue inventada para facilitar el trabajo intelectual. Es  decir que esta fue específicamente diseñada para brindar soluciones  a través de algoritmo que resuelve el problema, el programador lo codifica en un lenguaje de programación, el cual la  computadora es capaz de entender, luego la computadora ejecuta el algoritmo expresado  como programa en el lenguaje de programación en cuestión  y listo.
En consecuencia, los lenguajes de  programación tienen que adaptarse a éstas crecientes necesidades y aumentar la  expresividad para poder resolver problemas muy diversos y cada vez más complejos.
Además, tienen que ofrecer cierta eficiencia en la ejecución. Es un logro difícil de alcanzar  y por lo tanto, se requiere una búsqueda constante de nuevos lenguajes para ello.

Historia de C


C es una evolución de los lenguajes BCPL -desarrollado por Martin Richards- y B –desarrollado por Ken Thompson en 1970- para el primitivo UNIX de la computadora DEC PDP-7.
C nació realmente en 1978, con la publicación de The C Programming Languaje, por Brian Kernighan y Dennis Ritchie (Prentice Hall, 1978). Desde su nacimiento, C fue creciendo en popularidad y los sucesivos cambios en el lenguaje a lo largo de los años junto a la creación de compiladores por grupos no involucrados en su diseño, hicieron necesario pensar en la estandarización de la definición del lenguaje C.

Características de C


Este es un lenguaje  de  programación  de propósito general que ofrece como ventaja economía  de expresión, control de flujo y estructura de datos mordernos y un rico conjunto de operadores. A demás, C no es un lenguaje  de muy alto nivel, y no esta especializado en alguna área especial de aplicación. Pero su ausencia de restricciones y su generalidad lo hacen más conveniente y efectivo para muchas tareas que otros lenguajes.
Este lenguaje ha sido estrechamente asociado con el sistema unix en donde fue desarrollado puesto que tanto que el sistema como los programas que corren en el están escritos en lenguaje C. Sin embargo este no está ligado a ningún sistemas operativo ni a ninguna máquina, debido a su utilidad para escribir compiladora y sistemas operativos, se utiliza con igual eficacia para escribir importantes programas de diversas disciplinas.

Lenguaje Imperativo

En este tipo de lenguajes, cuyo origen  está ligado a la propia arquitectura de von Neumann, la arquitectura consta de una  secuencia de celdas, llamadas memoria, en la cual se pueden guardar en forma codificada,  los mismo datos que instrucciones; y de un procesador, el cual es capaz de ejecutar de  manera secuencial una serie de operaciones, principalmente aritméticas y booleanas,  llamadas comandos. En general, un lenguaje imperativo ofrece al programador conceptos  que se traducen de forma natural al modelo de la máquina
Ventajas
  • C se caracteriza por su velocidad de ejecución. En los primeros días de la informática, los problemas de tiempo de ejecución se resolvían escribiendo todo o parte de una aplicación en lenguaje ensamblador (lenguaje muy cercano al lenguaje máquina).
  • El lenguaje C es poderoso y flexible, con órdenes, operaciones y funciones de biblioteca que se pueden utilizar para escribir la mayoría de los programas que corren en la computadora.
  • Se puede utilizar C para desarrollar sistemas operativos, compiladores, sistemas de tiempo real y aplicaciones de comunicaciones.
  • Un programa C puede ser escrito para un tipo de computadora y trasladarse a otra computadora con pocas o ninguna modificación -propiedad conocida como portabilidad-. El hecho de que C sea portable es importante ya que la mayoría de los modernos computadores tienen un compilador C, una vez que se aprende C no tiene que aprenderse un nuevo lenguaje cuando se escriba un programa para otro tipo de computadora. No es necesario reescribir un problema para ejecutarse en otra computadora.
  • Debido a que existen muchos programas escritos en C, se han creado numerosas bibliotecas C para programadores profesionales que soportan gran variedad de aplicaciones. Existen bibliotecas del lenguaje C que soportan aplicaciones de bases de datos, gráficos, edición de texto, comunicaciones, etc.
Desventajas
  • C es un lenguja de relativo bajo nivel.
  • Este trata el mismo tipo de objeto que la mayoría de las computadoras, llamadas caracteres, números y direcciones.
  • No proporciona operaciones para tratar directamente con objetos compuestos, tales como cadenas de caracteres, conjuntos, listas o arreglos.
  • No existen operaciones que manipulen arreglos o cadenas completas.
  • El lenguaje no define ninguna facilidad para asignación de almacenamiento que no sea la de definición estática y la disciplina de pilas y provistas por las variables locales de funciones.
  • No emplea heap ni recolector de basura.
  • En si mismo no proporciona capacidades de entrada y salida; no hay propociones Read o write, ni métodos propios de acceso a archivos.

0 comentarios :

Publicar un comentario

 
Taller de desarrollo c++ © 2013 | Designed by Alexander C.P , in collaboration with cienciaeducacion100 , Ciencias y Sistemas and cienciaeducacion100@gmail.com