Lenguajes de programación

Desarrollo de Software

Desarrollo WEB

Diferencias entre desarrollo de software y desarrollo WEB

1 2 3 4

lunes, 18 de julio de 2016

LENGUAJES DE PROGRAMACIÓN

Los lenguajes de programación son lenguajes creado por el ser humano para poder comunicarse con las computadoras. Así podríamos decir que lenguaje de programación es el conjunto de símbolos y palabras que permiten al usuario de una computadora darle instrucciones y órdenes para que la computadora los ejecute.

Existen diferentes clases o tipos de lenguajes de programación:

1º El Lenguaje Máquina: es el lenguaje de programación que entiende directamente la máquina (computadora). Este lenguaje de programación utiliza el alfabeto binario, es decir, el 0 y el 1.




Con estos dos únicos dígitos, también conocidos como bits, se forman lo que se conoce como cadenas binarias (combinaciones de ceros y unos) son con las que se escriben las instrucciones, y a través de estas instrucciones el microprocesador de la computadora entiende nuestras peticiones. El lenguaje máquina fue el primer lenguaje de programación. Este lenguaje de programación dejo de utilizarse por su gran dificultad y por la facilidad para cometer errores al escribir las cadenas binarias.




2º Lenguajes de programación de bajo nivel: Son mucho más fáciles de utilizar que el lenguaje máquina, pero dependen mucho de la máquina o computadora como sucedía con el lenguaje máquina. El lenguaje ensamblador fue el primer lenguaje de programación que trato de sustituir el lenguaje máquina por otro lenguaje que fuese más parecido al de los seres humanos.

En este lenguaje se conoce como programa fuente, que traduce las instrucciones a un programa escrito en lenguaje ensamblador por el programador, y programa objeto es la traducción a lenguaje máquina del programa fuente.
Los lenguajes de este tipo pueden crear programas muy rápidos, pero son difíciles de aprender, son específicos de cada procesador (de cada máquina), si nos llevamos el programa a otro computador será preciso reescribir el programa desde el comienzo.




3º Lenguajes de programación de alto nivel:
 Este tipo de lenguajes de programación son independientes de la máquina, los podemos usar en cualquier computador con muy pocas modificaciones o sin ellas, son muy similares al lenguaje humano, pero precisan de un programa interprete o compilador que traduzca este lenguaje de programación de alto nivel a uno de bajo nivel como el lenguaje de máquina que la computadora pueda entender.

Los lenguajes de programación de alto nivel son más fáciles de aprender porque se usan palabras o comandos del lenguaje natural, generalmente del inglés. Este es el caso del BASIC, el lenguaje de programación más conocido.
Existen muchos lenguajes de programación de alto nivel con sus diferentes versiones. Por esta razón es difícil su tipificación, pero una clasificación muy extendida desde el punto de vista de trabajar de los programas y la filosofía de su creación es la siguiente:




Lenguajes de programación imperativos: La programación imperativa es un paradigma de programación, o un enfoque de desarrollo de software, el cual emplea funciones para modificar el estado de un programa.

Estas funciones se codifican implícitamente en cada paso necesario para resolver un problema en la programación imperativa.

 

En otras palabras, “un sistema imperativo controla una máquina o mecanismo que ayuda a producir el resultado deseado. Normalmente, los usuarios expresan sus deseos sobre el resultado final en una especificación y un programador crea un sistema para producir ese resultado”,

Lenguajes de programación declarativos: No hay consenso sobre la definición de este paradigma, pero todas las explicaciones coinciden en algo: lo que destaca de los lenguajes de programación declarativa es que siempre se describe el resultado final deseado, en lugar de mostrar todos los pasos de trabajo. Para alcanzar el objetivo, en la programación declarativa se determina automáticamente la vía de solución. Esto funciona siempre y cuando las especificaciones del estado final se definan claramente y exista un procedimiento de ejecución adecuado. Si se dan las dos condiciones, la programación declarativa es muy eficiente.






Otra clasificación de los lenguajes de programación de alto nivel, es teniendo en cuenta el desarrollo de las computadoras según sus diferentes generaciones:


Lenguajes de programación de primera generación: el lenguaje máquina y el ensamblador.

Lenguajes de programación de segunda generaciónlos primeros lenguajes de programación de alto nivel imperativo (FROTRAN, COBOL).

Lenguajes de programación de tercera generación: son lenguajes de programación de alto nivel imperativo, pero mucho más utilizados y vigentes en la actualidad (ALGOL 8, PL/I, PASCAL, MODULA).

Lenguajes de programación de cuarta generación: usados en aplicaciones de gestión y manejo de bases de datos (NATURAL, SQL).

Lenguajes de programación de quinta generación: creados para la inteligencia artificial y para el procesamiento de lenguajes naturales (LISP, PROLOG).



Desarrollo de software

En cualquier ordenador podemos distinguir dos elementos esenciales: el hardware y el software. El hardware es la parte física, los chips y los cables (la máquina) mientras que el software son los programas que se ejecutan sobre esta pieza de ingeniería física.
El objetivo del desarrollo del software es el de desarrollar un programa informático es el resultado final de un proceso que empieza con el planteamiento de un problema. Un programa es un conjunto de instrucciones escritas con un lenguaje de programación y que serán ejecutadas en un ordenador.
Cada PC reconoce un lenguaje propio, denominado lenguaje máquina o ensamblador, que consta de unas instrucciones muy a bajo nivel, en las cuales se accede directamente a los elementos físicos de la máquina como por ejemplo los registros.



lenguajes de programación de alto nivel, donde se busca por una parte un lenguaje más fácil de escribir y leer, y por la otra la portabilidad, es decir que podamos traer los programas de una máquina a otra. Realmente lo que la máquina ejecuta continúa siendo código máquina, pero el programador escribe en otro lenguaje. Hace falta, por lo tanto, una etapa de traducción intermedia. Esta traducción puede ser por dos mecanismos diferentes: la compilación y la interpretación:

- Compilación: antes de ejecutar nuestro programa, lo compilamos. Lo que denominamos compilador (que es otro programa) primero reconoce si nuestro código está escrito siguiendo las reglas del lenguaje y, si no hay errores, lo traduce a código máquina. Lo que posteriormente se ejecuta es el código máquina que se ha generado.
- Interpretación: el código se va ejecutando instrucción a instrucción, y una a una se van traduciendo a código máquina. Quien lo hace es el intérprete (también otro programa).


Desarrollo web

Desarrollo web es un término amplio que define la creación de sitios web para Internet o una intranet. Para conseguirlo se hace uso de tecnologías de software del lado del servidor y del cliente que involucran una combinación de procesos de base de datos con el uso de un navegador web a fin de realizar determinadas tareas o mostrar información.

Tradicionalmente un software departamental o incluso un ambicioso proyecto corporativo de gran envergadura es desarrollado en forma standalone, es decir, usando lenguajes ya sea compilados(C, C++, Delphi), semicompilados(.NET,Mono, Java), o interpretados (Python, PHP) para crear tanto la funcionalidad como toda la interfaz de los usuarios, pero cabe perfectamente un desarrollo orientado a web para dichos propósitos, siendo más homogéneo y multiplataforma, y dependiendo de las tecnologías utilizadas, más rápido y robusto tanto para diseñar, implementar y probar, como para su uso una vez terminado.,

Funcionalmente, el desarrollador web, que es quien realiza esta labor, normalmente sólo se preocupa por el funcionamiento del software, es tarea del diseñador web preocuparse del aspecto final(layout) de la página y del webmaster el integrar ambas partes. En ocasiones el webmaster también se encarga de actualizar los contenidos de la página.



Diferencia entre desarrollo de software y desarrollo web

La diferencia entre el diseño web y desarrollo web se ha vuelto confusa. Esta confusión puede causar problemas para una empresa de diseño web y sus clientes ya que el  diseño de páginas web se ha convertido en un término genérico que abarca el diseño y desarrollo.
Es importante que las empresas para que sus clientes sean conscientes de que un sitio web exitoso requiere de un excelente diseño y desarrollo. Igualmente, los clientes deben estar dispuestos a hacer el esfuerzo por comprender la diferencia. Esta comprensión hace que el proceso de especificación y aprobación sea más sencillo.

Diseño Web


Diseño de páginas web determina la apariencia. Que cubre el diseño, la navegación y los colores de un sitio web (También puede incluir el diseño gráfico y logo),  está más preocupado por la estética y la experiencia del usuario de las funciones. Un diseñador de páginas web  crea  sitios  fáciles  de usar y adecuados para su propósito.


Desarrollo Web


En contraste, el desarrollo web ofrece  las funciones y características. Se trata de la programación de servicios de fondo y no el rostro de un sitio web. Funciones previstas en el desarrollo web incluyen el registro, los sistemas de gestión de contenidos, comercio electrónico y las aplicaciones de base de datos, además de  permitir a los visitantes interactuar en un sitio web.


Habilidades del Desarrollo Web



Un desarrollador web de buena voluntad tiene  excelentes habilidades de programación y es capaz de utilizar una amplia gama de herramientas de programación. Él o ella serán capaces de ofrecer soluciones para dar un sitio web de las funciones requeridas.
Habrá cierta superposición de competencias entre los diseñadores y desarrolladores web. No es habitual que una persona  sea un excelente diseñador y a su vez  desarrollador.