Introduccin
Las herramientas de programacin, son aquellas que permiten realizar
aplicaciones, programas, rutinas, utilitarios y sistemas para que la parte
fsica del computador u ordenador, funcione y pueda producir
resultados.
Existen mltiples herramientas de programacin en el mercado, tanto
para analistas expertos como para principiantes.
Las herramientas ms comunes del mercado, cuentan con programas de
depuracin, que nos permiten detectar los posibles errores en tiempo de
ejecucin o corrida de rutinas y programas.
Otras herramientas de programacin son los lenguajes de programacin,
que nos permiten crear rutinas, programas y utilitarios.
Entre algunas de estas encontramos:
NetBeans, Eclipse, MPLab IDE, Matlab, Visual Studio, etc.
Desarrollo del tema
Algunas de las herramientas de programacin ms importantes y que
ms se usan son:
Compilador
Intrprete
Editor
Depurador
IDE
Compilador
Un compilador es:
Programa informtico que traduce un programa escrito en un
lenguaje de programacin a otro lenguaje de programacin.
Generando un programa equivalente que la mquina ser capaz
de interpretar.
Usualmente el segundo lenguaje es lenguaje de mquina, pero
tambin puede ser simplemente texto.
Este proceso de traduccin se conoce como compilacin.
Permite traducir el cdigo fuente de un programa en lenguaje de
alto nivel, a otro lenguaje de nivel inferior (tpicamente lenguaje
de mquina).
El programador puede disear un programa en un lenguaje mucho
ms cercano a cmo piensa un ser humano, para luego compilarlo
a un programa ms manejable por una computadora.
Editor
Un editor de texto es:
Programa que permite crear y modificar archivos digitales
compuestos nicamente por texto sin formato, conocidos
comnmente como archivos de texto o texto plano.
El programa lee el archivo e interpreta los bytes ledos segn el
cdigo de caracteres que usa el editor, es comnmente de 7 o 8bits en ASCII o UTF-8, rara vez EBCDIC.
Los editores de texto son incluidos en el sistema operativo o en
algn paquete de software instalado y se usan cuando se deben
crear o modificar archivos de texto como archivos de
configuracin, scripts o el cdigo fuente de algn programa.
Intrprete
En computacin es:
Un programa informtico capaz de analizar y ejecutar otros
programas, escritos en un lenguaje de alto nivel.
Se diferencian de los compiladores en que mientras estos
traducen un programa desde su descripcin en un lenguaje de
programacin al cdigo de mquina del sistema, los primeros (los
intrpretes) slo realizan la traduccin a medida que sea
necesaria,
tpicamente,
instruccin
por
instruccin,
y
normalmente no guardan el resultado de dicha traduccin.
Usando un intrprete, un solo archivo fuente puede producir
resultados iguales incluso en sistemas sumamente diferentes (ej.
un PC y una PlayStation 3).
Usando un compilador, un solo archivo fuente puede producir
resultados iguales solo si es compilado a distintos ejecutables
especficos a cada sistema.
Los programas interpretados suelen ser ms lentos que los
compilados debido a la necesidad de traducir el programa
mientras se ejecuta, pero a cambio son ms flexibles como
entornos de programacin y depuracin (lo que se traduce, por
ejemplo, en una mayor facilidad para reemplazar partes enteras
del programa o aadir mdulos completamente nuevos), y
permiten ofrecer al programa interpretado un entorno no
dependiente de la mquina donde se ejecuta el intrprete, sino
del propio intrprete (lo que se conoce comnmente como
mquina virtual).
Algunas implementaciones de programacin de lenguajes de
programacin pueden interpretar o compilar el cdigo fuente
original en una ms compacta forma intermedia y despus
traducir eso al cdigo de mquina (ej. Perl, Python, MATLAB, Ruby
y C#).
Comparando su actuacin 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 intrprete corresponde al intrprete humano, que
traduce de viva voz las palabras que oye, sin dejar constancia por
escrito.
Depurador
Un depurador es:
Un programa que permite depurar o limpiar los errores de otro
programa informtico.
Al Iniciarse la depuracin, el depurador lanza el programa a
depurar. ste se ejecuta normalmente hasta que el depurador
detiene su ejecucin, permitiendo al usuario examinar la
situacin.
Permite detener el programa en:
Un punto determinado mediante un punto de ruptura.
Un punto determinado bajo ciertas condiciones mediante un punto
de ruptura condicional.
Un momento determinado cuando se cumplan ciertas condiciones.
Un momento determinado a peticin del usuario.
Durante esa interrupcin, el usuario puede:
Examinar y modificar la memoria y las variables del programa.
Examinar el contenido de los registros del procesador.
Examinar la pila de llamadas que han desembocado en la situacin
actual.
Cambiar el punto de ejecucin, de manera que el programa
contine su ejecucin en un punto diferente al punto en el que fue
detenido.
Ejecutar instruccin a instruccin.
Ejecutar partes determinadas del cdigo, como el interior de una
funcin, o el resto de cdigo antes de salir de una funcin.
El depurador depende de la arquitectura y sistema en el que se ejecute,
por lo que sus funcionalidades cambian de un sistema a otro.
IDES ms populares
Generalmente, entre todos los IDEs creados para un lenguaje
determinado, siempre encontramos algunos ms populares que otros o
que han sido aceptados mejor entre los programadores.
De la misma manera nacen los frameworks (marcos de trabajo).
Son la base sobre la que se sustenta el programador para escribir
el cdigo de un programa, estos incluyen programas, bibliotecas y
un lenguaje interpretado entre otros programas para ayudar a
desarrollar y unir los diferentes componentes de un proyecto.
Generalmente renen las funciones ms comunes para llevar a
cabo un proyecto especfico.
Dentro de los entornos ms conocidos para Java encontramos
Eclipse y NetBeans, ambos proyectos de cdigo abierto, creados
en el propio lenguaje java, la diferencia entre los dos erradica en
que cada uno est enfocado a una finalidad distinta lo que no
conlleva a que ambos no puedan hacer lo mismo.
NetBeans se inclina hacia aplicaciones desarrolladas a partir de un
conjunto de componentes software, llamados mdulos. Los
mdulos pueden ser desarrollados independientemente, las
aplicaciones basadas en la plataforma NetBeans pueden ser
extendidas fcilmente por otros desarrolladores de software,
mientras que eclipse est orientado a desarrollar lo que el
proyecto llama "Aplicaciones de Cliente Enriquecido", opuesto a
las aplicaciones "Cliente-liviano" basadas en navegadores.
Uno de los entornos ms potentes de la red, es Microsoft Visual
Studio, C# es de los lenguajes ms rpidos dentro de su mbito.
Su principal caracterstica es que es un lenguaje interpretado, pero
a diferencia de java es interpretado a un lenguaje intermedio, que
luego es traducido al lenguaje mquina dependiendo en el sistema
que se ejecuta. Utiliza .net, el framework desarrollado por
Microsoft y de los ms conocidos ya que viene con el sistema
operativo Windows.
Una funcin de este entorno es que es capaz de reconocer lo que
se escribe y al mismo tiempo consultar una base de datos propia
para agilizar la escritura del cdigo, de manera que cuando
detecta que estas escribiendo algo relacionado con lo ya escrito o
conocido, es capaz de autocompletar el resto de texto. Cada vez
son ms los entornos que lo implementan.
Dentro del marco de los microcontroladores encontramos MPLab
IDE, es un editor gratuito destinado a productos de la marca
Microchip.
Es un editor modular, es decir, permite seleccionar los distintos
tipos de microcontroladores soportados, adems de permitir la
grabacin de estos circuitos integrados directamente al
programador.
MATLAB
Es un software matemtico con un lenguaje de programacin
propio (lenguaje M). Est disponible para los sistemas
Unix, Windows y Apple Mac OS X.
Entre sus prestaciones bsicas se hallan:
la manipulacin de matrices, la representacin de datos y
funciones, la implementacin de algoritmos, la creacin de
interfaces de usuario (GUI) y la comunicacin con programas en
otros lenguajes y con otros dispositivos hardware. El paquete
MATLAB dispone de dos herramientas adicionales que expanden
sus
prestaciones,
Simulink
(plataforma
de
simulacin
multidominio) y GUIDE (editor de interfaces de usuario GUI).