Aprende programación de computadoras

Miguel Ángel Aquino Martínez

Fernando Aquino Medina

Ilustraciones de:

Lenin Andrés Medina Aguilar

Emilio Aquino Medina

© Miguel Ángel Aquino Martínez, Fernando Aquino Medina

© Aprende programación de computadoras

Ilustraciones de: Lenin Andrés Medina Aguilar, Emilio Aquino Medina

Junio 2021

ISBN papel: 978-84-685-5886-8

ISBN ePub: 978-84-685-5887-5

Editado por Bubok Publishing S.L.

equipo@bubok.com

Tel: 912904490

C/Vizcaya, 6

28045 Madrid

Reservados todos los derechos. Salvo excepción prevista por la ley, no se permite la reproducción total o parcial de esta obra, ni su incorporación a un sistema informático, ni su transmisión en cualquier forma o por cualquier medio (electrónico, mecánico, fotocopia, grabación u otros) sin autorización previa y por escrito de los titulares del copyright. La infracción de dichos derechos conlleva sanciones legales y puede constituir un delito contra la propiedad intelectual.

Diríjase a CEDRO (Centro Español de Derechos Reprográficos) si necesita fotocopiar o escanear algún fragmento de esta obra (www.conlicencia.com; 91 702 19 70 / 93 272 04 47).

Dedicado a mis héroes:

Ta Irineo Aquino y

Na Cándida Martínez.

Y en memoria de mi abuelo:

Ta Teófilo Aquino

Índice

Introducción

Capítulo I

La computadora

Componentes de una computadora

El hardware

Procesador

Memoria RAM

Disco duro

Conectividad

Pantalla

El software

Sistemas operativos

Aplicaciones

Capítulo II

Los programadores de computadoras

¿Qué lenguajes vas a aprender?

JavaScript (JS)

Swift

Recomendaciones importantes

Capítulo III

Preparación del espacio de trabajo

¿Qué necesitas para continuar con este libro?

Preparación del espacio de trabajo en la computadoras

Computadoras con sistema operativo Windows

Computadoras con sistema operativo macOS y en iPads

Programar en JavaScript en computadoras con sistema operativo macOS

Crear carpetas para almacenar los ejercicios

Capítulo IV

Primeros conceptos de la programación de computadoras

Reglas generales

Regla 1. Case sensitive

Regla 2. Uso de caracter fin de línea

Regla 3. Orden en la ejecución de las instrucciones

Regla 4. Incluir comentarios en los programas

Regla 5. Comandos o instrucciones para indicar el inicio y el fin del programa

Capítulo V

Escribir, grabar y ejecutar programas

Escribir un programa en JavaScript

Ejecutar un programa en JavaScript

Escribir un programa con Swift Playgrounds

Capítulo VI

La analogía del robot

Una ventana

Mueble organizador

Una pantalla

Lista de habilidades

Capítulo VII

La programación de computadoras

Tipos de datos

Tipos de datos primitivos

Tipo texto

Tipos numéricos

Tipo boleano

Otros tipos de datos en JavaScript

Otros tipos de datos en Swift

Capítulo VIII

Variables y constantes

Variable

Constante

Crear una variable sin asignarle un valor inicial

Crear múltiples variables o constantes en una misma línea de instrucción

Identificación de errores

Errores de escritura

Errores de sintaxis

Errores de lógica

Capítulo IX

Entrada y salida de datos

Entrada de datos

Salida de datos

Modo caracter

Modo caracter en Windows

Modo caracter en macOS

Modo gráfico con JavaScript

Modo gráfico con Swift

Otra recomendación muy importante

Capítulo X

Los operadores

Operadores aritméticos

Particularidades con JavaScript

Operadores relacionales o de comparación

Operadores lógicos

Jerarquía de operadores

Capítulo XI

Tomar decisiones

Instrucción if()

if() anidados

if() else

if() else if()

Operador ternario condicional

Manejo de opcionales en Swift

switch()

Capítulo XII

Ejecutar ciclos

while()

do o repeat

for()

Capítulo XIII

Funciones

Funciones predefinidas

Funciones definidas por el programador

Crear módulos

Paso de parámetros

Funciones que aceptan varios parámetros

Funciones que regresan valores

Ámbito o alcance de las variables

Otras características de las funciones

Capítulo XIV

Otros tipos de datos

Arreglos

Algunas operaciones con arreglos con JavaScript

Algunas operaciones con arreglos con Swift

Diccionarios de datos

Operaciones con diccionarios usando JavaScript

Operaciones con diccionarios usando Swift

Otra alternativa para manejo de opcionales con Swift

Comentarios finales

Continúa haciendo ejercicios

Aprende programación orientada a objetos

Aprende a usar tecnologías de desarrollo front end

Aprende al menos otro lenguaje de programación

Utiliza un IDE para el desarrollo de tus proyectos

Utiliza bases de datos en tus proyectos

Bibliografía

Introducción

¿Sabías que tu teléfono celular independientemente de la marca o modelo del que estás usando tiene mas capacidad que la computadora que hizo que el hombre fuera a la luna por primera vez? Si tienes tiempo, investígalo y te sorprenderás.

¿Te has preguntado si estás aprovechando todo el potencial de tu computadora o de tu teléfono celular?

¿Crees que le estás sacando provecho al pago por el wifi de tu casa y el consumo de datos de tu celular?

Estas preguntas te pueden venir a la mente porque cuando adquieres una computadora se incrementan tus gastos por el mayor consumo de electricidad, el uso de wifi; y por lo regular la compramos con una impresora a la que hay que agregarle cartuchos de tinta o de tóner y papel, y si además la computadora la usas solamente para ver películas, escuchar música, consultar correos, hacer video llamadas, jugar, bajar tus fotos digitales o entrar a redes sociales, estás desperdiciando tus recursos y algo aún más valioso: tu tiempo.

Si eres una persona que está acostumbrada a usar su computadora solo para el entretenimiento, quiero que sepas que tienes un gran potencial en tus manos. La computadora es una pieza formidable de tecnología que, si le sumas un poco de dedicación para aprender algo nuevo y lo complementas con un poco de creatividad puedes llegar a ser más productivo en tu trabajo o incluso puedes encontrar tu verdadera vocación.

Una de las cosas de las que puedes aprender es la programación de computadoras. No necesitas mucho, ya tienes la computadora, tienes en tus manos este libro, solo falta que le dediques tiempo y seas constante.

La programación de computadoras tiene beneficios para ti como persona, como estudiante y como profesional:

•Agudiza el pensamiento estructurado, el pensamiento lógico y la solución de problemas.

•Te hace más independiente, porque serás capaz de ejecutar actividades que antes tenías que pedir que otras personas las realizaran.

•Aumenta tu valor como profesional, porque se incrementan tus habilidades a nivel curricular.

•Puedes emprender tu propia empresa

•Trabajar desde la comodidad de tu casa… o desde tu hamaca

Aún con los beneficios que te puede aportar, puedes tener muchas dudas sobre si serás capaz de aprender a programar, puedes preguntarte ¿si eso es para mi?, que puede resultar complicado porque es “muy técnico”, que eso es solo para genios o hackers como los que aparecen en las películas. Todas tus dudas son válidas, pero yo te pido que te des una oportunidad porque en realidad no es complicado y con este libro lo podrás lograr.

Organicé este libro para que aprendas de una forma rápida y fácil. La estructura, la selección de la secuencia y el contenido de los temas en los capítulos están diseñados de tal forma que comprendas las reglas y los componentes de los lenguajes de programación.

Mi objetivo principal es que entiendas para qué sirve cada componente, que aprendas lo que sí se puede hacer y lo que no se puede hacer.

Mi segundo objetivo es que aprendas al menos un lenguaje de programación y apliques los conceptos aprendidos.

Y para hacerlo fácil, voy a explicar los componentes usando analogías para asociar, comparar y ejemplificar los conceptos de la programación con cosas que haces, cosas que usas en tu vida cotidiana y cosas que ya conoces.

Para que te vayas dando una idea del avance de tu aprendizaje y de hasta dónde puedes llegar desarrollando sistemas, voy a representar lo que vas aprendiendo como si fuera una planta que va creciendo desde la semilla hasta que se convierta en un árbol.

En cada capítulo sobre los componentes de la programación de computadoras mostraré el crecimiento de la planta.

También es importante aclarar que este libro no está dirigida a personas con experiencia en la programación de computadoras, mas bien va dirigida a:

•Personas que simplemente quieran saber si es algo que se le facilite aprender

•Alguien que quiera saber si es “bueno” para la programación

•Profesionales como abogados, contadores, administradores, etc., que quieren facilitar su trabajo cotidiano o aumentar su productividad y su valor como profesionales

•Estudiantes que estén cursando alguna asignatura sobre programación de computadoras

•Niños que quieran aprender a hacer sus propias aplicaciones

•Profesores que impartan clases de inducción a la programación

•Cualquier persona que quiera aprender

Finalmente, te quiero compartir que en mi caso descubrí la programación de computadoras en el último semestre de mis estudios del bachillerato, cuando todos mis compañeros tenían definido lo que querían estudiar, excepto yo . Pero hoy te puedo decir que la materia de programación del último semestre hizo que valiera la pena los 3 años del bachillerato , y me haría feliz saber si este libro te ayuda a descubrir que tienes talento para la programación de computadoras.

Miguel Ángel Aquino Martínez

Capítulo I

La computadora

Se puede definir a la computadora como:

•Una máquina que está compuesta de varios tipos de tecnologías

•Una herramienta para realizar cálculos, almacenar e intercambiar datos con otros equipos

•Una máquina increíblemente veloz, pero que por sí sola no sabe hacer nada.

Componentes de una computadora

Voy a mencionar solamente los componentes más importantes de una computadora y no ahondaré en cuestiones técnicas, ya que no es el objetivo de este libro.

Primero voy a dividir los componentes en dos partes:

El hardware

El hardware son los componentes físicos (lo que se puede tocar) de la computadora como el teclado, la pantalla, el procesador, etc.

Como parte del hardware se tienen los siguientes componentes:

Procesador

Esta pieza es un microchip que es el cerebro de la computadora, porque es quien ejecuta tareas y realiza cálculos a gran velocidad. Los procesadores están compuestos a su vez por núcleos que son como otros pequeños cerebros que ayudan para aumentar la velocidad de procesamiento. Mientras más núcleos tenga el procesador, más rápida será la computadora.

Así como los tipos de motores en las diversas marcas de automóviles, también existen varias marcas de computadoras con procesadores y velocidades diferentes.

Las velocidades de los procesadores se miden en Gigahercios (GHz) y el poder de cálculo lo da el número de núcleos. Existen computadoras con procesadores de velocidades de 1.8GHz, 2.4GHz, 3GHz o más, y con 1, 2, 4, 6, etc. núcleos. Mientras mas velocidad y más núcleos, la computadora es más rápida y más costosa.

Memoria RAM

Así como los humanos tenemos memoria para recordar hechos, cifras, fechas o personas, las computadoras también necesitan de memoria para almacenar datos de forma temporal para ejecutar tareas o hacer cálculos.

Esta memoria RAM también se le puede llamar de acceso rápido porque es la memoria que funciona mas rápido en la computadora, además es el componente que el procesador usa con más frecuencia para almacenar temporalmente la información que requiere para hacer cálculos.

Así como normalmente una persona sabe cuántos kilos pesa y cuántos metros mide, también la memoria RAM tiene unidades de medidas para saber cuánta memoria tiene una computadora o un teléfono celular (los teléfonos celulares también tienen RAM).

En la actualidad la medida más conveniente para medir la capacidad de la memoria es en Gigabytes (GB). Por poner uno ejemplo: en 1GB caben cerca de 600 fotos de alta calidad, 200 canciones y una película de una hora de duración.

Una computadora con 4GB es suficiente para navegar en internet, para procesamiento de textos, entre otros. Cuando se cuenta con más memoria RAM (8GB, 12GB, 16GB, etc.) la computadora se vuelve más rápida… y más costosa.

Disco duro

Así como las personas utilizan libros, documentos y cuadernos para escribir hechos, historias, información, cifras, etc., para después consultarlas, las computadoras también requieren de un componente para almacenar información y que pueda ser consultada en un futuro, este componente en las computadoras se le llama disco duro.

Una computadora con un disco duro de 250GB o 500GB es suficiente para almacenar los sistemas y datos para los usuarios en general.

Conectividad

Un componente importante para aprovechar al máximo una computadora es la capacidad de conectarse con otras computadoras u otros equipos como impresoras, teléfonos celulares, audífonos, televisores, etc.

La conectividad se asemeja a la capacidad de hablar y comunicarnos con otras personas para intercambiar ideas, sentimientos, hechos, etc.

En la actualidad existen diversas formas y tecnologías de conectividad, de los cuales las más populares son el WIFI y el Bluetooth.

Pantalla

La principal función de la pantalla es mostrar el estado de los sistemas que se están ejecutando. Es similar al tablero del automóvil porque indica el estado (velocidad, nivel de gasolina, etc.) del funcionamiento del coche.

El software

Además de ser todo aquello que no se puede tocar, el software representa el conjunto de conocimientos y habilidades que se le instalan o incorporan a las computadoras para que funcionen o para que realicen ciertas tareas específicas.

Vale la pena aclarar que se le llama software a las aplicaciones y a los sistemas, de hecho, aplicaciones y sistemas son lo mismo, y las aplicaciones y los sistemas son programas de computadora.

Para explicarlo mejor, el hardware sería el cuerpo de una persona y el software es todo aquello que la persona va aprendiendo o memorizando por ejemplo: biología, matemáticas, conducir un automóvil, las tablas de multiplicar, chistes, etc.

hardware

Voy a dividir el software en dos grupos:

Sistemas operativos

El sistema operativo es un grupo de software especializado que tienen como principal función la operación de una computadora. Estos programas están compuestos por una serie de tareas que hacen que todos los componentes del hardware funcionen correctamente. Teniendo en cuenta lo anterior, se puede decir que una computadora no puede funcionar sin un sistema operativo.

Continuando con la analogía, el sistema operativo de un automóvil estaría compuesto por las instrucciones para el uso del volante, la información del tablero, las instrucciones para el uso de los controles de volumen, direccionales, freno, acelerador, etc., todas las instrucciones e información para conducir el automóvil.

Ahora bien, así como en los automóviles las diferentes marcas definen y diseñan sus propios sistemas operativos para sus coches, en el mundo de las computadoras también existen diversos sistemas operativos que en esencia hacen lo mismo, pero tienen una interfaz diferente (la forma de interactuar y la forma en que se ve). Los sistemas operativos más conocidos son: Windows, macOS (para computadoras de marca Apple) y Linux.

Aplicaciones

Las aplicaciones o los sistemas son todo aquel software que adicionalmente al sistema operativo puede instalarse en una computadora para luego ser ejecutado. Existe una gama interminable de aplicaciones que van desde sistemas para generar documentos, manipular imágenes, diseñar planos de edificios, hacer presentaciones, manipular información, llevar contabilidad, etc.

Haciendo una analogía con una persona, las aplicaciones o sistemas serían el conocimiento y habilidades de una persona.

Algo muy importante que debes tener en cuenta cuando requieras instalar aplicaciones en tu computadora es que dichas aplicaciones sean para el sistema operativo que tienes instalado, de lo contrario no se podrán instalar y no se podrán ejecutar. Es como si intentaras instalar una llanta de un tráiler a una bicicleta.

Te puede resultar un poco confuso esta clasificación, sobre todo porque a las aplicaciones también le llamé sistemas. Voy a tratar de simplificarlo:

•El sistema operativo es el software que viene preinstalado en la computadora y hace que la puedas usar.

•Son sistemas que permiten que operes las computadoras

•Las aplicaciones son todos los programas que puedes desarrollar en tu computadora

•Pero… también se puede decir:

•Aplicación de nóminas o sistema de nóminas

•Aplicación de facturación o sistema de facturación

•Aplicación para venta en línea o sistema para venta en línea.

Capítulo II

Los programadores de computadoras

¿Por qué en el capítulo anterior mencioné que la computadora es una máquina increíblemente veloz, pero por sí sola no sabe hacer nada?:

Porque una computadora por sí sola podría estar encendida por muchos días y no realizaría nada, solo consumiría electricidad y tu dinero.

La computadora necesita de software adicional (aplicaciones) para que tenga una utilidad, para que ejecute tareas.

El software que se instala en las computadoras es desarrollado por un grupo de personas a quienes se les conoce como programadores de computadoras. Los programadores de computadoras aprendieron algún lenguaje de programación para comunicarse con el sistema operativo y el procesador de las computadoras. Todas las aplicaciones o juegos que se instalan en las computadoras, en los teléfonos inteligentes, en los relojes inteligentes y en los televisores están desarrollados en algún lenguaje de programación (de los que vas a aprender en este libro) y creado por uno o varios programadores de computadoras.

Así como una persona de México si quiere comunicarse con una persona de China, tiene que aprender mandarín para poder comunicarse con la persona de China.

Entonces para que un programador pueda crear un sistema o una aplicación para una computadora debe conocer al menos un lenguaje de programación (existen varios leguajes de programación), y de esto precisamente se trata este libro.

A lo largo de las siguientes páginas vas a aprender cómo hacer aplicaciones para computadoras para dos sistemas operativos: Windows y macOS.

¿Qué lenguajes vas a aprender?

Elegí dos lenguajes de programación JavaScript y Swift principalmente porque son fáciles de instalar en una computadora. Otros lenguajes requieren de instalaciones y configuraciones que preferí evitar para dar prioridad a los temas de la programación de computadoras.

JavaScript (JS)

Es un lenguaje de programación de fácil acceso, es ampliamente conocido como lenguaje para páginas web. Es importante mencionar que JavaScript no es lo mismo que el lenguaje Java son dos lenguajes diferentes, aunque tienen elementos similares.

Este lenguaje es multiplataforma, esto quiere decir que se puede ejecutar en Windows, macOS y Linux. Así que, si tienes una computadora con macOS también puedes aprender a desarrollar programas con JavaScript.

Swift

Es un lenguaje de programación creado por Apple para desarrollar aplicaciones en los iPhone, Apple Watch y Apple TV y en las computadoras con sistema operativo macOS. Swift es fácil de aprender y es lo suficientemente poderoso como para hacer grandes aplicaciones complejas.

Para hacer las prácticas con Swift yo recomiendo que uses una computadora de la marca Apple o un iPad (iPad Pro, iPad Air, iPad, iPad mini).

Swift se ejecuta también en Linux, y sin duda es cuestión de tiempo para que exista una versión para el sistema operativo windows.

Vale la pena mencionar que estuve a punto de incluir Python como un tercer lenguaje en el libro, si tienes curiosidad puedes instalarlo en tu computadora (con Windows o con macOS porque Python es multiplataforma) y podrás utilizar a Python para ejecutar los ejercicios y la vez aplicarás el conocimiento de los conceptos de este libro. Si logras aprender Python aplicando los conceptos de este libro por sí solo podrás aprender cualquier lenguaje de programación.

Importante

A menudo vas a leer que cuando hago referencia al sistema operativo, un lenguaje de programación, editor de textos, etc., en general todo el software tiene una versión. Por ejemplo:

Windows 10. Hace referencia a que es la versión 10 de windows.

macOS Catalina 10.15.45. Los desarrolladores de Apple bautizan con un nombre sus sistemas operativos y adicionalmente agregan los números de las versiones que en este caso es el 10.15.45, que quiere decir que es la versión 10, y los demás números se asignan cuando hay cambios, mejoras o corrección de errores.

Swift 5.0. Se refiere a la versión 5 del lenguaje, que es la versión que voy a utilizar en los ejercicios.

Sublime Text 3.2.2. Es la versión del procesador de textos que voy a utilizar para desarrollar los ejercicios.

También quiero agregar y aclarar que la actividad de escribir programas para las computadoras también se le llama codificar o escribir código, y al archivo con las instrucciones escritas en algún lenguaje de programación también se le llama código.

Hago la precisión porque este término lo van a encontrar en la mayoría de la documentación de los lenguajes y porque más adelante voy a mencionar el término código cuando haga referencia al archivo con las instrucciones que escitas en JavaScript o Swift.

Cuando leas:

•Código = instrucciones de un programa en algún lenguaje de programación

•Ejecuta el código, quiere decir: ejecuta el programa

•Tienes que corregir tu código, quiere decir: tienes que corregir tu programa

Recomendaciones importantes

Recomiendo que elijas un lenguaje para aprender en función de la computadora que tengas.

No pretendas aprender los dos lenguajes al mismo tiempo porque se podrá complicar tu aprendizaje. Pero si no se te complica… ¡adelante! ¡Te felicito!

En mi opinión, la clave para aprender a programar es:

Comprender los conceptos, los alcances y los límites de los componentes del lenguaje, luego intenta aplicarlos en algún lenguaje de programación.

La razón por la que en el libro se abarcan dos lenguajes de programación es para que observes cómo se aplican los conceptos aprendidos en los lenguajes, veas que existen variantes mínimas, y si te animas a aprender otro lenguaje apliques lo aprendido y ubiques las variantes.

Capítulo III

Preparación del espacio de trabajo

¿Qué necesitas para continuar con este libro?

Para realizar las prácticas necesitas una computadora con sistema operativo Windows, macOS, Linux o incluso puede ser en un iPad en la que se pueda instalar y ejecutar la App que se llama Swift Playgrounds.

Vas a requerir también una conexión de internet y al menos 5GB de espacio en tu disco duro para descargar algunas aplicaciones y para algunas prácticas.

También voy a necesitar de ti la mejor actitud , un poco de curiosidad, tolerancia a la frustración y que te aprendas algunas palabras en inglés (no es necesario saber inglés), ya que los lenguajes están en ese idioma, pero en verdad te digo son solo algunas palabras.

Importante

Antes de comenzar, es necesario que el equipo donde vayas a trabajar de preferencia sea tuyo o si es de alguien más, que tengas privilegios de administrador o en su caso, que tengas permisos para instalar nuevo software, porque de lo contrario te limitará o negará la instalación de los programas que necesitarás para las prácticas.

Preparación del espacio de trabajo en la computadoras

Computadoras con sistema operativo Windows

Para identificar si tienes una computadora con el sistema operativo Windows, la pantalla se asemeja a la siguiente:

Para las prácticas en las computadoras con Windows, voy a utilizar google Chrome, por lo que hay que asegurarse de que exista esta aplicación en tu computadora.

En caso de que no tengas instalado google chrome puedes ejecutar internet Explorer de tu computadora para conectarte a internet y buscar lo siguiente:

Instalar Chrome en Windows

Después, identificar en los resultados de la búsqueda: Navegador web google chrome

Hay que hacer click sobre el texto y se mostrará la página de google chrome en internet.

Ahora hay que buscar en la página una liga que diga:

“Descargar Chrome”. Haz click para descargar chrome y luego instálalo en el equipo.

También vas a necesitar un editor de textos para escribir los programas con JavaScript

De entre todas las aplicaciones para editar texto elegí SublimeText. Es una aplicación ligera, fácil de usar y lo mejor de todo es gratis!

Para instalar SublimeText hay que abrir el navegador chrome que ya debes tener instalado y buscar en google:

Si lo vas a instalar en una computadora con Windows, googlea lo siguiente:

Sublime Text para Windows

Y encontrarás un resultado parecido o igual a este. Haz click sobre el texto en azul (Download – Sublime Text) y procede a instalar SublimeText en tu computadora.

¡Listo! ya tienes lo necesario para comenzar a programar con JavaScript en tu computadora con Windows.

Computadoras con sistema operativo macOS y en iPads

En las computadoras con macOS y en las iPads se instalará una aplicación que se llama Swift Playgrounds.

Swift Playgrounds es una App (aplicación) que solamente se ejecuta en computadoras con macOS y en los iPads, y funciona como editor de textos para escribir los programas con el lenguaje Swift.

Si no lo tienes instalado Swift Playgrounds hay que ejecutar la Apple Store y buscar la aplicación.

Localiza e instala la aplicación Swift Playgrounds siguiendo los pasos de descarga e instalación.

Este procedimiento funciona para una laptop, para una computadora con macOS o con una iPad, así que, si ya lo instalaste ya estás listo para hacer los ejercicios con el lenguaje Swift usando Swift Playgrounds.

Programar en JavaScript en computadoras con sistema operativo macOS

También es posible que en las computadoras con macOS ejecutar los programas de JavaScript, para ello será necesario que instales en tu equipo las versiones de Chrome y Sublime Text para macOS.

Para instalar Sublime Text.

Para buscar la versión a instalar en una macOS googlea lo siguiente:

Sublime Text para macOS

Y encontrarás un resultado parecido o igual a éste.

Haz click sobre el texto en azul (Download – Sublime Text )y procede a instalar SublimeText en tu computadora.

La liga te llevará a la página de descarga de Sublime Text

Haz click sobre el texto azul que dice OS X y procede a descargar el archivo para instalar Sublime Text en tu computadora.

Para instalar Chrome

Busca la versión de Chrome googleando lo siguiente:

Te aparecerán varios resultados, elige el que menciona la descarga:

Haz click sobre el texto en azul que dice “Descarga ahora” y éste te llevará a la página de descarga de chrome.

Antes de descargar el programa verifica que la versión de Chrome sea para macOS.

Cuando finalices de instalar Sublime Text y Chrome en tu computadora con macOS ya estas listo para programar con JavaScript.

Crear carpetas para almacenar los ejercicios

Ahora bien, en el escritorio o pantalla principal de tu computadora vas a crear una carpeta con el nombre: Ejercicios. En esta carpeta es donde vas a grabar los programas que desarrollarás con el libro.

En una computadora con macOS

Haciendo click y manteniendo pulsada la tecla “control” sobre un espacio libre, se selecciona la opción de: Nueva Carpeta, como se muestra en la imagen.

Una vez generada cambia el nombre para que se llame: Ejercicios

En una computadora con Windows.

Utilizando el botón alterno del mouse haz click sobre alguna parte libre de la pantalla y elige nuevo, luego Carpeta

Y al igual como lo hiciste para una computadora con macOS, cambia el nombre a la carpeta por: Ejercicios

¡Ahora ya tienes todo listo para comenzar!.

Capítulo IV

Primeros conceptos de la programación de computadoras

En las próximas páginas voy a explicar los primeros conceptos de la programación de computadoras. Esto quiere decir que si logras entender estos conceptos serás capaz de aprender cualquier lenguaje de programación. Me atrevo a afirmar lo anterior porque la mayoría de los lenguajes de programación tienen como base los mismos componentes y conceptos.

Es como cuando aprendes a usar un control remoto de una tv y después cambias de marca de tv y el nuevo control remoto es distinto al que tenías, aún así, no te toma tiempo aprender a usarlo, porque ya sabes las cosas que se puede hacer con el control remoto: encender tv, apagar tv, cambiar de canal, subir volumen, bajar volumen, etc.

Importante

Las reglas solamente hay que entenderlas, aún no trates de escribir un programa, ya que lo harás al concluir con la explicación de las reglas. Sé paciente .

Reglas generales

Son una colección de reglas que he identificado y seleccionado, porque son características que aplican en general a la mayoría de los lenguajes de programación. Hago la aclaración porque no encontrarás en la documentación de los lenguajes un apartado de reglas generales. Incluso si lo googleas encontrarás resultados, pero distintos a los que aquí presento.

Regla 1. Case sensitive

Esta es una característica de muchos lenguajes y se refiere a que en la escritura de las instrucciones el lenguaje trata de manera diferente las letras mayúsculas y las letras minúsculas.

Ejemplo: la instrucción del lenguaje Swift: print() que sirve para mostrar información en la pantalla.

No es lo mismo escribir print() que PRINT() o Print().

Para el lenguaje y para el procesador son tres cosas diferentes. De tal forma que si escribes PRINT() el programa no se ejecutará y enviará un mensaje de error.

Resumen:

Característica | JavaScript | Swift
Case sensitive | sí | sí

¿Cómo lo supe?

Leyendo la documentación del lenguaje, pero también puedes recurrir al truco que casi siempre funciona: googlear la pregunta:

Regla 2. Uso de caracter fin de línea

Otra característica es el uso de un caracter (letra, número o símbolo) para indicar el final de una línea de cada instrucción que se le da al procesador.

Ejemplo en lenguaje JavaScript:

Nota: Todo el texto dentro de los paréntesis lleva comillas dobles.

JavaScript usa el caracter ; (punto y coma) para indicar el fin de una línea, pero no lo exige, es opcional, sin embargo, lo voy a usar en los ejercicios por ser una buena práctica.

document.write() es una instrucción de JavaScript que hace lo mismo que print() en Swift, mostrar información en la pantalla. En el ejemplo se muestran tres líneas de instrucciones y cada línea se termina con un símbolo ; (punto y coma).

Ejemplo en Swift:

Swift no usa un símbolo de fin de línea, solo se requiere que la siguiente instrucción se escriba en la siguiente línea. Pero también puedes utilizar el punto y coma si en una línea quieres escribir dos instrucciones:

Resumen:

Característica | JavaScript | Swift
Caracter para indicar el fin de una línea de comando | El punto y coma (;) es opcional | No tiene. Solo hay que dar [Enter]

Regla 3. Orden en la ejecución de las instrucciones

Aunque esta regla parezca obvia, decidí incluirla. Es la forma en que el procesador ejecuta las instrucciones. No conozco todos los lenguajes de programación que existen en la actualidad, pero casi puedo asegurar que todos ejecutan las instrucciones de forma secuencial a partir de donde se indica el inicio del programa:

•De arriba para abajo

•Una línea después otra

•De izquierda a derecha

Es la misma secuencia que haces cuando lees un documento.

Ejemplo:

Primero se ejecuta : print(“Hola”)

Segunda línea : print(“Bienvenido a las prácticas”)

Tercera línea : print(“Este es un ejemplo con Swift”)

Resumen:

Característica | JavaScript | Swift
Orden en la ejecución de las instrucciones | De arriba para abajo, una línea después de otra, de izquierda a derecha | De arriba para abajo, una línea después de otra, de izquierda a derecha

Regla 4. Incluir comentarios en los programas

Cuando se desarrollan programas surge la necesidad de incluir comentarios, aclaraciones, descripciones o una explicación, para que otra persona (o incluso tú mismo) pueda entender el programa. Lo importante de los comentarios es que el procesador no lo ejecuta, no le hace caso.

JavaScript:

Se pueden hacer comentarios en una sola línea usando al principio del comentario dos caracteres de diagonales //

Se pueden hacer comentarios de varias líneas usando los caracteres /* para iniciar los comentarios y */ para marcar el fin de los comentarios

Ejemplo con JavaScript

Swift

Utiliza la misma manera que JavaScript hace comentarios

Importante

Es importante que tengas presente que todo lo que esté identificado como comentario no se ejecuta. Esto quiere decir que si a una línea de instrucción le agregas al inicio // automáticamente se convierte en un comentario y el lenguaje no lo ejecuta. Lo mismo pasaría si a un bloque de código queda dentro de /* … */ todo ese bloque no se ejecutaría.

Resumen:

Característica | JavaScript | Swift
Comentarios | // una línea de comentarios/**/ para bloque de comentarios | // una línea de comentarios/**/ para bloque de comentarios

Regla 5. Comandos o instrucciones para indicar el inicio y el fin del programa

En varios lenguajes se utilizan ciertas instrucciones para indicarle al procesador que a partir de allí debe comenzar a ejecutar cada una de las instrucciones.

Swift

Este lenguaje no tiene ninguna instrucción especial, el procesador comienza a ejecutar a partir de la primera instrucción que encuentre en el archivo principal del programa.

JavaScript.

En el caso de JavaScript sí hay que explicar algunas cosas importantes:

•Las instrucciones del lenguaje JavaScript deben estar dentro de un archivo de tipo HTML.

•HTML es un lenguaje que se utiliza para el desarrollo de las páginas web. Aunque existen programadores que le llaman pseudolenguaje, porque para ellos HTML no califica para ser un lenguaje.

Importante

No te preocupes, no estoy agregando otro lenguaje más, lo único que voy a utilizar de HTML en este momento son las marcas de inicio y de fin del programa. Puedes escribir estas instrucciones en un archivo solo bastará copiarlo y pegarlo en tus programas. Más adelante lo voy a explicar en los primeros programas.

•HTML tiene sus propias instrucciones para indicar el inicio y el fin del programa.

Las instrucciones de HTML para indicar el inicio son:

<!DOCTYPE html>

<html>

La instrucción para indicar el fin del programa es:

</html>

Ejemplo:

Este es un archivo HTML en donde solamente se está marcando el inicio y el fin del programa. En este caso el programa no hace nada porque solo se especificaron las marcas de inicio y de fin.

•JavaScript tiene también instrucciones para indicar el inicio y el fin (un bloque) de las instrucciones de su lenguaje.

La instrucción para indicar el inicio es: <script>

La instrucción para indicar el fin del programa es: </script>

Ejemplo:

Aquí aparecen las marcas de inicio y de fin de las instrucciones de JavaScript. Para escribir instrucciones en este ejemplo tendría que ser en las líneas 5, 6 y 7, para que queden dentro de las marcas de inicio y fin.

•Al juntar las instrucciones de HTML y JavaScript queda de la siguiente manera:

En este ejemplo se observa que primero van las marcas de HTML y dentro van las marcas de inicio y fin de JavaScript.

Entonces las instrucciones de JavaScript se podrían escribir a partir de la línea 5 a la línea 9.

Ésta va a ser la estructura inicial de muchos de los ejercicios con JavaScript.

Si es necesario, puedes volver a repasar los conceptos. Es de vital importancia que los comprendas.

Capítulo V

Escribir, grabar y ejecutar programas

Para que puedas escribir y ejecutar los ejercicios del libro, es necesario que aprendas a usar las aplicaciones que instalaste para desarrollar y ejecutar los programas en JavaScript y Swift. En este capítulo vas a aprender a utilizar Sublime Text y Swift Playgrounds.

Ejecutar un programa escrito en JavaScript con sistema operativo Windows

Voy a explicar cómo se usa JavaScript para decirle al procesador que ejecute un programa.

Pon mucha atención, porque este proceso lo voy a estar repitiendo a lo largo de todos los ejercicios.

Escribir un programa en JavaScript

1.Las instrucciones de JavaScript deben estar en un archivo de texto de tipo HTML.

Para generar el archivo HTML vas a usar la aplicación Sublime Text instalada en tu computadora. Entonces ejecuta Sublime Text y escribe el ejemplo de la siguiente imagen.

Importante

En el ejemplo puedes notar que el programa está hecho con sangrías usando la tecla de tabulación (tab). Esto es una práctica que ayuda a que el programa se lea mejor, incluso ayuda a detectar errores.

Por ejemplo: ayuda a saber si en bloques de instrucciones del programa tiene las instrucciones de inicio y fin.

El ejercicio tiene dos bloques de instrucciones:

•el primero es el de <html> y </html>

•el segundo es <script> y </script>

Visualmente es mas fácil identificar donde inician y terminan los bloques de instrucciones.

Puedes escribir tu programa sin las sangrías, si no tienes algún error se ejecutará exactamente igual que en el ejemplo. pero tendrás algunos inconvenientes cuando desarrolles programas de cientos o miles de líneas.

2.Graba el archivo en tu computadora

Una vez que termines de escribir el programa procede a guardar el archivo en la carpeta de ejercicios que creaste previamente. Para hacer esto:

Selecciona la opción File del menú superior y después la opción Save As…

A continuación, escribe el nombre del archivo con el que se va a grabar el programa. En este caso es: ejercicio01.html

Es de vital importancia que las 5 letras con las que termina el nombre del programa sea .html porque de no hacerlo así no podrá ser ejecutado (recuerda que el lenguaje JavaScript se ejecuta dentro del lenguaje HTML)

Ahora que ya tienes grabado tu primer programa aprenderás a ejecutarlo y ver los resultados de la ejecución.

Ejecutar un programa en JavaScript

3.Primero localiza tu programa en la computadora.

Busca y abre la carpeta que se llama Ejercicios que está en el escritorio o pantalla principal.

Dentro de la carpeta podrás ver el archivo ejercicio01.

El siguiente paso es: con el botón alterno del mouse haz click sobre el archivo ejercicio01.html y aparecerá un menú en el que deberás seleccionar la opción: Abrir con, y luego google chrome.

La acción de abrir el archivo del programa con google chrome es la forma en que el procesador recibe las instrucciones del programa para ser ejecutado.

4.Revisa los resultados de la ejecución del programa.

La ejecución se muestra en una pantalla de tu navegador chrome.

¡Listo! este es tu primer programa en JavaScript que escribes y ejecutas.

No te preocupes por los símbolos “raros” que aparecen en lugar de los acentos, mas adelante lo voy a explicar y aprenderás cómo evitar esos símbolos y hacer que aparezcan los acentos.

Si como resultado de la ejecución del programa en tu computadora aparece vacía, entonces hay un error, para corregirlo abre el archivo ejemplo01.html con Sublime Text y revisa cada instrucción que escribiste y encontrarás el error, por favor corrígelo, grábalo y ejecútalo nuevamente.

Para abrir un archivo con Sublime Text: primero ejecuta sublime, luego: Haz click sobre la opción File, luego utiliza la opción Open File para para abrir ejemplo01.html

Escribir un programa con Swift Playgrounds

Swift tiene su propia herramienta para escribir las instrucciones y para solicitar al procesador que los ejecute.

La herramienta es Swift Playgrounds. Esta herramienta la debes instalar en tu computadora (solo para macOS) o en tu iPad.

1.Primero hay que ejecutar Swift playgrounds en tu computadora o en tu iPad si fuera el caso.

2.Crea un nuevo archivo de programa.

Para indicarle a Swift que vas a crear un programa desde cero, haz click sobre el ícono que dice En blanco

3.Escribe tu programa.

Después de elegir el nuevo programa en blanco, aparecerá una pantalla con un espacio en blanco para que escribir tu programa como en el siguiente ejemplo:

No te preocupes de grabar tu programa, en este caso, Swift lo hace automáticamente .

4.Ejecuta tu programa.

Para ejecutar el programa, se utiliza la opción que dice Ejecutar mi código en la parte inferior derecha.

El resultado de la ejecución de las instrucciones print() se muestran al costado derecho de cada instrucción. print() es la forma mas básica(y poco atractiva) para mostrar información en la pantalla.

Capítulo VI

La analogía del robot

Estás por escribir tus primeros programas de computadoras. Pero antes de hacerlo, y sobre todo para facilitar mi explicación y la comprensión de los próximos conceptos voy a recurrir a una analogía, para lo cual voy a requerir que hagas un esfuerzo de imaginación.

La analogía

La programación de computadoras consiste en decirle al procesador lo que tiene que hacer, y como ya mencioné que el procesador es un componente que ejecuta tareas y operaciones con extrema rapidez, entonces, imagina al procesador como un robot que “vive” dentro de la computadora.

Este robot tiene consigo algunas herramientas para ejecutar su trabajo:

Una ventana

Tiene una ventana de cristal en la que puede escribir, y todo lo que allí escribe o dibuja el usuario de la computadora sí lo puede ver. Esto es la pantalla donde se muestran los resultados de los programas.

Mueble organizador

Con repisas y gavetas donde almacena datos. Esto es la memoria RAM de la computadora.

Una pantalla

Donde recibe las instrucciones que tiene que ejecutar. Esto es el archivo donde se escribió un programa.

Lista de habilidades

Tiene una gran lista de habilidades que puede ejecutar, algunas de estas son:

•Matemáticas

•Numéricas

•De manejo de fechas

•De manejo de textos

•Etc.

En los siguientes capítulos vas a aprender a darle instrucciones al robot y también comprenderás cómo el robot usa sus herramientas para ejecutar las instrucciones que le vas a indicar.

Importante

Cuando comiences a escribir tus programas debes tener presente que el robot de la computadora, aunque es muy rápido, es una máquina que no piensa, no intuye y no hace nada si tu no le dices lo que tiene que hacer, cómo lo tiene que hacer y cuándo lo debe hacer.

Si alguna vez escuchaste el término inteligencia artificial (IA) y lo asociaste a la inteligencia de la computadora, pues, la verdad es que no es así, porque la IA es un conjunto de programas desarrollados por un grupo de programadores que le dicen al robot que tiene que tomar decisiones y ejecutar acciones basados en datos almacenados.

Capítulo VII

La programación de computadoras

Voy a comenzar a explicar conceptos y elementos para la programación, por lo que es indispensable que tengas presente y apliques todo el tiempo los conceptos de los capítulos V y VI.

Tipos de datos

El robot almacena información y hace cálculos, y para poder hacer cálculos es necesario saber qué tipo de dato es el que se está almacenando, para esto existe una clasificación de tipos de datos en los lenguajes de programación.

En otras palabras, el robot necesita saber qué tipo de dato es lo que va a guardar en su mueble organizador.

¿Por qué es necesario conocer el tipo de dato?

Porque el robot no lo sabe si no se lo indicas, y lo necesita saber, porque por ejemplo cuando guarda un número (en su mueble organizador) podrá hacer operaciones matemáticas, y si el dato es un texto no puede hacer operaciones matemáticas pero sí podrá concatenarlo (pegar dos textos) con otro texto.

El robot guarda datos y dichos datos deben estar clasificados de acuerdo con su tipo.

Tipos de datos primitivos

En ocasiones los manuales hacen referencia a esta clasificación de datos como tipos de datos primitivos, esto es porque existen otros tipos de datos mas complejos y también porque los lenguajes permiten al programador diseñar y generar su propios tipos de datos.

Los tipos de datos primitivos que regularmente existen en los lenguajes de programación son:•Texto•Número entero•Número decimal•Boleano

Tipo texto

Este tipo de datos es para especificar que la información que se almacena es de tipo texto (parece obvio pero no lo es para las computadoras). Entonces, si un número se clasifica como tipo texto no se podrá usar para hacer operaciones matemáticas. Los valores o información de tipo texto por lo regular usan las comillas dobles o simples para indicar que lo que está dentro de las comillas es un valor de tipo texto.

Ejemplo de valores de tipo texto:“hola”“Esto es un ejemplo de un valor tipo texto”“343”“------------------------------““Me gustan los emojis ”

Recuerda que cada vez que el robot encuentra un dato cuyo contenido viene entre dos comillas lo considerará como texto.

También se puede decir que las comillas es la forma en que el programador le indica al robot que un dato es de tipo texto.

Importante

El robot considera un String como una lista de letras, números y símbolos (caracteres) y cada caracter tiene una posición (índice) y por lo regular la primera posición es cero. Debes memorizar esta regla porque es algo te servirá mas adelante.

Ejemplo:

Ahora bien, cada lenguaje le puede llamar al tipo de dato de una forma diferente. Para este ejemplo los dos lenguajes le llaman de la misma manera.

Tipo de dato | Swift | JavaScript
Texto | String | String

¿Te preguntarás porqué le llaman String?

Porque en las computadoras cada letra es independiente y tiene un valor, y un texto se representa como una cadena(string) de caracteres (letras).

Si usas JavaScript el robot puede usar una variable tipo texto para hacer operaciones aritméticas siempre y cuando el valor almacenado en la variable sea un número pero encerrado en comillas. Esto solo pasa con JavaScript, no recomiendo usarlo en proyectos grandes porque puede volver confuso el programa.

Tipos numéricos

Los tipos de datos numéricos pueden estar clasificados en:

•Enteros

•Con punto decimal

•Doble (doble precisión)

No todos los lenguajes hacen esta su clasificación, por lo que si vas a aprender un nuevo lenguaje debes investigar en la documentación cómo están clasificados los tipos de datos numéricos.

Enteros

Ejemplos de valores tipo entero:134567900000

Los tipos entero se caracterizan por:

•No tienen decimales

•No usan la coma (,) para separar los miles

•No usan un símbolo como $

JavaScript no tiene tipo Entero, tiene el tipo Number que se usa para valores enteros.

Swift sí tiene tipo Entero, y le llama: Int

Decimal

Ejemplo de valores con punto decimal:10.089.0978.98124903.01

Los valores con punto decimal se caracterizan por:

•Tienen el punto decimal

•No usan separador de miles (,)

•No usan símbolos por ejemplo %

JavaScript usa el mismo tipo Number para valores con punto decimal. En cambio, Swift sí tiene el tipo para valores decimales y le llama Float

Doble

Ejemplo de valores tipo Doble:14440.00003444232.0090901249903.000322

Los valores de tipo Doble son iguales al tipo decimal pero el tipo doble se usa para valores mas grandes y mayor precisión en el punto decimal.

JavaScript usa el tipo Number para valores tipo Doble. Swift por su parte sí tiene un tipo para valores Doble y le llama Double

Resumen:

Tipo de dato | Swift | JavaScript
Entero | Int | Number
Decimal | Float | Number
Doble | Double | Number

Tipo boleano

Para clasificar y almacenar valores de Verdadero o Falso se usa el tipo boleano, como los lenguajes están desarrollados en inglés los valores en este caso son: True (verdadero) y False (falso)

Los valores de tipo boleano se caracterizan por:

•Solo permiten dos valores (True, False)

•No son de tipo texto

JavaScript sí permite el tipo boleano y le llama Boolean, Swift por su parte le llama Bool.

Tipo de dato | Swift | JavaScript
Boleano | Bool | Boolean

Mas tipos de datos.

Adicional a los tipos de datos ya explicados, cada lenguaje provee tipos de datos adicionales para facilitar y potenciar el uso del lenguaje.

Otros tipos de datos en JavaScript

•Nulo (null)

Se utiliza para indicar que no se cuenta con un valor, significa también vacío, o sin valor.

•Sin definir (undefined)

Se utiliza cuando no se tiene definido el tipo de dato de una variable.

Otros tipos de datos en Swift

•Caracter (Character).

Swift incorpora un tipo de dato para clasificar caracteres, es decir letras, a diferencia del tipo texto el tipo caracter hace referencia a una sola letra, número o caracter especial.

Importante

Es de vital importancia que comprendas que el procesador de la computadora necesita clasificar la información para almacenarla y para hacer operaciones, por esta razón los lenguajes de programación proveen clasificadores de datos a los que se llaman tipos de datos.

Конец ознакомительного фрагмента.

Текст предоставлен ООО «ЛитРес».

Прочитайте эту книгу целиком, купив полную легальную версию на ЛитРес.

Безопасно оплатить книгу можно банковской картой Visa, MasterCard, Maestro, со счета мобильного телефона, с платежного терминала, в салоне МТС или Связной, через PayPal, WebMoney, Яндекс.Деньги, QIWI Кошелек, бонусными картами или другим удобным Вам способом.