CONCEPTOS DE PROGRAMACIÓN
CONCEPTOS DE PROGRAMACIÓN
CONCEPTOS DE PROGRAMACIÓN
Lenguaje: conjunto de definiciones (sintácticas y semánticas) utilizadas para hacer un texto que la
computadora sea capaz de entender, es decir, un programa de computadora.
Código fuente: código de un programa. La computadora lo usa para generar una versión del
programa que es capaz de procesar.
Código Binario: código formado solo por 0 y 1 que tiene como función codificar algo. Es la base de
toda la lógica de la computadora. Todo se convierte, al final, en código binario.
Refactorización: proceso de cambiar un programa para mejorar su estructura interna sin cambiar
su funcionamiento. Estas mejoras pueden ser para el rendimiento o para facilitar futuros trabajos
en el código, por ejemplo.
Front-End: es la parte de una aplicación web que la persona que la usa, ve e interactúa. Es
ejecutada por el browser.
SSL (Secure Sockets Layer): es un tipo de seguridad estándar para garantizar que todos los datos
estén encriptados en tránsito entre un sitio y un navegador, por ejemplo.
Backdoor: puerto creado por alguna aplicación maliciosa para establecer un canal de
comunicación desde nuestro dispositivo hasta un punto en el que se puedan manipular nuestros
datos o acciones.
BIOS (Basic Input Output System): sistema utilizado para listar los dispositivos estándar de entrada
(input) y salida (output) de una computadora, es decir, el sistema puede identificar lo que está
conectado a una máquina, como teclado, mouse, monitor, HD, etc.
Bit: abreviatura de binary digit, es decir, representa solo un valor binario (cero o uno).
BitCoin: criptomoneda creada para establecer un método de pago virtual en diversos servicios
digitales.
Botnet: red de computadoras interconectadas que realizan una o más tareas para las que fueron
programadas. Habitualmente esta red está asociada al uso de programas maliciosos para ataques
masivos o también para el envío de spam.
Mixin: el término mixin se refiere a una clase que se extiende de 2 o más clases, es decir, siendo
clases B y C, A hereda al mismo tiempo que B y C. Sin embargo, para ser considerado un mixin y no
una herencia múltiple, B y C no pueden tener la función de inicialización, de lo contrario no
tenemos un mixin, sino el simple uso de la herencia múltiple.
BLOB (binary large object): su objetivo en relación con la Base de Datos es siempre el
almacenamiento de grandes cantidades de datos en formato de byte.
Inteligencia artificial: rama de la informática que se enfoca en crear sistemas y programas capaces
de realizar tareas que normalmente requerirían la inteligencia humana, como el aprendizaje, la
toma de decisiones y la resolución de problemas.
Tipado: significa una variable o algún valor que tiene un tipo predeterminado.
Recursión: recursión o Función Recursiva significa invocarse a sí mismo. Es decir, una función que
después de ejecutar el bloque de instrucciones, se vuelve a invocar a sí mismo.
Hola mundo: el término “Hola, mundo” se refiere al fragmento de código mínimo para la serigrafía
de la frase “Hola, mundo” con una determinada tecnología. El principal objetivo de estos códigos
es demostrar los mínimos necesarios para el desarrollo de una aplicación con determinada
tecnología.
Shell: ventana, normalmente negra, para manipular el sistema operativo a través de la línea de
comandos. Los Sistemas Operativos Unix siempre proporcionan una ventana para interactuar con
el sistema operativo a través de la línea de comandos.
Console: ventana, normalmente negra, donde se puede trabajar desde la línea de comandos.
Iteración: iteración es el nombre de estructuras que repiten el mismo bloque de código por un
número finito de veces, o por el tiempo que una condición es verdadera. Se puede decir que todos
los lenguajes de programación de computadoras tienen al menos una estructura de iteración.
Polimorfismo: capacidad de tener funciones con el mismo nombre y firma, pero con diferentes
comportamientos.
Clase-Padre: sinónimo de SuperClase; clase utilizada como base para crear otras.
A PARTIR DE AQUÍ YA ES POSIBLE TENER UNA BUENA IDEA DEL LENGUAJE QUE UTILIZAN
LOS PROGRAMADORES EN SU DÍA A DÍA. SI TE INTERESA EL TEMA, NO DEJES DE LEER
NUESTRO ARTÍCULO SOBRE LÓGICA DE PROGRAMACIÓN:
EL PRIMER PASO PARA APRENDER A PROGRAMAR.
Terminal: es una Interfaz de Línea de Comandos, es decir, una interfaz (media) para que la
persona envíe comandos a la computadora.
Editor de Texto: un editor de texto es una aplicación para editar archivos de texto. Esto
incluye códigos de todo tipo que también son textos escritos en un formato que la
computadora puede entender.
Lenguaje de máquina: lenguaje con el nivel más bajo de comprensión para el ser humano
y el único entendido por el procesador (CPU).
Browser o Navegador: programa desarrollado para permitir navegar por la web y visualizar
las páginas.
Visual Basic: lenguaje de programación desarrollado por Microsoft que se utiliza para crear
aplicaciones de software (programa informático) con interfaces gráficas de usuario.
Términos de desarrollo front-end
Biblioteca: piezas de códigos (como funciones, por ejemplo) que ya han sido programadas
y que se pueden usar en otro código. La biblioteca es una extensión fuera de contexto, es
decir, se puede usar y desconectar de un contexto a otro. Las bibliotecas son consumidas
por la aplicación principal.
HTML (Hypertext Markup Language): lenguaje de marcado que se utiliza como estructura
del Front-End de un sitio.
JavaScript: lenguaje que posibilita la creación de páginas interactivas, es decir, que son
modificables según la interacción del usuario y que conectan el Front-End con el Back-End.
AJAX (Asynchronous JavaScript And XML): técnica para acceder a servidores web desde,
por ejemplo, Front-End o de otros Back-Ends.
jQuery: biblioteca de funciones en JavaScript que interactúan con HTML de una manera
mucho más rápida y sencilla que solo JavaScript.
Responsive design: el diseño que garantiza que el sitio web se verá de manera diferente
para diferentes tamaños de pantalla.
Adaptive design: una forma de construir el mismo sitio web que se adapta (cambia) para
cada dispositivo.
Fluid Design: diseño que sigue el tamaño de la pantalla del dispositivo que estás usando
sin cambiar la estructura de la página.
Progressive Web App: metodología que busca que los sitios web y apps tengan
características de aplicaciones nativas para dispositivos móviles, es decir, hechas
principalmente para ellos.
Términos de desarrollo Back-End
Servidor: máquina donde se ejecuta el Back-End de un sitio, por ejemplo, o un Back-End
accesible a otras aplicaciones diversas.
Middleware: software que se encuentra entre el sistema operativo y las aplicaciones que
se ejecutan en él. Es decir, es un software que permite la interacción entre sistemas
aislados y funciones. Ejemplo: sitio web con opción de pago. Lo que conecta a los dos es el
middleware.
Base de Datos Relacional (SQL): base de datos donde se almacenan en tablas que tienen
“relaciones” entre ellas. Por ejemplo, una tabla de productos y compras. La tabla de
compras puede tener varios productos y un producto puede estar relacionado con varias
tablas.
Base de Datos no Relacional (NoSQL): cuando la base de datos no almacena los datos en
tablas, sino en clave-valor, columnas, etc.
API (Applied Programming Interface): interfaz que conecta dos programas, realizando
tanto la comunicación entre ellos como especificando y definiendo cómo deben
interactuar.
CRUD (Create, Read, Update and Delete): cuatro operaciones básicas para interactuar con
una base de datos (creación, consulta, actualización y destrucción de datos).
Términos de Metodologías
Los términos de metodologías se pueden dividir en prácticas y roles. A continuación, conoce más
sobre ambos:
Pair programming: técnica ágil de desarrollo de software donde dos personas usan la
misma computadora para programar alguna tarea.
Sprint: ciclo de tiempo dentro del cual se lleva a cabo un conjunto de actividades.
Kanban: sistema simple y visual para organizar las tareas y el flujo de trabajo.
Ágil: conjunto de métodos y principios que consiste en la idea de desarrollo iterativo (es
decir, donde los requisitos y soluciones se identifican y cumplen de forma cíclica) a partir
de la colaboración de equipos autogestionados y multifuncionales.
Roles: Además de los términos prácticos de metodología, también están los roles ejecutados.
Conoce alguno de los principales a continuación
Product Owner (PO): persona responsable por definir las prioridades del product backlog y
registrar todos los requisitos, reglas del negocio y prioridades de entrega de un producto.