Programación

> Temas > Programación
Editar

Todo lo relacionado con la Programación web en todas las tecnologías. Todo para aprender a programar.

Programación es la especificación de una serie de tareas para realizar una acción o proceso, en términos generales. En Informática programación es la escritura de código para resolver los problemas o necesidades de las aplicaciones.

Es toda una disciplina, dedicada al desarrollo de aplicaciones o sencillos programas que permiten automatizar tareas o realizar procesos en ámbitos diversos.

Más información:

Lenguaje de programación

El lenguaje de programación es el idioma con el que se expresan los procesos que debe realizar el ordenador para resolver los problemas, o lo que es lo mismo, implementar los algoritmos.

Los lenguajes de programación permiten expresar instrucciones de una manera más fácil para los humanos que el código máquina, pues recordemos que los ordenadores en el fondo solo trabajan con ceros y unos.

Editar

Lenguajes de programación de bajo nivel vs alto nivel

Cuando clasificamos lenguajes de programación una de las primeras distinciones que podemos realizar es su nivel. Existen lenguajes de bajo nivel y lenguajes de alto nivel.

Lenguajes de programación de bajo nivel

El nivel más bajo indica que se encuentran más cerca del código de la máquina. Los primeros lenguajes que surgieron eran de bajo nivel, como el ensamblador. Cada procesador tiene su lenguaje de ensamblador propio, con un juego de instrucciones, consistentes en intrucciones básicas capaces de ser ejecutadas directamente por los procesadores. Estos lenguajes son muy rápidos de procesar pero es imposible hacer programas complejos con ellos, por la dificultad de escribirlos y de mantenerlos por las personas.

Lenguajes de programación de alto nivel

Los lenguajes de alto nivel indican que se encuentran más cerca del lenguaje de las personas. Son los lenguajes que realmente se utilizan en el día a día de la programación y que permiten el desarrollo de programas complejos y aplicaciones actuales. Todos los lenguajes de alto nivel tienen instrucciones avanzadas que se abtraen de las complejidades de los procesadores y por tanto permiten realizar programas más fácilmente y con mayor capacidad de mantenimiento.

No obstante, dentro de los existen lenguajes alto nivel también encontramos distintos niveles. Hay lenguajes como C que permiten el acceso directo a posiciones de la memoria o a los puertos para trabajar con los periféricos. Otros lenguajes de más alto nivel nos abstran más todavía de las máquina y de sus componentes. Los lenguajes de programación más modernos son de mayor nivel, pero no quiere decir que los lenguajes de alto nivel tradicionales, más cercanos a la máquina como C, sean peores. En realidad siguen siendo necesarios para la realización de programas más cercanos al sistema operativo. Por ejemplo, todo lo que son controladores de periféricos o dispositivos (conocidos como drivers) se tienen que escribir con lenguajes como C, que permiten acceder a los puertos y manipularlos directamente.

Editar

Principales paradigmas de los lenguajes de programación

Los paradigmas son estilos y modos de codificación implementados en los lenguajes de programación. Consiste en un marco o modelo de actuación que se debe realizar a la hora de programar, es un estilo o "forma de pensar" sobre cómo se estructuran y organizan las tareas y artefactos para llevar a cabo los programas.

Los lenguajes de programación implementan diferentes formas de abordar problemas y organizar el código que están estrechamente relacionadas al paradigma. Es muy habitual también que un lenguaje de programación soporte varios paradigmas.

Los paradigmas más importantes en la programación son los siguientes:

Programación Imperativa: Es el paradigma más antiguo y cuyo modo de expresar las acciones es más directo. En este paradigma, el programador especifica una secuencia de pasos para obtener el resultado buscado. En el paradigma imperativo los distintos pasos cambian el estado del programa, alterando frecuentemente las variables para llegar a resolver los problemas de las aplicaciones. Algunos lenguajes de programación imperativa son C, o Pascal. Sin embargo, muchos otros lenguajes son principalmente imperativos como Java, Python, Javascript, C#, aunque soporten otros paradigmas también.

Programación Orientada a Objetos: Este paradigma organiza el código alrededor de clases y objetos. Los objetos son ejemplares de clases, siendo habitualmente usada la palabra "instancia" para referirse a ello. Es decir, en la jerga de la programación orientada a objetos, un objeto es una instancia de una clase. Las clases agrupan datos y funciones relacionados con esos datos. Las clases definen los datos y funcionalidades y los objetos son concrecciones de estos datos y funcionalidaes aplicadas en el contexto de esos datos. Los lenguajes de programación como Java o C++ son ejemplos de lenguajes de programación orientados a objetos. Otros lenguajes como PHP o Javascript son lenguajes que soportan la programación orientada a objetos.

Programación Declarativa: Este paradigma se centra en describir qué debe hacer la aplicación, en lugar de los pasos que indiquen cómo hacerlo, que sería la forma imperativa. Los lenguajes de programación como SQL son declarativos. Sin ser un lenguaje de programación, podríamos considerar también HTML o CSS como lenguajes declarativos.

Programación Funcional: Este paradigma se centra en las funciones para realizar con ellas cualquier tipo de proceso. No tiene asignación de variables y por tanto tampoco existe un estado del programa. Los lenguajes de programación como Lisp, Haskell y Erlang son ejemplos de lenguajes de programación funcionales.

Programación Lógica: Este paradigma se centra en la inferencia lógica. No ha tenido mucha aceptación, más allá de la académica. En ellos se proporcionan declaraciones de hechos y reglas, y el sistema realiza consultas para responder preguntas. Prolog es el ejemplo más popular de lenguaje de programación lógico.

Programación dirigida por Eventos: Este paradigma se centra en la generación y manipulación de eventos para resolver los problemas. Es muy útil y común en la programación de sistemas de interfaces de usuario gráficas. JavaScript es un ejemplo común de un lenguaje que soporta la programación dirigida por eventos, aunque también tiene otros paradigmas ya comentados.

Editar

¿Quieres añadir algo sobre Programación?

Crea artículos, recursos o comparte información sobre Programación

Crear un bloque

Manuales

Manual de iniciación a la programación
Este es el manual más sencillo para todas las personas que quieran aprender programación, comenzando desde cero, para llegar a entender cómo se programa, qué estructuras dispones, cómo diseñar algoritmos y más.
Curso de programación
Curso de programación desde cero en vídeo. A lo largo de diversas clases aprenderás los fundamentos de la programación, las estructuras de control, algoritmos, objetos y mucho más.
El algoritmo, una iniciación a la programación
Manual de introducción a la programación desde un punto de vista académico. Está repleto de conceptos básicos que deben conocer...
Teoría de la Programación Orientada a Objetos
En este manual aprenderás los fundamentos de la Programación Orientada a Objetos y las herramientas y recursos de que disponemos para la orientación a objetos.
Introducción a los lenguajes del web
Introducción general a la programación en la web, que describe el concepto de páginas dinámicas y estáticas, de cliente y...
Curso Gratuito de Iniciación al Desarrollo Web
Clases del Curso Gratuito de Iniciación al Desarrollo Web, una introducción a todos los conocimientos que los desarrolladores web deben...
Principios fundamentales de la Programación Orientada a Objetos
Explicaciones sobre Programación Orientada a Objetos (POO) en .net. Descubre los cinco principios fundamentales del paradigma de la POO.
Manual de desarrollo de APIs
En este manual pretendemos ofrecer información que tiene que ver con el desarrollo de APIs, una de las claves del...
Innovación en el desarrollo
Este manual contiene un informe completo sobre los principales elementos (tecnologías, lenguajes, arquitecturas, librerías…) que representan innovación en el año...

Más manuales

Tenemos 18 manuales más sobre Programación

Manual de Git
Esta es una compilación de artículos y vídeos destintados a aprender Git, el sistema de control de versiones más utilizado...
Páginas dinámicas
Introducción al concepto de desarrollo de aplicaciones y sitios web con páginas dinámicas. Qué son los lenguajes de programación del lado cliente y servidor, cuáles son las principales tecnologías que disponemos.
Curso gratuito 5 días de HTML5
Grabaciones de las clases del Curso Gratuito de HTML5 impartidas por EscuelaIT en marzo de 2014. En este curso se...
Android Básico
Este es un Manual básico de Desarrollo para Android. Tiene como objetivo ofrecer una introducción a Android desde cero para...
Metodologías Ágiles para el Desarrollo de Software
Manual de introducción al desarrollo ágil de software con Scrum, Kanaban y eXtreme Programming. Técnicas de desarrollo, pautas organizativas, trucos...
Taller de HTML5
Artículos prácticos sobre la creación de páginas web con el estándar HTML5. Aplicación práctica de las diversas tecnologías relacionadas con...
Entorno de trabajo del desarrollador web
En este manual abordamos distintas herramientas que pueden formar parte del entorno de trabajo del desarrollador web. Encontrarás programas y recursos de todo tipo que te pueden ayudar a crear webs.
Manual de JSP
Manual donde aprenderemos la tecnología Java para la creación de páginas web con programación en el servidor.
Envío de formularios avanzado
Manual que explica la manera de enviar formularios, utilizando el servidor y sin depender de la configuración del cliente. Se...
Qué es cada tecnología
El manual Qué es cada tecnología aborda una variedad de temas relacionados con el desarrollo en general. En cada uno...
Ayudas técnicas
Las ayudas técnicas son pequeños reportajes de interés general muy útiles para conocer rápidamente diversos temas de mucho interés para...
Videotutorial del Curso de Iniciación a Java
Grabaciones de las clases del Curso de Iniciación a la programación con Java, realizado en DesarrolloWeb y EscuelaIT, un curso...
Taller de ASP
Reportajes prácticos sobre la programación de Active Server Pages, el lenguaje de programación de Microsoft del lado del servidor con...
Taller de ASP.NET
Taller de ASP.NET. Un manual donde vamos a publicar artículos prácticos para aprender el manejo de diversos aspectos de la...
Vídeos HowTo de informática y desarrollo
Colección de vídeos HowTo ¿Cómo se hace?: Videotutoriales sencillos y rápidos dedicados al mundo de la informática en general y...
Utilización del API de Pixlr en PHP
Manual con una serie de artículos que ilustran el uso del API de Pixrl para implementar un sistema de edición...
Cementerio de las tecnologías web
En este manual vamos a colocar artículos sobre tecnologías web que se han quedado obsoletas. El mundo de Internet y el desarrollo avanza muy rápido y este manual lo demuestra!
Manual de Microsoft WebMatrix
Manual de la herramienta WebMatrix de Microsoft, con la que podremos crear proyectos en ASP.NET de forma sencilla, pero que...

Colecciones

Editores de código obsoletos

Editores de HTML y editores de código, p...

14 ítems
Colección de Servidores web orientados a desarrollo

Servidores web orientados a desarrollo

En esta clasificación encuentras servido...

8 ítems

Canales de eventos y clases en directo

Temas relacionados

Preguntas y respuestas de Programación

Se han recibido 139 faqs en Programación

Hacer una pregunta