El Lenguaje de Programación y el Software Libre.
Un
lenguaje de programación es un lenguaje formal diseñado para expresar procesos
que pueden ser llevados 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 (de ser
necesario) 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.
Existe
un error común que trata por sinónimos los términos 'lenguaje de programación'
y 'lenguaje informático'. Los lenguajes informáticos engloban a los lenguajes
de programación y a otros más, como por ejemplo HTML (lenguaje para el marcado
de páginas web que no es propiamente un lenguaje de programación, sino un
conjunto de instrucciones que permiten estructurar el contenido de los
documentos).
Permite
especificar de manera precisa sobre qué datos debe operar una computadora, cómo
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. Una característica
relevante de los lenguajes de programación es precisamente que más de un
programador pueda usar un conjunto común de instrucciones que sean comprendidas
entre ellos para realizar la construcción de un programa de forma colaborativa.
Clasificación
En la
actualidad hay más de 100 lenguajes de programación diferentes. No vamos a
definir todos los lenguajes de programación que existen porque son muchos pero
sí os hablaremos de los más importantes y para qué se utilizan.
Un
ordenador no entiende un lenguaje como el que utilizan los humanos, sino que el
lenguaje que entiende se llama “lenguaje binario” o “código binario” o “código
máquina” que consiste en ceros y unos básicamente, es decir, una máquina sólo
utiliza los números 0 y 1 para codificar cualquier acción a tomar. Si quieres
conocer mejor este sistema de numeración te recomendamos este enlace: Sistema Binario
Se
clasifican en dos tipos:
•Los Lenguajes
de Programación de Bajo Nivel: que son aquellos utilizados fundamentalmente
para controlar el “hardware” del ordenador y dependen totalmente de la máquina
y no se pueden utilizar en otras máquinas. Están orientados exclusivamente para
la máquina Estos lenguajes son los que ordenan a la máquina operaciones
fundamentales para que pueda funcionar. Utiliza básicamente ceros, unos y
abreviaturas de letras. Estos lenguajes también se llaman de código máquina.
Son los más complicados, pero solo los
usan prácticamente los creadores de las máquinas. Con este tipo de lenguajes
programan la asignación y liberación de memoria, el uso de punteros, el poder
usar paso por valor y por referencia, la creación de tipos de datos, etc.
•Los Lenguajes
de Programación de Alto Nivel: Estos lenguajes son más parecidos al lenguaje
natural humano y no dependen de la máquina y sirven fundamentalmente para crear
programas informáticos que solucionan diferentes problemas. Son los más usados
por los programadores y por todo del mundo que realiza programas informáticos.
TIPOS DE
LENGUAJES DE PROGRAMACION
LENGUAJES
DE PROGRAMACIÓN MÁS USADOS
•Lenguaje
de Programación “HTML”: Este lenguaje es
con el que se crean las páginas web, por ejemplo, que básicamente es un
conjunto de etiquetas que sirven para definir el texto y otros elementos que
puedes ver en las páginas web. HTML significa HyperText
Markup
Lenguaje («lenguaje de marcas de hipertexto») y es muy fácil de aprender. Luego
ya depende de si queremos una web más o menos elaborada podremos profundizar en
este lenguaje. Por ejemplo, el lenguaje de programación CSS (Cascading
Style Sheets) son
hojas que sirven para dar “estilo” a las páginas web como su color, definir su
fondo, tipos de letra…etc
•Lenguaje
de Programación “SQL”: Este lenguaje está
creado para realizar consultas a bases de datos principalmente. SQL son las
siglas de Structured Query
Lenguaje ( Lenguaje estructurado de consultas) y se utiliza para páginas web y
también para aplicaciones de ordenadores, para manejar datos sobre todo.
(Introducir datos, actualizar datos, eliminar o seleccionar datos)
•Lenguaje
de Programación “Java”: Probablemente éste podría ser el favorito de más de uno
ya que es el lenguaje utilizado para programas punteros como herramientas,
juegos y aplicaciones. Este lenguaje de programación se utiliza en miles de
millones de dispositivos móviles y aparatos de televisión y en más de 850
millones de ordenadores personales de todo el mundo. Java está instalado en
inmensidad de aplicaciones y sitios web. Probablemente también te suene
JavaScript, que es otro lenguaje utilizado para crear pequeños programas
encargados de realizar acciones dentro de una web como por ejemplo para crear
efectos especiales o para definir interactividades con los usuarios.
•Lenguaje
de Programación “C”: Este lenguaje de programación está orientado a los
Sistemas Operativos y es muy eficaz y con él podemos crear Softwares
de sistemas operativos como Windows o Linux y también para aplicaciones.
También sirve para experimentos informáticos, físicos, matemáticos…etc. Es
también muy utilizado en robótica con el que se programan simuladores, etc.
•Lenguaje
de Programación “XML”: Este lenguaje es también un lenguaje de etiquetas como
el HTML, pero a diferencia de éste, el lenguaje XML separa el contenido de la
presentación, es decir, XML se preocupa del significado del texto que define el
HTML. Te da el dato + el significado de ese dato, mientras que el HTML te da el
dato nada más. El XML es un complemento fundamental al HTML.
•Lenguaje
de Programación “PHP”: El PHP es un
lenguaje de programación similar al HTML que nos sirve fundamentalmente para
páginas web y se puede combinar con el lenguaje HTML. El lenguaje PHP se basa
en los “scripts” que es un guion de
órdenes o instrucciones que recibe un servidor de una página web para leer su
código fuente.
Así podríamos
seguir definiendo múltiples y variados lenguajes de programación. Como verás
son verdaderamente útiles y necesarios y sirven prácticamente para cualquier
cosa.
Casi todos
los lenguajes de programación tienen unos fundamentos o bases comunes, esto
hace que sea relativamente fácil aprender un lenguaje nuevo si ya conocemos
otro. En el siguiente enlace puedes aprender estos fundamentos básicos:
Fundamentos de Programación.
Si quieres
aprender a programar te recomendamos una primera experiencia con Robomind
muy sencillo, para niños, pero mejor empezar por aquí para no desilusionarnos
desde el principio. Es muy sencillo para niños. Luego puedes seguir con
MSWLOGO. Los dos son gratuitos y fáciles.
Lenguaje de Alto Nivel
•Los
Lenguajes de Programación de Alto Nivel: Estos lenguajes son más parecidos al
lenguaje natural humano y no dependen de la máquina y sirven fundamentalmente
para crear programas informáticos que solucionan diferentes problemas. Son los
más usados por los programadores y por todo del mundo que realiza programas
informáticos.
En un
lenguaje de alto nivel sólo tengo que poner sqt(x),
que sería una función predeterminada, calcular el cuadrado de x.
Si
fuera de bajo nivel, yo mismo tendría que crear la función sabiendo como
funciona el cuadrado de un número:
cuadrado(x)
= x * x
Como
vemos para aprender a programar con un lenguaje de alto nivel debemos conocer
el propio lenguaje que utiliza y todos sus comandos, en el ejemplo saber que sqt
realiza el cuadrado de un número.
Para
no extendernos mucho en esto que es bastante amplio, pasaremos a explicaros
algunos de los lenguajes de programación más usados en las máquinas que más
utilizamos.
Lenguaje de Bajo Nivel
Los Lenguajes
de Programación de Bajo Nivel: que son aquellos utilizados fundamentalmente
para controlar el “hardware” del ordenador y dependen totalmente de la máquina
y no se pueden utilizar en otras máquinas. Están orientados exclusivamente para
la máquina Estos lenguajes son los que ordenan a la máquina operaciones
fundamentales para que pueda funcionar. Utiliza básicamente ceros, unos y
abreviaturas de letras. Estos lenguajes también se llaman de código máquina.
Son los más complicados, pero solo los
usan prácticamente los creadores de las máquinas. Con este tipo de lenguajes
programan la asignación y liberación de memoria, el uso de punteros, el poder
usar paso por valor y por referencia, la creación de tipos de datos, etc.
Software Libre
Software libre (en inglés free software, aunque esta
denominación a veces se confunde con «gratis» por la ambigüedad del término
free en el idioma inglés, por lo que también se usa libre software) es la
denominación del software que respeta la libertad de todos los usuarios que
adquirieron el producto y, por tanto, una vez obtenido el mismo, puede ser
usado, copiado, estudiado, modificado, y redistribuido libremente de varias
formas.2 Según su principal impulsora, la organización Free Software Foundation,
el software libre se refiere a la seguridad de los usuarios para ejecutar,
copiar, distribuir y estudiar el software, e incluso modificarlo y distribuirlo
modificado.
Un programa informático es software libre si otorga a los
usuarios todas estas libertades de manera adecuada. De lo contrario no es
libre. Existen diversos esquemas de distribución que no son libres, y si bien
podemos distinguirlos en base a cuánto les falta para llegar a ser libres, su
uso bien puede ser considerado contrario a la ética en todos los casos por
igual.2
El software libre suele estar disponible gratuitamente, o al
precio de coste de la distribución a través de otros medios; sin embargo no es obligatorio
que sea así, por lo tanto no hay que asociar «software libre» a «software
gratuito» (denominado usualmente freeware), ya que, conservando su carácter de
libre, puede ser distribuido comercialmente. Análogamente, el software gratis o
gratuito incluye en ocasiones el código fuente; no obstante, este tipo de
software no es «libre» en el mismo sentido que el software libre, a menos que
se garanticen los derechos de modificación y redistribución de dichas versiones
modificadas del programa.
Tampoco debe confundirse software libre con «software de
dominio público». Éste último es aquel que no requiere de licencia, pues sus
derechos de explotación son para toda la humanidad, porque pertenece a todos
por igual. Cualquiera puede hacer uso de él, consignando su autoría original.
Este software sería aquel cuyo autor lo dona a la humanidad o cuyos derechos de
autor han expirado. Si un autor condiciona su uso bajo una licencia, por muy
débil que sea, ya no es del dominio público.
Programas de software libre
Mozilla Firefox: Navegador Web con todo lo que puedes esperar, una cantidad inmensa de extensiones, que pueden ayudarte a lo que necesites, además es rápido y fiable, actualizaciones habituales.
GIMP: Editor gráfico, muy potente, y con muchas capacidades, se pueden obtener grandes resultados con un poco de empeño.
Notepad++: Es para mi, una herramienta indispensable, siempre lo instalo, en todos los equipos que uso, ya que lee texto en practicamente, cualquier formato, y detecta palabras reservadas de multiples lenguajes de programación, y de etiquetas.
Open Office: El sustituto de la suite de ofimática de Microsoft, la verdad es que es completisima, y además plenamente compatible con la versión de la empresa de Redmond.
Eclipse: Es para mi, mi herramienta favorita para los programas Java, muy util, consume quizá muchos recursos, pero los resultados y sus complementos la hacen muy útil para el desarrollo de aplicaciones de todo tipo.
Videloan VLC mediaplayer: El reproductor por excelencia, potente , rápido y bajo consmo, además está lleno de sorpresas, cada día puedes descubirr una nueva funcionalidad.
Ubuntu Linux: El sistema operativo de Linux, más usable y cercano para el usuario habituado a Windows, es muy completo, y con unas pocas indicaciones, puede sustituir en todo al apreciado por todos Windows XP (digo apreciado, porque seamos realist,a la cantidad de nosotros que lo usamos).
aMSN: Comunicación en tiempo real, con cuentas de hotmail, yahoo, gmail… vamos un programa de mensajeria instantanea.
Thunderbird: La mejor forma de no usar outlook, nuca más, si lo pruebas, te lo quedas para siempre.
ClamWin: Antivirus, puede que no sea lo mejor del mercado, pero es abierto, y eso le da un plus.
BitTorrent: Con lo de moda que está hablar del P2P, con un poco de suerte desligamos la mula, como único programa mundial de P2P. ;)
TrueCrypt: Realmente nadie podía esperar, que uno de criptografía no fuera a caer, en este listado, cifra PenDrives, discos duros, carpetas, lo que quieras. Es una gran herramienta, para los que nos gusta la seguridad.
PDFCreator: sirve para crear una impresora virtual, que imprime, lo que sea en formato PDF, muy util, que digo realemnte util, además aunque suene a chino, es facilísmo de utilizar.
musikCube: Reproductor de música, y control de bibliotecas tipo iTunes.
No hay comentarios.:
Publicar un comentario