Está en la página 1de 17

FUNDAMENTOS PROFESIONALES DEL DESARROLLO DE SOFTWARE, POR MICROSOFT Y LINKEDINEN QUÉ

CONSISTE EL PROCESO DE PROGRAMAR

Quando você selecionar uma linha na transcriçã o, será direcionado à seçã o equivalente no vídeo

Imagina que encuentras en tu casa un libro de recetas de cocina en el que te explican mediante una serie de
pasos có mo hacer una tarta. En él encuentras los ingredientes que necesitas para hacerla, así como los pasos en
orden para conseguir una tarta bien hecha, esponjosa y deliciosa. Salvando las distancias, el libro de
recetas contiene el algoritmo para realizar una tarea, en este caso hornear una tarta. Programar, a grandes rasgos,
es decir a una má quina qué hacer mediante instrucciones concisas, ordenadas y adaptadas a su nivel de
procesamiento. El orden en estas instrucciones es de vital importancia, ya que, por ejemplo, no es lo mismo
añ ade los ingredientes y luego hornea que hornea y luego añ ade los ingredientes. Y en el caso de la programació n,
tampoco. Asimismo, el lenguaje también es importante, ya que puede que entendamos la receta en españ ol e
inglés, pero no en japonés. Del mismo modo pasa con tu má quina, a la que debes, entre comillas, explicar los pasos
a seguir en un lenguaje de programació n que entienda. El arte de programar, ademá s, consiste en
descomponer problemas grandes en grupos de tareas má s pequeñ os compuestos por pasos a los que llamamos
instrucciones. Es decir, que es importante saber descomponer una idea en pasos má s pequeñ os y plasmarlos en
orden correcto. Resumimos entonces que, en primer lugar, programar se basa en dar instrucciones a una
má quina para realizar una tarea mediante pasos ordenados. Ademá s, las instrucciones son los pasos que hay que
seguir para completar la tarea. Cada paso es una instrucció n. Los algoritmos son grupos de instrucciones que
solucionan un problema o completan una tarea. Y el lenguaje de programació n es el idioma con el que te comunicas
con la má quina.

Trabajando con pseudocódigo

Quando você selecionar uma linha na transcriçã o, será direcionado à seçã o equivalente no vídeo

Como ya sabes, programar consiste en comunicar a la má quina con la que trabajas una serie de pasos o
algoritmos para llevar a cabo una tarea. Una de las formas má s eficaces de expresar dichos algoritmos es utilizando
pseudocó digo, que es una manera de expresar los pasos que va a realizar un programa de forma parecida a un
lenguaje de programació n. Sin embargo, el pseudocó digo no puede ejecutarse, ya que es un có digo escrito para
hacer entendible por humanos y no por má quinas. Una de las razones de aprender a escribir pseudocó digo es
que facilita la resolució n de problemas y su aplicació n a la programació n convencional. Entre sus ventajas destaca
también que el pseudocó digo es independiente del lenguaje de programació n que se utilice, ya que la misma
estructura de pseudocó digo puede ser traducida a diferentes lenguajes. Otra es que el pseudocó digo llega donde el
diagrama de flujo no lo hace, ya que aporta soluciones fácilmente implementables en có digo. La cuarta es que el
pseudocó digo es fá cil de aprender y ser utilizado por personas que está n comenzando su aprendizaje en el mundo
de la programació n. En cambio, como desventajas tenemos la falta de normas, que hace que la solució n que se nos
ocurre en pseudocó digo no sea tan fá cilmente implementable en có digo formal, ya que todas las soluciones que
encontramos deben ser traducidas a có digo formal en algú n momento. Formalmente, el pseudocó digo no tiene
sintaxis propia. Sin embargo, hay ciertos tipos de instrucciones que conviene conocer para optimizar la
comunicació n de nuestro algoritmo a otros programadores. Es interesante saber que existen instrucciones
bá sicas como las funciones de estructura y de control iterativas o de procedimientos. Con el pseudocó digo
podemos desarrollar algoritmos con un ú nico punto de inicio, con un nú mero finito de finales o para hallar un
nú mero finito de caminos entre un punto de  inicio y un punto de término. Un ejemplo de pseudocó digo sería este
có digo que hemos creado donde especificamos el inicio, que debemos escribir al usuario un: Dime tu edad, para
obtener este dato. Este dato lo guardaremos en Edad y decimos que lea Edad, y luego especificamos que debe
escribir: Tu edad es, má s el valor de Edad que hemos leído aquí.
Tipos de lenguajes de programación

Quando você selecionar uma linha na transcriçã o, será direcionado à seçã o equivalente no vídeo
Hemos hablado de la programació n como un medio para dar instrucciones a una má quina para que
complete una tarea concreta. La manera de hacerlo es con lenguajes de programació n que hacen de
puente entre tu solució n al problema y la aplicació n del mismo en una má quina. Los lenguajes se pueden
clasificar segú n diferentes criterios, de tal manera que de entrada sabemos có mo trabajar con ellos
exclusivamente por su clasificació n. Una má quina, un ordenador o computador no es má s que un sistema
que traduce voltajes, corriente, no corriente, a ceros y unos, lo que conocemos como có digo
binario. Estos, a su vez, se pueden traducir a lenguajes cada vez má s alejados del binario y má s pró ximos
al lenguaje humano. A esto se le conoce como nivel de abstracció n. Cuanto má s abstracto es un
lenguaje, má s cerca de la comunicació n se encuentra. En contraposició n, cuanto má s cercano es el
binario, má s abstracto se considera. El lenguaje má s abstracto, má s pró ximo a la má quina y má s alejado
de la comunicació n humana es el lenguaje má quina, que son series de ceros y unos y se
comunican directamente con la má quina sin necesidad de traducció n. Esto implica un rá pido
procesamiento pero un difícil manejo de los programas por parte de los humanos, lo que hace surgir
nuevos tipos de abstracció n. Tras él se encuentra el lenguaje ensamblador, que trabaja con registros de
memoria de la computadora de forma directa. Cada lenguaje ensamblador es distinto y propio del
procesamiento con el que trabaja. A partir del lenguaje ensamblador comienzan a surgir nuevos lenguajes
que ofrecen cada vez un nivel de abstracció n má s alto y permiten aumentar funciones que puede realizar
la má quina. Entre los lenguajes de medio nivel encontramos C o BASIC, y entre los de má s alto nivel
tenemos Java, Ruby, JavaScript o Python. Los lenguajes, por otro lado, se pueden clasificar en base al
propó sito para el que han sido creados, existiendo los lenguajes de propó sito general que permiten la
implementació n de diferentes programas y algoritmos para propó sitos distintos. En ellos el nivel de
abstracció n suele ser uniforme. Entre ellos está n C++ o Java. Por otro lado, existen los lenguajes
de propó sito específico, que tienen un conjunto de características muy concretas y proporcionan alto
nivel de abstracció n para cumplir con tareas muy específicas. Entre ellos destaca SQL, que está
totalmente orientado a la administració n de bases de datos. Existen dos tipos de lenguajes en base a su
método de ejecució n. Algunos de ellos necesitan traducir los programas a có digo má quina, con lo que
necesitamos recompilar el programa para cada má quina en la que se ejecute. Estos lenguajes se
denominan lenguajes compilados. Un lenguaje compilado es C. En contraposició n, los lenguajes
interpretados leen y ejecutan línea a línea las instrucciones del có digo y se requiere có digo fuente del
programa para ejecutarlo. JavaScript, por ejemplo, que se lee y ejecuta a la vez por el navegador, es un
lenguaje interpretado. Segú n su paradigma de programació n, tenemos los lenguajes imperativos, que dan
una secuencia de instrucciones que especifican con detalle los pasos y el orden para realizar una
tarea. Entre ellos tenemos Ada, C, C++, Cobol o Python. Se centran en un procedimiento a seguir que se
tiene que seguir en orden. Los lenguajes declarativos expresan el resultado que se quiere obtener, pero
no especifican el procedimiento. Un ejemplo de este tipo de lenguajes es SQL, cuyas consultas especifican
los datos que deseas obtener, sin reparar en el procedimiento que hará el programa para
obtenerlos. Existen también los lenguajes funcionales especialmente indicados para inteligencia
artificial, compiladores o aplicaciones técnicas y constan de funciones predefinidas. Todos los elementos
se entienden como funciones secuenciales que devuelven resultados que aprovechan otras funciones. Los
programas no tienen estado, se pueden combinar con otros tipos de programació n y generan un có digo
má s preciso. Ejemplos de este tipo de lenguajes son Lisp, Haskell o Scala. Los lenguajes ló gicos expresan
tareas utilizando ló gica matemá tica. Se expresa en base a la relació n entre elementos del có digo. Imagina
una aplicació n para demostrar teoremas o reconocer el lenguaje natural humano. Para ella se utiliza la
programació n ló gica, de modo que se especifica la forma en que se relacionan los elementos entre sí
normalmente para así permitir al programa generar teoremas nuevos en base al comportamiento de los
antiguos. Un ejemplo de este tipo de lenguajes es Prolog. Lo importante de los lenguajes ló gicos es que
separan los componentes ló gicos y los de control, teniendo que un algoritmo es una estructura ló gica y
una de control. en este caso la ló gica es el programa ló gico y el control son las diferentes estrategias para
demostrar el teorema. Los lenguajes orientados a objetos crean un sistema de clases y objetos imitando al
mundo real. Por ejemplo, podemos crear una clase que sería una plantilla en la que se definen los
atributos y métodos predeterminados de un objeto y, en base a dicha clase, crear objetos que son
entidades que derivan de estas clases. Por ejemplo, vivienda puede ser una clase en la que definimos que
debe tener puertas, paredes, ventanas, techo y suelo, y cada casa que tenga dichos requisitos será un
objeto instanciado de la clase vivienda. Los objetos son ejemplos de las clases. JavaScript, Java o Ruby son
lenguajes orientados a objetos. En resumen, tenemos lenguaje segú n el nivel de abstracció n, que será n de
bajo y alto nivel. Segú n su propó sito, que será n de propó sito general o específico. Segú n su método de
ejecució n, que será n compilados o interpretados. Y segú n su paradigma de programació n, que será n
imperativos, declarativos, funcionales, ló gicos u orientado a objetos.
Introducción a los lenguajes de estilo y marcado

Quando você selecionar uma linha na transcriçã o, será direcionado à seçã o equivalente no vídeo
Los lenguajes de marcado sirven para dar formato y estructura a informació n suelta, de tal manera que
sea legible e interpretable por humanos y má quinas. Esto se realiza incorporando marcas o etiquetas que
aportan informació n adicional al respecto. Como puedes ver, aquí tienes un dato Claude, que es un
nombre, que englobamos dentro de unas etiquetas llamadas firstname, con lo cual le damos un sentido a
esta informació n. Los lenguajes de marcado no son lenguajes de programació n,  ya que no tienen
funciones aritméticas ni variables, pero resulta ú til conocerlos de cara a trabajar con procesamiento de
datos. Algunos de los lenguajes de marcado se usan para formatear datos que nos devuelve un
servidor, presentar la estructura de una web de cara a aplicar estilos o indicar a los lectores de pantalla
los elementos de las pá ginas que leen. Existen tres tipos principales de lenguajes de marcas. En primer
lugar, el marcado de presentació n da formato a un texto. Resulta ú til para maquetar la presentació n de un
texto, y un ejemplo de marcado de presentació n es RTF. Como puedes ver, esto es un documento
RTF conformado por una amalgama de nú meros y letras que no se entienden precisamente. Sin embargo,
si abrimos esta amalgama de nú meros y letras en un editor de texto enriquecido, podemos ver que el RTF
está hecho de modo que se representen frases con diferentes formatos y tamañ os, tablas, listas sin orden,
diferentes tipos de fuentes, listas con orden, caracteres especiales e incluso imá genes. El marcado
también puede ser marcado de procedimientos. Este marcado está enfocado a la representació n de
texto, pero es visible también para el usuario editor. Un ejemplo de marcado de procedimientos es
LaTeX. Como puedes ver, aquí tienes una muestra de có digo LaTeX y puedes observar como los estilos
son presentables tanto a nivel de usuario como a nivel de editor. Por otro lado, tenemos el marcado
descriptivo o semá ntico, que utiliza etiquetas para describir los fragmentos de texto pero sin especificar
có mo deben ser representados o en qué orden. Un tipo de este marcado son los documentos XML y
SGML. Como ya hemos dicho, se aprovechan tramos de informació n que se engloban dentro de etiquetas
para convertirlos en elementos con sentido. Sin duda, el lenguaje de marcado má s conocido es HTML. En
este tipo de lenguajes presentamos la estructura de un documento web en primer lugar declarando el
documento como HTML, definiendo el lenguaje en este caso inglés, añ adiendo metadatos en la cabecera,
como la codificació n que nos permite utilizar tildes y eñ es, el tipo de dispositivo que nos va a recibir y la
escala en la que vamos a presentar la informació n, el título de la pá gina que aparecerá en nuestro
navegador y un cuerpo donde se van a englobar los elementos visibles del có digo como pueden ser
secciones, dentro de las cuales tenemos pá rrafos y títulos, o footers o pies de pá gina dentro de los que
tendremos un botó n y pá rrafo. De esta manera, nuestro navegador entiende la estructura de este lugar
web y es capaz de representarla una vez abrimos este HTML con el navegador. Es también interesante
ver có mo las etiquetas se organizan de modo que algunas tienen prioridad semá ntica sobre otras, de tal
manera que los lectores de pantalla para personas con problemas de visualizació n puedan leerlo de una
manera má s có moda y mucho má s accesible. Por otro lado, tenemos los lenguajes de estilo, que sirven
para definir y crear la presentació n de un documento que se ha escrito con algú n lenguaje de
marcado. Funcionan en base a reglas en pares de selector y declaraciones. Aunque el má s conocido es
CSS, lo cierto es que existen unas cuantas variantes de los lenguajes de hojas de estilo con sus propias
aplicaciones y prá cticas. En CSS se utiliza el estilo para añ adirlo a los documentos HTML y XML,
separando el contenido de la presentació n y aplicando reglas de estilo al documento. Por ejemplo, aquí
aplicamos a la etiqueta body del HTML un par de declaració n y estilo que será n especificados para todas
las etiquetas que contengan la palabra body. Por otro lado, tenemos el XSL, que es una familia
de lenguajes basados en XML y consta de tres lenguajes. El XSLT, para convertir documentos XML a otros
lenguajes como HTML. El XSL-FO, para especificar el diseñ o de documentos. Y el XPath, para seleccionar
porciones del DOM en XML. Existen otros tipos de hojas de estilos como la DS SSL, la JSSS o FOSI, que son
tipos de hojas de estilo que no está n estandarizadas como CSS o XSL. Un concepto a tener en cuenta y
muy importante es el DOM, que es una interfaz de plataforma que proporciona un conjunto está ndar de
objetos para representar documentos HTML, XHTML y XML. Este modelo está ndar presenta có mo
pueden combinarse dichos objetos, una interfaz está ndar para acceder a ellos y manipularlos, y a través
del DOM los programas pueden acceder y modificar el contenido, estructura y estilo de los
documentos HTML y XML, que es para lo que se diseñ ó principalmente. Es decir, el DOM permite el
acceso diná mico a través de la programació n para acceder y añ adir cambiando diná micamente el
contenido estructurado en documentos con lenguajes como JavaScript. Simplificando, aquí tenemos una
etiqueta HTML llamada button, que significa botó n, y manipulando el DOM podemos añ adirle una funció n
JavaScript que escuche el evento click y cuando hagamos clic en este botó n ejecute la funció n
myFunction. De esta manera, manipulando el DOM podemos hacer que nuestros elementos se comporten
de formas determinadas diná micamente utilizando JavaScript.

Qué es y por qué usar JavaScript como primer lenguaje

Quando você selecionar uma linha na transcriçã o, será direcionado à seçã o equivalente no vídeo

JavaScript se utiliza para generar interacció n y manipular pá ginas web. Es un lenguaje de programació n
interpretado, limitado y especializado. Es también un lenguaje de scripting, es decir, un lenguaje de programació n
que se ejecuta dentro de otro programa. JavaScript, por ejemplo, corre dentro del navegador web, a diferencia de
C++, Java, C# u Objective-C, que corren en el sistema operativo directamente. JavaScript es un lenguaje
interpretado y no hay que compilarlo manualmente a có digo má quina. Ademá s, es sensible a mayú sculas y
minú sculas. Entre las ventajas de aprender a programar con JavaScript destaca que, pese a que existen
otros lenguajes que pueden considerarse má s completos, es una buena idea aprender a programar con él debido a
que es un lenguaje muy sencillo cuyos resultados son rá pidos de ver, sirve para trabajar tanto en ordenador como
en mó vil, ya que es multiplataforma, y es el ú nico lenguaje que permite trabajar en modo fullstack y desarrollar
tanto aplicaciones frontend como backend. La nomenclatura de JavaScript es bastante sencilla. Normalmente, para
indicar el inicio y el final de un bloque de có digo solemos utilizar o llaves o corchetes o paréntesis. Cuando hay un
símbolo de apertura siempre debe haber uno de cierre. Las alertas en JavaScript son muy ú tiles para practicar y
mostrar avisos. Utilizaremos varios tipos de alertas. El primero, el elemento alert, en el que abrimos una ventana
del navegador e imprimimos un elemento. El segundo, el elemento prompt, en el que abrimos una ventana en el
navegador y solicitamos al usuario que nos introduzca datos que normalmente después guardaremos en una
variable. Existe otro tipo de alertas llamadas consol.log, que se tratan de mensajes dentro de la consola de
desarrollo y son especialmente ú tiles para el testing de có digo.
Tipos de datos y datos numéricos

Quando você selecionar uma linha na transcriçã o, será direcionado à seçã o equivalente no vídeo

Existen varias formas de jugar y probar tu có digo JavaScript. Una de ellas es generar una carpeta y dentro poner un
index. html y un script.js. De esa manera llamamos al script desde HTML y al abrir el index  desde un navegador se
ejecutará automá ticamente tu script. Sin embargo, también es posible probar có digo simple sin crear ningú n
fichero, utilizando la consola de Dev Tools de tu navegador, a la que se accede normalmente pulsando F12 con el
navegador abierto en cualquier pá gina. En ella podemos usar nuestro có digo y observar los resultados mediante
mensajes en la consola. En JavaScript tenemos diferentes tipos de datos numéricos y podemos asignar cualquier
valor numérico a una variable. Una vez asignamos un valor a la variable, el valor anterior se sobrescribe. Por
ejemplo, si tenemos la variable A y le damos un valor 5, en el momento en el que mencionamos la variable A
podemos obtener su valor. Este valor puede ser cualquier tipo de nú mero, desde un nú mero negativo, por ejemplo
-25, a un nú mero decimal, por ejemplo 3,8.

Caracteres y strings

Quando você selecionar uma linha na transcriçã o, será direcionado à seçã o equivalente no vídeo
Las string son una sucesió n o cadena de caracteres. Para definirlas podemos usar comillas simples o dobles. De
hecho, el uso de comillas es lo que distingue a una string de cualquier otro tipo de valor. Por ejemplo, si tenemos
una variable con un valor 200, sin comillas, este valor es numérico. Sin embargo, si a ese valor 200 le ponemos
comillas dobles o simples, pasa a ser una string y es tratado como tal. Con las string podemos usar ambas, comillas
simples y dobles. Sin embargo, siempre que se pueda es recomendable utilizar comillas dobles para evitar fallos en
la lectura del programa. Algo que debemos tener en cuenta es que cuando existe una comilla de apertura, existe
una comida de cierre. Por ello tenemos que tener cuidado especialmente anidando comillas unas con otras. Si, por
ejemplo, tenemos "Ayer te dije hola" y este hola tiene inicio y cierre pero este inicio no se cierra, se entiende que la
string va desde el principio de la frase hasta la segunda comilla simple y lo demá s es un error de definició n. Sin
embargo, si queremos anidar bien cualquier tipo de frase, lo que podemos hacer es utilizar comillas dobles y
dentro comillas simples, o viceversa, comillas simples fuera y dentro comillas dobles. Para desambiguar este tipo
de situaciones también existen caracteres de escape.

Booleanos, arrays y objetos en JavaScript

Quando você selecionar uma linha na transcriçã o, será direcionado à seçã o equivalente no vídeo

Los tipos de datos booleanos son especialmente valiosos en cuanto a la evaluació n de igualdades y asignaciones.
Los valores de un booleano pueden ser o true o false, o 0 o 1, o si o no, y se utilizan como resultados para
comprobar si unas variables son mayores, menores o iguales que otras. Como puedes ver, en este caso tenemos la
variable X cuyo valor es 5, la variable Y cuyo valor es 6, y la variable Z cuyo valor es 5. Lo que hacemos en nuestra
operació n es valorar si la variable igualdad implica que X es completamente igual a Y. Como sabemos, X es un 5, Y
es un 6, por lo tanto no son iguales, con lo que en este momento, si haces un consol.log de igualdad, en lugar de
darte un valor numérico te da el valor false, ya que lo que te está dando es el resultado de esta comparació n y no un
resultado numérico. Por otro lado, tenemos los arrays. Los arrays tienen un concepto algo má s complejo, pero muy
simplificadamente diremos que sirven para guardar varios datos dentro de una misma variable, como por ejemplo
en este caso que tenemos la variable nombres y un array de nombres al que podemos acceder utilizando la
posició n de la palabra en el array. En JavaScript siempre se comienza a contar las posiciones desde 0, con lo que
sería posició n 0, posició n 1, posició n 2. Como ves, en este caso tengo la variable nombres y dentro tengo el array de
valores cuando pasamos por consola la posició n cero, es decir, la primera posició n de nuestro array, lo que nos
devuelve es el nombre de María. Asimismo, como existen los arrays, existen los objetos, que sirven para dar
propiedades al valor de una misma variable. Esta variable se empieza a tratar en ese momento como una
representació n real del mundo. Por ejemplo, imaginemos que tenemos un empleado o un objeto empleado al que le
creamos sus datos, tiene un nombre, unos apellidos, una edad y un email. Esto es un objeto JavaScript.

Variables en JavaScript

Quando você selecionar uma linha na transcriçã o, será direcionado à seçã o equivalente no vídeo

Siempre que trabajamos con datos, usaremos las variables para almacenarlos. Las variables son piezas
contenedoras de informació n con las que guardamos una posició n de memoria en nuestra má quina para acudir a
ellas cuando el có digo se está ejecutando. Simplificando, una variable es como una caja y el contenido de esa caja es
el valor de la variable. Por ejemplo, podemos tener la variable cantidad a la que le damos un valor 10, y para
mostrar el valor de cantidad podemos tener console.log, mencionamos cantidad y nos muestra por consola el valor
de la variable. Una cosa que podemos hacer también es actualizar una variable. Supongamos que tenemos la
variable zapatos de valor 16. Cuando hacemos un console.log de zapatos en este punto, nos va a imprimir 16. Sin
embargo, si utilizamos zapatos y la actualizamos con un 20, al hacer console.log en ese momento nos va a aparecer
un 20, como puedes observar. Cada vez que nosotros mencionamos una variable, la variable nos devuelve su
ú ltimo valor en el momento en el que se le hace una llamada. Existe una pequeñ a convenció n de nombres por las
que solo se puede utilizar letras, nú meros, guiones bajos y símbolos del dó lar en los nombres de variables. No se
puede comenzar un nombre de variable con un nú mero ni dejar espacios en blanco en los nombres, así como
tenemos que tener en cuenta que JavaScript diferencia entre mayú sculas y minú sculas. Para ponerte un ejemplo
má s ilustrativo, te puedo comentar que si tenemos la variable caja con valor 25 y hacemos un console.log caja, nos
sale un resultado perfectamente normal. Si a esta misma variable le añ adimos un guion, al principio nos salta un
error porque los guiones no está n permitidos. Sin embargo, si utilizamos un guion bajo no tenemos el má s mínimo
problema, ya que los guiones bajos está n permitidos en los nombres de variable. Asimismo, el símbolo del dó lar
también está permitido en los nombres de variable. Sin embargo, los puntos no está n permitidos. También es
particular el caso de los nú meros, ya que no podemos comenzar el nombre de variable por un nú mero, pero
podemos tener nú meros dentro de los nombres de variables. Las variables, por lo general, deben estar definidas y
lo ideal es darles un valor. Supongamos que tenemos la variable añ o, que al pasarla por pantalla adopta el tipo de
datos undefined porque no tiene un valor asignado. Podemos hacer tanto una asignació n de valor inmediata como,
por ejemplo, crear la variable y má s adelante asignarle un valor. JavaScript tiene una particularidad y es que
permite que creemos variables sin utilizar la palabra reservada var, es decir, nosotros podemos tener pelota con un
valor de 4 y mencionar pelota para que se imprima por consola, y se nos toma como si pelota fuera una variable.
Pese a que JavaScript nos permita utilizar esta serie de recursos, siempre es preferible utilizar la palabra var, por
semá ntica y por buenas prácticas en tu có digo. Asimismo, puedes tener en cuenta que una variable puede
almacenar cualquier tipo de datos, así como matrices, objetos o funciones.

Ámbito de las variables

Quando você selecionar uma linha na transcriçã o, será direcionado à seçã o equivalente no vídeo

El á mbito de una variable es el espacio de programa donde esta será visible y accesible. Por ejemplo, si yo llamo a
esta funció n funcionSimple, se ejecutaría. Pero si llamo a la variable creada dentro desde fuera, el resultado será un
error porque la variable X no está definida fuera de su funció n. Esto implica que la variable X es de ámbito local. Si
nosotros antes de realizar la funció n declaramos la variable X, en el momento en el que llamamos a funcionSimple
ya X existe desde fuera y lo que hacemos es actualizarla. De este modo, el primer console.log nos imprime
undefined. Lo primero que mandamos es la variable sin tipo de datos, luego le hacemos una actualizació n y nos
imprime un 200, volvemos a hacer una actualizació n donde ejecutamos esta funció n y nos imprime 500, y
finalmente volvemos a llamar a la variable, que nos imprime 500 nuevamente. Recuerda que las funciones en
JavaScript si no son llamadas no se ejecutan. Por ende, lo primero que se imprime es undefined porque estamos
imprimiendo este valor de la X y no este.

Var, Let y Const en JavaScript

Quando você selecionar uma linha na transcriçã o, será direcionado à seçã o equivalente no vídeo

Las variables con var pueden ser declaradas global o localmente. Podemos reasignarle valores e incluso podemos
redeclararla. Con var se permite el uso del hoisting, que es la forma de JavaScript para llamar a una variable o
funció n al inicio del scope antes de que se ejecute el có digo, es decir, aquí. El hoisting, simplificá ndolo mucho,
implica que JavaScript hace un barrido del fichero antes de ejecutarlo y todas las variables y funciones que
encuentra las declara al inicio del mismo con el valor undefined, por lo que las funciones y variables a ojo de la
ejecució n ya existen antes de haberlas declarado. El hoisting es ú til cuando se trata de pequeñ os programas, pero
en programas má s grandes podemos olvidar que hemos declarado una variable y redeclararla en otros lugares del
có digo, lo que creará bastantes bugs. Por su parte, la variable let está limitada a funcionar dentro de un bloque o
porció n de có digo que esté entre llaves. Let puede ser actualizada, pero no puede ser redeclarada. Por el contrario,
las variables const o constantes mantienen su valor en todo el có digo, no pueden redeclararse ni actualizarse.
Tipos y usos de los operadores

Quando você selecionar uma linha na transcriçã o, será direcionado à seçã o equivalente no vídeo

Los operadores son símbolos que indican có mo se deben manipular los datos. Existen varios tipos de operadores.
En primer lugar tenemos los operadores de asignació n, que son el igual que utilizamos normalmente. En el caso de
la programació n, este igual se utiliza para asignar un valor a una variable. Tenemos también operadores
aritméticos normales como la suma, la resta, la multiplicació n y la divisió n. La diferencia entre la suma y la
multiplicació n, al margen de las operaciones que hacen matemá ticamente hablando, es que en el caso de la suma, si
tenemos dos variables de distinto tipo de datos, por ejemplo una string y un nú mero, al sumarlo, estas dos se
concatenan, lo que quiere decir que se pone una delante de otra sin espacio. Sin embargo, la multiplicació n no
concatena, lo que hace es evaluar si ambos tipos de variables son iguales y si cabe la posibilidad de que dé un
resultado numérico. Normalmente, nos devuelve el tipo de datos Not-A-Number si son diferentes tipos de datos. Y
solo debemos saber que Not-A-Number puede ser un tipo de datos y puede ser una operació n dentro de JavaScript.
De momento, para el desarrollo de tu có digo como principiante no es necesario que profundices en los usos
diferentes de Not-A-Number. Por supuesto, tenemos también la divisió n de operandos, en la que tenemos pues el
uso típico de la barra que es utilizando la variable a, variable b, dividimos a entre b utilizando una barra y
obtenemos el resultado esperado. Debes tener conciencia de que en JavaScript se utiliza la precedencia de datos, de
tal manera que en las operaciones siempre se va a realizar primero las multiplicaciones y divisiones y luego las
sumas y restas. Tenemos también los operadores de incremento y decremento. De esta manera, tendremos que
como concepto la variable a puede ser igual a a+1, es decir, incrementamos en un punto. También podemos
expresarlo como a+ = 1. Y también podemos expresarlo como a++, que es la manera má s usual. Por ejemplo, si
tenemos la variable 50 y damos como valor a 50 al actualizarla a++, al hacer un console.log de a nos saldrá 50,
luego 51, luego 52 y así sucesivamente. Este tipo de operadores es especialmente ú til en bucles en los que el índice
va cambiando, incrementando o decrementando, conforme van pasando iteraciones del có digo. Tenemos también
el símbolo de decremento, que realiza exactamente la misma funció n, pero en lugar de ser a++ sería a-- y lo que
hacemos es que en cada vuelta de el bucle o del có digo iterativo o de las repeticiones de có digo que tengamos que
dar el índice decrementa y lo podemos utilizar para emplear bucles con cuentas atrá s, por ejemplo. Algo muy
interesante en programació n es que los símbolos de igualdad no son uno, sino que son varios y tienen cometidos
diferentes. Tenemos, por ejemplo, el operador de asignació n, que es un solo igual que sirve para dar valor a una
variable. Tenemos la doble igualdad, que nos sirve para saber si dos valores son iguales. Tenemos la igualdad
estricta, que son tres signos igual y que nos sirve para indicar si el valor de la igualdad y el tipo de datos son los
mismos. En caso de que una de esas condiciones no se cumpla, el có digo dará false. Asimismo, tenemos la no
igualdad, que es un símbolo de exclamació n con un símbolo de igualdad y con esto comparamos si los dos valores
son distintos. Por supuesto, al haber igualdad estricta, podemos tener no igualdad estricta, que nos explica que ni
los valores ni los tipos de datos son iguales, entonces vamos a obtener un true. Si se cumple una de estas dos
condiciones, ya obtendríamos un false y tendríamos que operar de manera diferente. Asimismo, tenemos los
operadores de comparació n, que son los mismos que utilizamos en aritmética y tenemos: a > b, a < b, a < o = b, a > o
= b. Esto lo podemos usar de manera que podemos crear una variable x = 5, una variable y con valor 5 y una
variable z con valor 6. Eso nos permite comparar si x es mayor que z, si x es menor que z, si x es menor o igual que
z, o si x es mayor o igual que z. Todos los operadores de igualdad suelen hacer que obtengas un tipo de datos
booleano. Normalmente, en las comparaciones lo que se nos devuelve es un booleano con el que luego podemos
trabajar. Asimismo, tenemos operadores ló gicos que nos sirven para realizar varias operaciones a la vez o alternar
entre una y otra. Tenemos el operadorsque nos explica que se deben cumplir las dos condiciones, y tenemos el
operador // que nos explica que se debe cumplir o una condició n o la otra para obtener un valor true.
Operaciones com strings

Quando você selecionar uma linha na transcriçã o, será direcionado à seçã o equivalente no vídeo

Las cadenas de caracteres o strings permiten realizar algunas operaciones de aná lisis, combinació n y unió n,
y también tienen algunas propiedades que facilitan enormemente trabajar con ellas. Entre los métodos y
propiedades de las strings destaca la string.length, que nos enseñ a cuá l es la longitud de nuestra string en
caracteres. Nos devuelve un nú mero entero que nos dice cuá ntos caracteres tenemos en nuestra string.
Existe también el método indexOf, en el que podemos encontrar una palabra dentro de una string. Tenemos
que tener en cuenta que si la palabra no es exactamente igual en cuanto a mayú sculas y minú sculas a
nuestra string, nuestro có digo no la va a encontrar y nos va a devolver un -1. Si respetamos mayú sculas y
minú sculas, nos devolverá la posició n, en este caso la posició n cero, que es la primera posició n de nuestra
string. Existe también lastIndexOf, que nos devuelve la ú ltima ocurrencia de una palabra dentro de nuestra
string, que también nos devuelve la posició n cero porque es la ú nica ocurrencia que ha habido, y ambos
métodos nos permiten utilizar un nú mero, tanto indexOf como last IndexOf, y en él podemos especificar la
posició n desde la que se empieza a buscar dentro de nuestra string. En este caso buscaremos “texto” y le
diremos que utilice los veinte primeros caracteres. Nos devolverá una posició n, en este caso la posició n 15,
lo que quiere decir es que la ú ltima ocurrencia de texto dentro de los primeros veinte caracteres está en la
posició n 15. Existe también un método llamado search que funciona muy parecido a indexOf pero no acepta
valores de posició n en las que empezar a buscar. Sin embargo, sí acepta expresiones regulares como
valores de bú squeda. También tenemos slice. El método slice nos permite extraer una parte de la string y
devuelve lo extraído en una nueva string. Para ello necesitas proporcionarle dos pará metros que son dos
nú meros y que será n la posició n de inicio y la de final, sin incluir la posició n final, de la string que devolverá
la nueva string que hemos especificado. Te lo explico de una manera má s simple. Tenemos nuestra string,
que es los tres nombres Pepe, Manolo y Juanjo, y tenemos una variable resultado en la que hemos dicho que
su valor será el extracto desde la posició n 0, la primera, hasta la posició n 5, que sería la quinta, el espacio.
Una vez pedimos que nos muestre el resultado por consola, nos devolverá Pepe y la coma. Se comienza a
contar desde cero, entonces recordemos que es 0, 1, 2, 3, 4 y el quinto no lo incluye. De esta manera puedes
extraer cualquier parte de las strings, meterlo en una string nueva y poder trabajar con ella. Existe también
el método substring, que se escribe tal que así, sin la mayú scula, y que es prá cticamente igual a slice, salvo
que en la substring no se aceptan valores negativos y que, en caso de no utilizar un pará metro de fin, el
resultado será todo lo que haya desde la posició n de inicio hasta el final. Es decir, si nosotros con substring
no especificamos un valor de final, nos da pues desde la posició n 0 hasta el final. Si ponemos, por ejemplo,
un 10, pues nos empieza a contar en la posició n 10 y en la posició n 10 nos da todo lo que tengamos hasta el
final. Existe también substr, que se escribe así, que parece igual que substring pero el segundo parámetro
no es la posició n final, sino la longitud de caracteres que debemos cortar. Por ejemplo, si nosotros tenemos
0 y 5, comenzaría desde la posició n 0 y recortaría cinco posiciones, es decir, 0, 1, 2, 3, 4, y 5. En este caso sí
nos incluiría el espacio. Otro método interesante es el método replace, en este caso reemplazamos un valor
específico con otro valor en la string. Te devuelve una string nueva con los cambios realizados y por defecto
se aplica solo a la primera coincidencia. Es decir, si tuviéramos “Este curso me gusta”, gusta, gusta, gusta y
decimos que queremos que en la variable reemplazo nos guarde la misma frase cambiando “gusta” por
“encanta”, nos daría Este curso me encanta. Pero si en lugar de tener un solo gusta tuviéramos cinco gustas,
solo nos cambiaría la primera coincidencia y no el resto. Existe otro método que es especialmente ú til que
se llama toUpperCase, que nos sirve para convertir todos los caracteres de una string a mayú sculas. Como
puedes ver, aquí tenemos el nombre de plitrmen, todo en minú sculas, y lo que queremos es que dentro de
la string plitrmen todo se convierta a mayú sculas. En oposició n, tenemos el método toLowerCase que lo que
hace es justo lo contrario, nos convierte todo a minú sculas. Por otro lado, tenemos el método concat, que
nos sirve para unir dos o má s strings y puede ser utilizado en lugar del operador má s. Tenemos “Hello”, un
espacio en blanco y “World”. Son tres strings. Y lo que queremos hacer es unirlas concatená ndolas con
espacio y “World”. Por otro lado, tenemos la propiedad trim que lo que hace es recortar los espacios en
blanco que tenga a su alrededor la string que tengas. En este caso nos devuelve una nueva string, que será
nuestra misma string pero sin los espacios a los lados. Existen otros métodos que son también bastante
interesantes que son el plit, el charAt y el charCodeAt. Sin embargo, con los métodos que has estudiado
previamente puedes comenzar a hacer un có digo bastante intuitivo. Con el tiempo, tus algoritmos será n
cada vez má s complicados y, por ende, podrá s contar con métodos un poco má s complicados.

Estructuras de datos

Quando você selecionar uma linha na transcriçã o, será direcionado à seçã o equivalente no vídeo

Las estructuras de datos son formas particulares de ordenar la informació n en programació n. Este tipo de
estructuras son muy ú tiles tanto para organizar la informació n, con especial énfasis en las grandes
cantidades de datos, como para optimizar los algoritmos de bú squeda de datos e indizació n de los mismos.
Una de las grandes ventajas del uso de las estructuras de datos es que si elegimos la estructura adecuada
recibiremos como consecuencia que las operaciones que realicemos con la informació n será n
considerablemente má s eficientes. Existen varios tipos de estructura de datos y los má s conocidos son los
siguientes. En primer lugar, los arrays. Se conocen como vectores o colecciones y son una serie de
elementos en orden específico. A ellos se accede utilizando un nú mero como índice para especificar el
elemento con el que queremos trabajar. La cuenta de posiciones comienza siempre en cero. En los lenguajes
fuertemente equipados, ademá s, debemos especificar si la longitud del array es fija o variable. En lenguajes
como JavaScript la longitud es variable por defecto. Observemos un ejemplo de arrays. Tenemos en una
variable un array llamado objetos cuyos valores son silla, llaves, vaso y cama. Como son strings, los
ponemos entre comillas dobles, y cada uno de ellos ocupa una posició n en la memoria del array. Para
obtener el elemento de la primera posició n, guardamos en la variable elegido la llamada objetos, que es el
nombre de nuestro array, y 0, que es la posició n primera de nuestro array. Si pedimos que nos lo pasen por
consola, aparecen silla. En JavaScript se comienza a contar desde cero todas las posiciones. Tenemos silla
en la posició n 0, llaves en la posició n 1, vaso en la posició n 2 y cama en la posició n 3. Es decir, si
quisiéramos el cuarto objeto, este cuarto objeto estaría en la posició n 3 y tendríamos que poner objetos y
entre corchetes un 3. Otro ejemplo son los vectores asociativos. Un array asociativo es un array cuyos
índices no son numéricos, sino cadenas de texto o claves. En JavaScript no existen formalmente los arrays
asociativos, pero se pueden simular utilizando objetos y accediendo a sus propiedades. Para ello se utilizan
llaves para generar un array con elementos clave/valor. En los arrays indexados accedemos con el índice o
posició n en el array, y en estos, en los asociativos, accedemos con la clave. Veamos un ejemplo. Tenemos en
nuestra variable moto una serie de pares clave/valor. Tenemos la clave color, cuyo valor va a ser negro.
Tenemos la clave caballos de vapor, que es 25. Y tenemos la clave custom, que es true porque en este caso
nuestra moto va a estar customizada. Si queremos acceder al color de la moto, accedemos a la variable dato
que creamos para guardar el resultado, en el que especificamos moto y entre los corchetes especificamos la
clave que queremos, que en este caso es color. Guardamos el color de la moto en la variable dato. Y si
queremos que nos lo pasen por pantalla, pedimos esta variable y nos muestra por consola negro, que es
nuestro color. Otro ejemplo es un grafo, que es una estructura formada por nodos que se comunican entre
sí. Estos nodos contienen sus propios datos y a su vez referencias a otros nodos con los que se comunican.
Un ejemplo muy simplificado sería una red de ordenadores conectados entre sí en la que el flujo de datos
en su interior conformaría un grafo. Ademá s, las conexiones entre nodos pueden tener direcció n
especificando qué nodo es de entrada y qué nodo es de salida. Existe un tipo de bases de datos basadas en
grafos conocidas como bases de datos NoSQL. Como puedes observar, aquí tenemos un grafo. Estos serían
sus distintos nodos y este sería el flujo de informació n entre uno y otro. Si bien es interesante que los
conozcas, de momento para tu introducció n a la programació n no es necesario que profundices en ellos. Un
á rbol es un caso particular de grafo dirigido en el que el camino desde el nodo raíz hacia otro de los nodos
está delimitado y no se admiten ciclos. Una colecció n de á rboles es llamada bosque, y un tipo concreto de
á rboles se llama montículo binario y destaca por permitir guardar los datos desordenadamente y extraerlos
en orden. Es especialmente ú til, por ejemplo, para gestionar colas de prioridades. Otras estructuras de
datos que resultan interesantes son las pilas, las clases, los registros, las variantes, los conjuntos o
multiconjuntos y muchas otras má s. De momento, lo interesante es que conozcas las estructuras de datos,
que conozcas que existen y que aproveches las má s simples. Con el tiempo aprenderá s má s sobre
estructuras de datos y podrá s realizar algoritmos cada vez má s complicados.

Estructuras de datos

Quando você selecionar uma linha na transcriçã o, será direcionado à seçã o equivalente no vídeo

Las estructuras de datos son formas particulares de ordenar la informació n en programació n. Este tipo de
estructuras son muy ú tiles tanto para organizar la informació n, con especial énfasis en las grandes
cantidades de datos, como para optimizar los algoritmos de bú squeda de datos e indizació n de los mismos.
Una de las grandes ventajas del uso de las estructuras de datos es que si elegimos la estructura adecuada
recibiremos como consecuencia que las operaciones que realicemos con la informació n será n
considerablemente má s eficientes. Existen varios tipos de estructura de datos y los má s conocidos son los
siguientes. En primer lugar, los arrays. Se conocen como vectores o colecciones y son una serie de
elementos en orden específico. A ellos se accede utilizando un nú mero como índice para especificar el
elemento con el que queremos trabajar. La cuenta de posiciones comienza siempre en cero. En los lenguajes
fuertemente equipados, ademá s, debemos especificar si la longitud del array es fija o variable. En lenguajes
como JavaScript la longitud es variable por defecto. Observemos un ejemplo de arrays. Tenemos en una
variable un array llamado objetos cuyos valores son silla, llaves, vaso y cama. Como son strings, los
ponemos entre comillas dobles, y cada uno de ellos ocupa una posició n en la memoria del array. Para
obtener el elemento de la primera posició n, guardamos en la variable elegido la llamada objetos, que es el
nombre de nuestro array, y 0, que es la posició n primera de nuestro array. Si pedimos que nos lo pasen por
consola, aparecen silla. En JavaScript se comienza a contar desde cero todas las posiciones. Tenemos silla
en la posició n 0, llaves en la posició n 1, vaso en la posició n 2 y cama en la posició n 3. Es decir, si
quisiéramos el cuarto objeto, este cuarto objeto estaría en la posició n 3 y tendríamos que poner objetos y
entre corchetes un 3. Otro ejemplo son los vectores asociativos. Un array asociativo es un array cuyos
índices no son numéricos, sino cadenas de texto o claves. En JavaScript no existen formalmente los arrays
asociativos, pero se pueden simular utilizando objetos y accediendo a sus propiedades. Para ello se utilizan
llaves para generar un array con elementos clave/valor. En los arrays indexados accedemos con el índice o
posició n en el array, y en estos, en los asociativos, accedemos con la clave. Veamos un ejemplo. Tenemos en
nuestra variable moto una serie de pares clave/valor. Tenemos la clave color, cuyo valor va a ser negro.
Tenemos la clave caballos de vapor, que es 25. Y tenemos la clave custom, que es true porque en este caso
nuestra moto va a estar customizada. Si queremos acceder al color de la moto, accedemos a la variable dato
que creamos para guardar el resultado, en el que especificamos moto y entre los corchetes especificamos la
clave que queremos, que en este caso es color. Guardamos el color de la moto en la variable dato. Y si
queremos que nos lo pasen por pantalla, pedimos esta variable y nos muestra por consola negro, que es
nuestro color. Otro ejemplo es un grafo, que es una estructura formada por nodos que se comunican entre
sí. Estos nodos contienen sus propios datos y a su vez referencias a otros nodos con los que se comunican.
Un ejemplo muy simplificado sería una red de ordenadores conectados entre sí en la que el flujo de datos
en su interior conformaría un grafo. Ademá s, las conexiones entre nodos pueden tener direcció n
especificando qué nodo es de entrada y qué nodo es de salida. Existe un tipo de bases de datos basadas en
grafos conocidas como bases de datos NoSQL. Como puedes observar, aquí tenemos un grafo. Estos serían
sus distintos nodos y este sería el flujo de informació n entre uno y otro. Si bien es interesante que los
conozcas, de momento para tu introducció n a la programació n no es necesario que profundices en ellos. Un
á rbol es un caso particular de grafo dirigido en el que el camino desde el nodo raíz hacia otro de los nodos
está delimitado y no se admiten ciclos. Una colecció n de á rboles es llamada bosque, y un tipo concreto de
á rboles se llama montículo binario y destaca por permitir guardar los datos desordenadamente y extraerlos
en orden. Es especialmente ú til, por ejemplo, para gestionar colas de prioridades. Otras estructuras de
datos que resultan interesantes son las pilas, las clases, los registros, las variantes, los conjuntos o
multiconjuntos y muchas otras má s. De momento, lo interesante es que conozcas las estructuras de datos,
que conozcas que existen y que aproveches las má s simples. Con el tiempo aprenderá s má s sobre
estructuras de datos y podrá s realizar algoritmos cada vez má s complicados.

Estructuras de control

Quando você selecionar uma linha na transcriçã o, será direcionado à seçã o equivalente no vídeo

Las estructuras de control permiten modificar el flujo de ejecució n de las instrucciones de un programa
mediante el uso de iteraciones y condiciones. Un tipo de estructura de control es el có digo condicional que
se ejecuta o no en dependencia a la respuesta a una pregunta. Un tipo de có digo condicional es el IF, en el
que todo debe ser evaluable como verdadero o falso. Si el có digo es verdadero, se ejecuta. Y si el có digo es
falso, no se ejecuta. Ademá s, dentro de la estructura del IF usamos un else para evaluar diferentes casos
fuera de la principal condició n que se estudia en el IF. Como puedes ver, aquí tenemos nuestro IF en el que
creamos una variable balance que inicializamos a 0, y en nuestro có digo condicional lo que preguntamos es
si balance es mayor que 0. En caso de que balance sea mayor que 0, mostramos por consola "el balance es
positivo". De lo contrario, utilizando un else especificamos por consola que el balance es negativo. Otro tipo
de estructura de control es SWITCH, que permite evitar usar demasiados IF en una condició n mú ltiple. en
este caso lo que hacemos es evaluar casos con case y terminar cada caso con break. Ademá s, especificamos
un default, que lo que hace es darnos una solució n o un resultado en el caso de que se dé un ejemplo que no
cumpla con el resto de casos que hemos especificado. Como puedes ver, en esta estructura SWITCH vamos
a dar el precio de un combustible segú n lo que nos muestre el usuario. En el caso de recibir diesel, vamos a
mostrar por consola 1.02. Paramos este caso. Planteamos el siguiente caso, que nos den super97, en el que
pondremos por consola 1.45€. Y pararemos este caso. Y el siguiente caso es que nos den super95, en el que
pondremos por consola 1.67. Y romperemos el caso. Finalmente, si no nos ponen ninguno de estos valores,
tendremos un default que nos pondrá "Lo que has escrito no está ". Por otra parte, tenemos el có digo
iterativo. Una iteració n es la repetició n de un có digo dentro de un bucle. En esta repetició n se repite la tarea
un nú mero definido de veces, de esta manera evitamos repeticiones innecesarias en el có digo. En los bucles
iterativos lo que especificamos no es la sentencia a ejecutar, sino cuá ndo parar la ejecució n. Cualquier bucle
debe tener una condició n en la que se diga cuá ndo parar para evitar el consumo excesivo de recursos y el
posible bloqueo de la má quina. Asimismo, debemos tener en cuenta el nú mero de repeticiones y los valores
inicial y final que tendrá el índex de nuestro bucle. La estructura de la mayor parte de los bucles tienen tres
elementos. En primer lugar, la inicializació n del índice. En segundo lugar, comprobamos la condició n del
índice. Y, en tercer lugar, incrementamos el índice. Un ejemplo de este tipo de estructuras es la estructura
WHILE, que se basa en inicializar una variable a 0, crear un índice, que vamos a inicializar en 1. Asimismo,
vamos a crear una condició n. En este caso, mientras el índice sea menor que 10, y se cumplirá que mientras
se dé esta condició n incrementaremos en cantidad 100 puntos de manera que cada iteració n de cantidad
incremente en 100 el valor de cantidad. Asimismo, incrementamos el índice, con lo que se repetirá 10 veces
esta condició n, ya que comenzamos en 1, cuando lleguemos a 10 e i sea igual a 10, esta condició n dejará de
cumplirse y se parará el có digo. Finalmente, mostramos por consola "El valor final es" y el valor que haya
quedado en cantidad después de 10 repeticiones de el có digo. Por otro lado, tenemos la estructura FOR, que
lo que hace es meter todos los elementos del WHILE dentro de una estructura de control. En lugar de hacer
una inicializació n por un lado, revisar la condició n por el otro e incrementar al final, lo que hacemos es
inicializar, comprobar e incrementar a la vez. Con ello lo que hacemos es que lo que se cumpla entre estas
dos llaves estará ya triplemente comprobado y se repetirá tantas veces haga falta sin necesidad de añ adir
má s líneas de có digo. en este caso lo que estamos pidiendo ademá s por consola es que se nos muestre el
valor que va adquiriendo el índice con cada iteració n de el có digo. Existe también el bucle DO... WHILE. En
él lo que hacemos es mover la condició n al final. Lo que está dentro del bloque, por ende, se ejecuta al
menos una vez, ya que la condició n se comprueba después de la ejecució n del có digo que queremos. Es
decir, creamos una variable, la inicializamos a 1, pedimos que nuestro có digo cumpla un cierto tipo de
instrucciones e incrementamos el índice. Y, finalmente, después de hacer este proceso preguntamos si se
cumple la condició n. De esta manera, en el momento en el que la condició n debe cumplirse ya se habrá
ejecutado la vuelta correspondiente de este có digo.

Estructuras de control

Quando você selecionar uma linha na transcriçã o, será direcionado à seçã o equivalente no vídeo

Las estructuras de control permiten modificar el flujo de ejecució n de las instrucciones de un programa
mediante el uso de iteraciones y condiciones. Un tipo de estructura de control es el có digo condicional que
se ejecuta o no en dependencia a la respuesta a una pregunta. Un tipo de có digo condicional es el IF, en el
que todo debe ser evaluable como verdadero o falso. Si el có digo es verdadero, se ejecuta. Y si el có digo es
falso, no se ejecuta. Ademá s, dentro de la estructura del IF usamos un else para evaluar diferentes casos
fuera de la principal condició n que se estudia en el IF. Como puedes ver, aquí tenemos nuestro IF en el que
creamos una variable balance que inicializamos a 0, y en nuestro có digo condicional lo que preguntamos es
si balance es mayor que 0. En caso de que balance sea mayor que 0, mostramos por consola "el balance es
positivo". De lo contrario, utilizando un else especificamos por consola que el balance es negativo. Otro tipo
de estructura de control es SWITCH, que permite evitar usar demasiados IF en una condició n mú ltiple. en
este caso lo que hacemos es evaluar casos con case y terminar cada caso con break. Ademá s, especificamos
un default, que lo que hace es darnos una solució n o un resultado en el caso de que se dé un ejemplo que no
cumpla con el resto de casos que hemos especificado. Como puedes ver, en esta estructura SWITCH vamos
a dar el precio de un combustible segú n lo que nos muestre el usuario. En el caso de recibir diesel, vamos a
mostrar por consola 1.02. Paramos este caso. Planteamos el siguiente caso, que nos den super97, en el que
pondremos por consola 1.45€. Y pararemos este caso. Y el siguiente caso es que nos den super95, en el que
pondremos por consola 1.67. Y romperemos el caso. Finalmente, si no nos ponen ninguno de estos valores,
tendremos un default que nos pondrá "Lo que has escrito no está ". Por otra parte, tenemos el có digo
iterativo. Una iteració n es la repetició n de un có digo dentro de un bucle. En esta repetició n se repite la tarea
un nú mero definido de veces, de esta manera evitamos repeticiones innecesarias en el có digo. En los bucles
iterativos lo que especificamos no es la sentencia a ejecutar, sino cuá ndo parar la ejecució n. Cualquier bucle
debe tener una condició n en la que se diga cuá ndo parar para evitar el consumo excesivo de recursos y el
posible bloqueo de la má quina. Asimismo, debemos tener en cuenta el nú mero de repeticiones y los valores
inicial y final que tendrá el índex de nuestro bucle. La estructura de la mayor parte de los bucles tienen tres
elementos. En primer lugar, la inicializació n del índice. En segundo lugar, comprobamos la condició n del
índice. Y, en tercer lugar, incrementamos el índice. Un ejemplo de este tipo de estructuras es la estructura
WHILE, que se basa en inicializar una variable a 0, crear un índice, que vamos a inicializar en 1. Asimismo,
vamos a crear una condició n. En este caso, mientras el índice sea menor que 10, y se cumplirá que mientras
se dé esta condició n incrementaremos en cantidad 100 puntos de manera que cada iteració n de cantidad
incremente en 100 el valor de cantidad. Asimismo, incrementamos el índice, con lo que se repetirá 10 veces
esta condició n, ya que comenzamos en 1, cuando lleguemos a 10 e i sea igual a 10, esta condició n dejará de
cumplirse y se parará el có digo. Finalmente, mostramos por consola "El valor final es" y el valor que haya
quedado en cantidad después de 10 repeticiones de el có digo. Por otro lado, tenemos la estructura FOR, que
lo que hace es meter todos los elementos del WHILE dentro de una estructura de control. En lugar de hacer
una inicializació n por un lado, revisar la condició n por el otro e incrementar al final, lo que hacemos es
inicializar, comprobar e incrementar a la vez. Con ello lo que hacemos es que lo que se cumpla entre estas
dos llaves estará ya triplemente comprobado y se repetirá tantas veces haga falta sin necesidad de añ adir
má s líneas de có digo. en este caso lo que estamos pidiendo ademá s por consola es que se nos muestre el
valor que va adquiriendo el índice con cada iteració n de el có digo. Existe también el bucle DO... WHILE. En
él lo que hacemos es mover la condició n al final. Lo que está dentro del bloque, por ende, se ejecuta al
menos una vez, ya que la condició n se comprueba después de la ejecució n del có digo que queremos. Es
decir, creamos una variable, la inicializamos a 1, pedimos que nuestro có digo cumpla un cierto tipo de
instrucciones e incrementamos el índice. Y, finalmente, después de hacer este proceso preguntamos si se
cumple la condició n. De esta manera, en el momento en el que la condició n debe cumplirse ya se habrá
ejecutado la vuelta correspondiente de este có digo.

Métodos de ordenación

Quando você selecionar uma linha na transcriçã o, será direcionado à seçã o equivalente no vídeo

Un método de ordenació n es un algoritmo que permuta los datos de una estructura en una secuencia
determinada. Los métodos de ordenació n son especialmente ú tiles para que los datos que procesamos sean
legibles por humanos y su procesamiento se agilice. Para estructuras con pocos elementos, es má s eficiente
la ordenació n directa, ya que conlleva menor tiempo de ejecució n. Existen varias maneras de realizar esta
ordenació n. Una de ellas es el intercambio, que se basa en comparar los elementos entre sí e intercambiar
su posició n si es necesario. Quicksort son los métodos que ordenan grandes cantidades de datos
subdividiendo la estructura en otras má s pequeñ as y agregá ndoles un orden. Los métodos de ordenació n
por selecció n se basan en tomar el elemento má s pequeñ o o má s grande del vector y moverlo a la posició n
1 y así sucesivamente hasta que logremos la secuencia que queremos. Los métodos por inserció n consisten
en insertar elementos no ordenados del vector en vectores má s pequeñ os ya ordenados. Los métodos de
bú squeda se basan en localizar un elemento concreto en la estructura de datos. Como tipos de elementos de
bú squeda tenemos la bú squeda secuencial, en la que recorremos el vector comparando elemento por
elemento con el dato proporcionado, y la bú squeda binaria, en la que se comienza a buscar por el centro. Si
los elementos coinciden, se detiene la bú squeda. Si no, la bú squeda continú a en la segunda mitad si el
elemento dado es mayor que el central o en la primera si es menor, ignorando la otra mitad del vector.
Existen varias clasificaciones de algoritmos de ordenació n segú n criterios específicos. Por ejemplo, dentro
del lugar donde se realice la permutació n o la reordenació n de los datos tenemos el ordenamiento interno,
que se realiza en la memoria del ordenador, y el ordenamiento externo, que se realiza fuera del ordenador,
por ejemplo en un servidor de la nube o en un disco duro externo. Segú n las prioridades de ordenació n,
tenemos la ordenació n natural, que tarda lo menos posible habiendo recibido una entrada de datos
ordenada, y la no natural, que tarda lo mínimo posible para una entrada inversamente ordenada. Existen
otros tipos de algoritmos de ordenació n por complejidad computacional, por estabilidad, por uso de
memoria, etc. Lo cierto es que existen multitud de algoritmos de ordenació n que puedes utilizar para tus
proyectos para agilizar el acceso y filtrado de datos en tu estructura. Puedes encontrarlos todos en Internet,
pero lo importante es que sepas que existen, cuáles son sus usos para poder utilizar el que má s te convenga
en cada momento y cuá l debes usar en cada caso.
Otros lenguajes de programación

Quando você selecionar uma linha na transcriçã o, será direcionado à seçã o equivalente no vídeo

El beneficio de aprender las bases de la programació n es que estas son iguales para todos los lenguajes, con
pequeñ as variaciones propias de cada uno. A continuació n, te hablaré de tres lenguajes de programació n
que también resultan idó neos para aprender a programar. El primero de estos lenguajes es Java, que es uno
de los lenguajes de programació n má s populares del mundo. Se presenta como un lenguaje orientado a
objetos, robusto y versá til que nos permite trabajar tanto en aplicaciones de escritorio como en
plataformas web y es especialmente ú til en el backend. La comunidad de profesionales de Java es de las
má s amplias y activas del mundo, y abunda tanto la documentació n formal como soluciones a problemas
sencillos y complejos online. Ademá s de esto, es un lenguaje multiplataforma que nos sirve para trabajar en
escritorio y web tanto en el lado del cliente como en el lado del servidor, e incluso crear apps mó viles con
Kotlin, que es en esencia Java. Por otro lado, Java es un lenguaje fuertemente tipado, ideal para personas en
procesos de aprendizaje sobre estructuras de programació n. Su popularidad y la alta demanda de personal
de desarrollo en Java lo convierten en uno de los mejores pasaportes para trabajos con alta remuneració n, y
nunca faltan salidas laborales por su alto nivel de uso en entornos corporativos. PHP es un lenguaje
fuertemente cuestionado en el entorno de la programació n y, sin embargo, aprender a programar
utilizando PHP es una muy buena idea. PHP es conocido por sus características user friendly, fáciles de
usar, y por su disponibilidad para trabajar con él en diferentes plataformas. Gran ejemplo de uso extendido
de PHP son CMS como Drupal o WordPress. Destaca también por ser un lenguaje muy seguro ante
amenazas, ya que, a diferencia de otros lenguajes, el core de PHP proporciona mú ltiples opciones para
asegurarse ante amenazas digitales en general. PHP es uno de los lenguajes de programació n má s
populares y buscados en el panorama del desarrollo web, ya que proporciona multitud de frameworks y
librerías con los que poder trabajar. Algunos de los má s conocidos son Laravel o Symfony. Ademá s, PHP
hace gala de ser un lenguaje de có digo abierto que puede utilizarse para desarrollar diferentes aplicaciones
y webs de una manera limpia y fácil. Otro lenguaje muy popular para aprender es Python, ya que engloba
multitud de ventajas como su uso en data science, ya que, entre otras características, Python contiene una
librería de aná lisis de datos con mú ltiples usos en este campo. Es utilizado también para inteligencia
artificial y machine learning, ya que permite crear algoritmos con estadísticas que activan acciones en los
computadores. También es ú til para la web, ya que tiene librerías y frameworks para el desarrollo. Grandes
sitios como Mozilla, Spotify o Reddit se sirven de Python y algunos de sus frameworks como lenguaje
principal. Ademá s, Python tiene una comunidad de profesionales grande y activa siempre dispuesta a
ayudar a las personas que comienzan con el lenguaje, y existen multitud de soluciones a problemas
frecuentes online. Es un lenguaje fácil de entender, ya que no tiene normas sintá cticas complejas o reglas
muy estrictas. Se asemeja bastante al lenguaje inglés, lo cual simplifica mucho el proceso de aprendizaje.
Por otro lado, Python se utiliza para la automatizació n y el scripting de tareas en el sistema y, sin embargo,
es notablemente fácil de entender. Es especialmente prá ctico, ya que permite implementar con facilidad
varios procesos portables entre plataformas. Y su combinació n con otros frameworks permite añ adirle un
rasgo de extensibilidad. Al margen de esto, Python puede ser usado para crear aplicaciones de escritorio o
interfaces grá ficas y existen multitud de toolkits o librerías especialmente preparadas para ello. Python
tiene multitud de frameworks y librerías para varios objetivos. Por ejemplo, Django está preparado para el
desarrollo web, TensorFlow se utiliza para machine learning, etc. Desarrollar con Python es muy simple
precisamente porque existen muchos frameworks aplicables para cada requerimiento. Por si fuera poco, es
un lenguaje especialmente demandado laboralmente y su uso, especialmente en el data science, machine
learning y desarrollo web, crece cada día má s.

También podría gustarte