Vous êtes sur la page 1sur 4

El desarrollo de software, es una de las ramas de la ingeniería que se en enfoca principalmente a lo que es la creación de sistemas

informáticos… pero ok, todo eso ya lo sabes, no necesito decirte qué es el desarrollo de software en esta instancia. De hecho está de más
que te explique pues si estás aquí es porque vienes a buscar herramientas de desarrollo de software y es precisamente lo que vamos a ver
a continuación.

El desarrollo de software, también conocido como el ciclo del software, se compone por diversas etapas que dependen precisamente de
qué es lo que se está llevando a cabo, cada una de esas etapas cuenta con distintas Herramientas de Desarrollo de Software y hoy vamos a
ver cada una de ellas, para que sin importar en que fase de desarrollo te encuentres, tengas la posibilidad de usar distintas herramientas de
software que te faciliten la vida en gran manera.

Herramientas de Desarrollo de Software

Una ves que ya contamos con lo que son los Diagramas UML en la parte del modelado de software, es momento de pasar al desarrollo.
Aunque no lo creas, esta etapa es de las más laboriosas y complicadas, dependiendo claro de tu equipo de trabajo, pero también del
lenguaje de programación que estés dispuesto a utilizar. Pero por ejemplo, para la mayoría de los lenguajes conocidos, contamos con sus
respectivos IDE. Si eres de los que apenas estudiaron desarrollo de sistemas informáticos esta década, se sonará familiar el IDE Netbeans
de Java. Pues estos Ambientes de Desarrollo Integrados, también se encuentran disponible para otros lenguajes de programación.

Entre estos lenguajes de programación con IDE disponible, se encuentra: .Net de Microsoft, C y PHP. Así que tendrás la comodidad de
contar con un ambiente amigable, que te permitirá escribir código y analizarlo para mostrarte en que parte de la sintaxis estás incorrecto.
Además permiten compilar el código escrito para posteriormente realizar pruebas y hacer las respectivas depuraciones. Todo esto con
elementos visuales y amigables que permitirán que no te sientas solo al momento de estar desarrollando en cualquiera de estos lenguajes
de programación.

Software para Desarrollo Web

Como les comentaba, hace un momento acabamos de pasar por lo que son las aplicaciones para desarrolladores, en básicamente cada una
de las fases de los procesos de desarrollo de software. Sin embargo ahora veremos otro tipo de software para desarrollo de aplicaciones.
Se trata más que nada, de plataformas, las cuales nos permiten ir paso a paso en lo que son la creación de aplicaciones web. Vamos a ver,
algunas de las mejores herramientas para desarrolladores web, que seguramente necesitarás para trabajar más cómodamente y que sin
duda harán que tu eficiencia mejore.

• Chrome Developer Tools. Seguramente ya tienes una idea de para que sirve esta fabulosa herramientas de Chrome. Es uno de los
programas para hacer depuraciones más eficientes. Si eres de esos desarrolladores web que se la pasan depurando el código y viendo su
funcionamiento en tiempo real. Seguramente Chrome Developer Tools será para tí. Pues entre las ventajas que nos proporciona, destaca
la posibilidad de hacer ediciones en tiempo real en el DOM (HTML)/CSS y sobretodo te permitirá aprender más sobre la ejecución de las
aplicaciones web en tu navegador.Por supuesto que una de las principales ideas de Chrome Developer Tools, es que puedas encontrar
cualquier tipo de problema que se genere en el diseño y por supuesto abre la puerta a la optimización del código.

• Grunt. Seguramente si eres de los que además de los programas para desarrollo web utilizan Javascript en abundancia, entonces Grunt
es para tí. Se trata de una aplicación que nos permitirá automatizar las tareas que deseemos realizar mediante javascripts. De inicio, Grunt
nos ofrece la posibilidad de automatizar algunas tareas sencillas y comunes, las cuales recomienda por default, sin embargo si tienes un
nivel más avanzado, seguramente querrás automatizarlas por tu cuenta de acuerdo a tus necesidades.Grunt es una de las herramientas de
programación web más fáciles de usar y además cuenta con una gran comunidad para todas esas dudas que tengas.

• LiveReload. Como su nombre en Español lo indica, LiveReload es una de las herramientas para el desarrollo web, que da pié a la
posibilidad de ahorrar una gran cantidad de tiempo y trabajo. Pues si contamos con LiveReload instalado, ya no tendremos la necesidad
de estar recargando la página para visualizar los cambios. LiveReload tiene como función principal, el recargar la página de forma
automática, una vez que se haya modificado algo, de esta forma te ahorrarás muchos clics y se te actualizará tu desarrollo web en
automático.Del mismo modo que con Grunt, LiveReload cuenta con un perfil de GitHub, donde no solamente podrás echar un vistazo al
código fuente, si no que además tendrás la posibilidad de hacer propuestas para el desarrollo y mantenimiento del programa.

• Mocha. La cuarta de las herramientas de desarrollo web, es un Framework, que tiene como objetivo el que puedas hacer pruebas de
Javascript, que aunque suene algo nada extraordinario, la verdad es que te ahorrará mucho tiempo y dolores de cabeza. Trabaja con lo que
es Node.js y dentro del mismo navegador, permitiendo la asincronía de una forma tan eficiente, que permite que sus reportes sean mucho
mas precisos.

• Karma. De los creadores de AngularJS, llega Karma, un test tunner de javascripts, donde no solamente podrás hacer pruebas en tiempo
real, si no que además, si trabajaste con Mocha en un determinado momento, con Karma podrás ejecutar sus pruebas fácilmente, por lo
que la retroalimentación se realizará en tiempo real.Del mismo modo que las anteriores herramientas de desarrollo web, con Karma
podrás ver el código fuente en su perfil de GitHub y su gran comunidad la podrás encontrar en su perfil de Twitter.
Estas son algunas de las herramientas de Software libre para los desarrolladores web. Te permitirán optimizar tiempos, hacer pruebas mas
eficiencias, depurar tu código con una eficacia espectacular y sobretodo, permitirá que tus tiempos de desarrollo sean menores en todos
los aspectos, personalmente ese es uno de los puntos más a favor, ahora solo cuéntanos cual de estas herramientas es la que más utilizas o
la que estás tentado a probar.

Estilo: Del lat. stilus 'punzón para escribir', 'modo de escribir'.


1. m. Modo, manera, forma de comportamiento. Tiene mal estilo. 2. m. Uso, práctica, costumbre, moda. 3. m. Manera de escribir
o de hablar peculiar de un escritor o de un orador. Elestilo de Cervantes. 4. m. Carácter propio que da a sus obras un artista
plástico o un músico. El estilode Miguel Ángel. El estilo de Rossini. 5. m. Conjunto de características que identifican la
tendencia artística de unaépoca, o de un género o de un autor. Estilo neoclásico. 6. m. Gusto, elegancia o distinción de una
persona o cosa. Pepa viste con estilo. 7. m. Punzón con el cual escribían los antiguos en tablas enceradas. 8. m. gnomon (‖
indicador de las horas en el reloj solar). 9. m. Bot. Columna pequeña, hueca o esponjosa, existente en la mayoría de lasflores,
que arranca del ovario y sostiene el estigma. 10. m. Dep. Cada una de las distintas formas de realizar un deporte. Prueba
enestilo mariposa. 11. m. Mar. Púa sobre la cual está montada la aguja magnética. 12. m. Arg. y Ur. Composición musical de
origen popular, para guitarra y canto, decarácter evocativo y espíritu melancólico.

Lenguaje: Una vez expuesto esto tenemos que determinar que con la palabra lenguaje lo que hacemos es referirnos a todo aquel conjunto
de signos y de sonidos que ha utilizado el ser humano, desde su creación hasta nuestros días, para poder comunicarse con otros
individuos de su misma especie a los que manifiesta así tanto lo que siente como lo que piensa acerca de una cuestión determinada.

El concepto de lenguaje puede ser entendido como un recurso que hace posible la comunicación. En el caso de los seres humanos, esta
herramienta se encuentra extremadamente desarrollada y es mucho más avanzada que en otras especies animales, ya que se trata de un
proceso de raíces fisiológicas y psíquicas. El lenguaje, como sabrán muchos de ustedes, le brinda la posibilidad al hombre de seleccionar,
citar, coordinar y combinar conceptos de diversa complejidad.

Lenguaje Interpretado: El uso de los lenguajes interpretados ha venido en crecimiento y cuyos máximos representantes son los lenguajes
usados para el desarrollo web entre estos Ruby, Python, PHP (se interpreta del lado del servidor), JavaScript y otros como Perl, Smalltalk,
MATLAB, Mathematica (el que usan en Wolfram Alpha). Básicamente un lenguaje interpretado es aquel en el cual sus instrucciones o
más bien el código fuente, escrito por el programador en un lenguaje de alto nivel, es traducido por el interprete a un lenguaje entendible
para la máquina paso a paso, instrucción por instrucción. El proceso se repite cada vez que se ejecuta el programa el código en cuestión.

Los lenguajes interpretados permiten el tipado dinámico de datos, es decir, no es necesario inicializar una variable con determinado tipo
de dato sino que esta puede cambiar su tipo en condición al dato que almacene entre otras características más.

También tienen por ventaja una gran independencia de la plataforma donde se ejecutan de ahí que los tres primeros mencionados arriba
sean multiplataforma comparándolos con algunos lenguajes compilados como Visual Basic, y los programas escritos en lenguajes
interpretados son más livianos.

La principal desventaja de estos lenguajes es el tiempo que necesitan para ser interpretados. Al tener que ser traducido a lenguaje
máquina con cada ejecución, este proceso es más lento que en los lenguajes compilados, sin embargo, algunos lenguajes poseen una
máquina virtual que hace una traducción a lenguaje intermedio con lo cual el traducirlo a lenguaje de bajo nivel toma menos tiempo.

Lenguaje Compilado: Un lenguaje compilado es aquel cuyo código fuente, escrito en un lenguaje de alto nivel, es traducido por un
compilador a un archivo ejecutable entendible para la máquina en determinada plataforma. Con ese archivo se puede ejecutar el programa
cuantas veces sea necesario sin tener que repetir el proceso por lo que el tiempo de espera entre ejecución y ejecución es ínfimo.

Dentro de los lenguajes de programación que son compilados tenemos la familia C que incluye a C++, Objective C, C# y también otros
como Fortran, Pascal, Haskell y Visual Basic.

Java es un caso particular ya que hace uso de una máquina virtual que se encarga de la traducción del código fuente por lo que hay veces
es denominado compilado e interpretado. Otra ventaja de la máquina virtual que usar Java es que le permite ejecutar código Java en
cualquier máquina que tenga instalada la JVM.

Principalmente vemos los lenguajes interpretados en el desarrollo de aplicaciones o sitios web que van acompañados de frameworks que
facilitan en gran medida su programación. Esto se da ya que no es necesario que el usuario final posea, en el caso de los lenguajes
compilados, el compilador instalado en su ordenador para ejecutar el programa o el archivo objeto que este produce. Mayoritariamente
necesitan un navegador actualizado y conexión a Internet para acceder y usar de aplicaciones en línea.
------Un lenguaje compilado es un lenguaje de programación cuyas implementaciones son normalmente compiladores (traductores que
generan código de máquina a partir del código fuente) y no intérpretes (ejecutores paso a paso del código fuente, donde no se lleva a cabo
una traducción en la preejecución).

El término es un tanto vago. En principio, cualquier lenguaje puede ser implementado con un compilador o un intérprete. Sin embargo, es
cada vez más frecuente una combinación de ambas soluciones: un compilador puede traducir el código fuente en alguna forma intermedia
(muchas veces llamado Bytecode), que luego se pasa a un intérprete que lo ejecuta.

Ventajas y desventajas

Los programas compilados a código nativo en tiempo de compilación tienden a ser más rápidos que los traducidos en tiempo de ejecución,
debido a la sobrecarga del proceso de traducción. Sin embargo, las nuevas tecnologías como la compilación en tiempo de ejecución, y
mejoras generales en el proceso de traducción están empezando a reducir esta brecha. En algún punto intermedio, tiende a ser más
eficiente la solución mixta usando bytecode.

Los lenguajes de programación de bajo nivel son típicamente compilados, en especial cuando la eficiencia es la principal preocupación,
en lugar de soporte de plataformas cruzadas. Para los lenguajes de bajo nivel, hay más correspondencias uno a uno entre el código
programado y las operaciones de hardware realizadas por el código máquina, lo que hace que sea más fácil para los programadores
controlar más finamente la CPU y uso de memoria.

Algunos lenguajes que comúnmente se consideran compilados: ALGOL, C, C++, COBOL, Delphi, Pascal, Visual Basic

Un lenguaje compilado es aquel cuyo código fuente, escrito en un lenguaje de alto nivel, es traducido por un compilador a un archivo
ejecutable entendible para la máquina en determinada plataforma. Con ese archivo se puede ejecutar el programa cuantas veces sea
necesario sin tener que repetir el proceso por lo que el tiempo de espera entre ejecución y ejecución es ínfimo.

Dentro de los lenguajes de programación que son compilados tenemos la familia C que incluye a C++, Objective C, C# y también otros
como Fortran, Pascal, Haskell y Visual Basic.

Java es un caso particular ya que hace uso de una máquina virtual que se encarga de la traducción del código fuente por lo que hay veces
es denominado compilado e interpretado. Otra ventaja de la máquina virtual que usar Java es que le permite ejecutar código Java en
cualquier máquina que tenga instalada la JVM.

Principalmente vemos los lenguajes interpretados en el desarrollo de aplicaciones o sitios web que van acompañados de frameworks que
facilitan en gran medida su programación. Esto se da ya que no es necesario que el usuario final posea, en el caso de los lenguajes
compilados, el compilador instalado en su ordenador para ejecutar el programa o el archivo objeto que este produce. Mayoritariamente
necesitan un navegador actualizado y conexión a Internet para acceder y usar de aplicaciones en línea.

A los lenguajes compilados los vemos más en software de escritorio ya que requieren de mayores recursos y de acceso a archivos
determinados. También por el peso mayor que estos suelen tener en sus archivos ejecutables.

El uso de los lenguajes interpretados ha venido en crecimiento y cuyos máximos representantes son los lenguajes usados para el
desarrollo web entre estos Ruby, Python, PHP (se interpreta del lado del servidor), JavaScript y otros como Perl, Smalltalk, MATLAB,
Mathematica (el que usan en Wolfram Alpha). Básicamente un lenguaje interpretado es aquel en el cual sus instrucciones o más bien el
código fuente, escrito por el programador en un lenguaje de alto nivel, es traducido por el interprete a un lenguaje entendible para la
máquina paso a paso, instrucción por instrucción. El proceso se repite cada vez que se ejecuta el programa el código en cuestión.

Los lenguajes interpretados permiten el tipado dinámico de datos, es decir, no es necesario inicializar una variable con determinado tipo
de dato sino que esta puede cambiar su tipo en condición al dato que almacene entre otras características más.

También tienen por ventaja una gran independencia de la plataforma donde se ejecutan de ahí que los tres primeros mencionados arriba
sean multiplataforma comparándolos con algunos lenguajes compilados como Visual Basic, y los programas escritos en lenguajes
interpretados son más livianos.

La principal desventaja de estos lenguajes es el tiempo que necesitan para ser interpretados. Al tener que ser traducido a lenguaje
máquina con cada ejecución, este proceso es más lento que en los lenguajes compilados, sin embargo, algunos lenguajes poseen una
máquina virtual que hace una traducción a lenguaje intermedio con lo cual el traducirlo a lenguaje de bajo nivel toma menos tiempo.

Interpretado: Un lenguaje interpretado es un lenguaje de programación para el que la mayoría de sus implementaciones ejecuta las
instrucciones directamente, sin un previa compilación del programa a instrucciones en lenguaje máquina. El intérprete ejecuta el
programa directamente, traduciendo cada sentencia en una secuencia de una o más subrutinas ya compiladas en código máquina.
Los términos lenguaje interpretado y lenguaje compilado1 no son correctos porque, en teoría, cualquier lenguaje de programación puede
ser interpretado o compilado. Cada vez es más popular, en las implementaciones más modernas de un lenguaje de programación, ofrecer
ambas opciones.

Los lenguajes interpretados también pueden diferenciarse de los lenguajes de máquina. Funcionalmente, tanto la ejecución y la
interpretación significan lo mismo -obtener la siguiente instrucción/sentencia del programa y su ejecución-. Aunque el bytecode (código
byte) interpretado es además idéntico a su forma en código máquina y tiene una representación en ensamblador, el término "interpretado"
se reserva en la práctica para lenguajes "procesados por software" (como las máquinas virtuales o emuladores) por encima del procesado
nativo (por ejemplo, por hardware).

Evitando la compilación, los programas interpretados son más fáciles de evolucionar durante el desarrollo y la ejecución
(transformándose en ocasiones de uno en la otra). De otra parte, ya que la compilación implica una traducción a un formato más amigable
con la máquina, los programas interpretados corren más lentamente y menos eficientemente (es decir, gastan considerablemente más
energía). Esto es especialmente verdad para los lenguajes de guion, cuyas sentencias son más complejas de analizar comparadas con las
instrucciones máquina.

Muchos lenguajes se han implementado usando tanto compiladores como intérpretes, incluyendo BASIC, C, Lisp, Pascal y Python. Java
y C# se compilan a código byte, el lenguaje interpretado específico para la máquina virtual. Muchas implementaciones de Lisp pueden
mezclar libremente código interpretado y compilado.

Ventajas de interpretar un lenguaje

Interpretar un lenguaje da a las implementaciones una flexibilidad adicional sobre las implementaciones compiladas. Algunas
características son más fáciles de implementar en intérpretes que en compiladores son (pero no se limitan a estas):

Independencia de la plataforma (por ejemplo el bytecode de Java), Reflexión y uso reflexivo del evaluador (por ejemplo, una función
eval de primer orden), Tipos dinámicos, Un tamaño del programa más pequeño (puesto que las implementaciones tienen la flexibilidad de
elegir el conjunto de instrucciones), Ámbito dinámico, Facilidad en la depuración (es más fácil obtener información del código fuente en
lenguajes interpretados)

Desventajas de los lenguajes interpretados[editar]

La principal desventaja de la interpretación es una velocidad de ejecución del programa mucho más lenta, comparada con la ejecución
directa del código máquina en la CPU del ordenador. Una técnica utilizada para mejorar las prestaciones es la compilación en tiempo de
ejecución, que convierte las secuencias ejecutadas más frecuentes en código máquina del ordenador.

Lista de lenguajes más usados de forma interpretada: APL Un lenguaje orientado a vectores que usa un conjunto de caracteres inusual,
MATLAB, PHP, Python, Ruby

¿Diferencias?: Los lenguajes compilados son lenguajes de alto nivel en los que las instrucciones se traducen a código máquina, creando
un archivo "traducido" para una ejecución rápida. Por el contrario un lenguaje interpretado es aquel en el que las instrucciones se
traducen o interpretan una a una, cada vez que se ejecute el programa. Los lenguajes interpretados son típicamente unas 10 veces más
lentos que los programas compilados.

EL lenguaje interpretado es mucho menos eficiente que la ejecución de un programa compilado, tampoco es eficiente en tiempo ya que
cada instrucción debe pasar por una interpretación en tiempo de ejecución.

El lenguaje interpretado tiene más flexibilidad frente a los lenguajes compilados, más facilidad para lograr independencia de plataformas
(portabilidad) y menor tamaño de programa.

Vous aimerez peut-être aussi