universidad abierta y a distancia de mexico · 2019-05-29 · universidad abierta y a distancia de...
TRANSCRIPT
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
1
Investigación documental y de campo
Informe final
Tema: Lenguajes de programación
Nombre del aspirante: Mónica Alejandra Damián Zamora
División y/o Aula: División de Ciencias Exactas, Ingenierías y
Tecnológicas (CEIT)
Grupo: PROPE_1902-DCEIT-047
Nombre del Monitor(a): Noemí Navarrete Aguirre
Dirección del blog: https://myunadm.home.blog/
Fecha de entrega: 29 de mayo de 2019
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
2
Índice
I.-Introducción .................................................................................................................................... 3
II.-Antecedentes del tema .................................................................................................................. 4
III.-Justificación ................................................................................................................................... 5
IV.-Objetivos ....................................................................................................................................... 6
Objetivo general ............................................................................................................................. 6
Objetivos específicos ...................................................................................................................... 6
V.-Hipótesis ......................................................................................................................................... 7
VI.-Bases teóricas ................................................................................................................................ 8
VII.-Metodología ............................................................................................................................... 11
VIII.-Resultados ................................................................................................................................. 12
PYTHON ......................................................................................................................................... 14
PHP ................................................................................................................................................ 16
HACK ............................................................................................................................................. 17
C++ ................................................................................................................................................. 18
JAVASCRIPT ................................................................................................................................... 18
JAVA .............................................................................................................................................. 19
GO ................................................................................................................................................. 20
SWITF ............................................................................................................................................ 21
ERLANG ......................................................................................................................................... 22
IX.-Conclusiones y recomendaciones ............................................................................................... 23
X.- Bibliografía .................................................................................................................................. 24
XI.-Anexos ......................................................................................................................................... 25
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
3
I.-Introducción
El presente informe final habla acerca del tema Lenguajes de Programación, la
finalidad de la investigación que a continuación presentaré es informar al lector acerca de
las características y funcionalidades de algunos de los lenguajes de programación que se
utilizan para hacer posible algunas aplicaciones y sitios web de entretenimiento como
YouTube, Facebook y WhatsApp.
El tema seleccionado para desarrollar mi investigación documental es de suma
importancia para las personas interesadas en cursar alguna carrera enfocada al desarrollo
de software o programación, ya que es parte fundamental de sus éxitos profesionales
conocer, aprender y manejar diversos lenguajes de programación.
El objetivo principal de este trabajo es saber acerca de los lenguajes de
programación en que están basadas las aplicaciones que mencione anteriormente, ya que
para las personas que les gustan la programación de software resulta interesante aprender
cosas nuevas y aplicar sus conocimientos adquiridos en desarrollar aplicaciones o
programas ya sea para su vida laboral o personal e incluso también para las personas que
apenas van iniciando la programación, este tema les será de utilidad.
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
4
II.-Antecedentes del tema
Los lenguajes de programación que existen en la actualidad son diferentes pero a la
vez algunos muy similares entre sí y cada uno están desarrollados para cumplir con un
propósito específico.
Remontándonos a los años 40’s Charles Babbage diseñó una máquina
mecánica para realizar cálculos matemáticos llamada la maquina
analítica, años más tarde una mujer de nombre Ada Lovelace desarrollo
un algoritmo para utilizarlo en la maquina analítica de Babbage, ella es
considerada como la primer mujer programadora en la historia.
Posterior a esto en los cincuenta, nacieron los primeros tres lenguajes de
programación modernos: FORTRAN (1955), LISP (1958) y COBOL (1959).
(nasheli, 2014)
Años después y hasta la fecha aparecieron más lenguajes de programación, nos
centraremos especialmente en conocer el año en que aparecieron solamente algunos
lenguajes en específico ya que de ahí se centra nuestra investigación: C (1972), C++ (1980),
Erlang (1986), Python (1991), Java, JavaScript y PHP (1995), Go (2009), Swift y Hack (2014).
La red social “Facebook” fue fundada en febrero del 2004, la popular plataforma de
vídeos “YouTube” fue fundada el 14 de febrero de 2005, mientras que la principal aplicación
usada para mensajería instantánea en teléfonos inteligentes “WhatsApp” estableció sus
inicios en la red el 24 de febrero de 2009, resultó una gran coincidencia el mes, ¿será por
eso que son unas de las más populares en la actualidad?, eso no se sabe, lo que si tenemos
en cuenta es el uso diario que se le da a estas tres plataformas:
Tan solo nuestro país ocupa el tercer lugar en el mundo en ver más vídeos de
YouTube, 66.5 millones de mexicanos son usuarios de Facebook, mientras que
WhatsApp cuenta con 65.1 millones de usuarios.
(Redacción, 2017)
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
5
III.-Justificación
De manera general, el programador maneja diversos lenguajes de programación y
empieza desde el más sencillo, con el que siente que aprende más, o con el que se identifica,
hasta terminar de manejar el lenguaje que considere es el popular, y digo considere porque
en si no existe un lenguaje de programación favorito, cada uno cumple un propósito
específico y depende mucho el objetivo del programa , para un programador su lenguaje
favorito puede ser Python, pero para otro será JavaScript, todo dependiendo de muchos
factores.
Actualmente es importante conocer dos o tres lenguajes de programación actuales,
ya que las diversas aplicaciones modernas así lo requieren, es decir un programador o
conocedor de los lenguajes de programación está en constante estudio, actualizando sus
conocimientos debido a las diversas tecnologías que van surgiendo de manera constante.
Aprender a programar es esencial si te vas a dedicar o ya te estas dedicando a eso
en tu vida laboral, para eso se debe adentrar a los lenguajes de programación.
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
6
IV.-Objetivos
Objetivo general
Identificar los lenguajes de programación que por sus características generales han
marcado su uso en las diversas aplicaciones que maneja de manera cotidiana el ser humano
como la mensajería instantánea y las redes sociales.
Objetivos específicos
Identificar los lenguajes de programación en que están basados las redes sociales
“Facebook” y “WhatsApp”, así como la plataforma de vídeos “YouTube”.
Definir las características, semejanzas y diferencias de los lenguajes de
programación en que están basados las redes sociales “Facebook”, “WhatsApp” y
de la plataforma de vídeos “YouTube”.
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
7
V.-Hipótesis
Las grandes aplicaciones que utilizamos ya sea para nuestro entorno laboral, social o de
entretenimiento basan su funcionamiento en diversos lenguajes de programación, no obstante las
grandes compañías que las administran nunca comentan la manera en que están administrando sus
bases de datos, las funciones de los servidores y mucho menos los lenguajes de programación que
están utilizando debido a la seguridad que deben brindarle a los millones de usuarios que se dan de
alta para utilizar sus servicios.
Los lenguajes de programación juegan un papel fundamental en las diversas
aplicaciones que utilizamos; y el presente proyecto de investigación pretende dar a conocer
en que lenguajes de programación están basadas las aplicaciones: red social Facebook,
plataforma de videos YouTube y la aplicación de mensajería instantánea WhatsApp, sea verdad o
no, según los resultados de la investigación, se cumplirá con el objetivo de que el lector
amplié sus conocimientos y aprenda más acerca de diversos lenguajes de programación.
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
8
VI.-Bases teóricas
Marco teórico
El uso de las diversas aplicaciones o plataformas que existen en la actualidad han
estado marcando impresionantemente nuestro estilo de vida, nuestra manera de aprender,
la forma de trabajar, la diversión en nuestros ratos libres, entre otros aspectos importantes.
Las generaciones de niños de hoy “nacen con el chip” como comúnmente decimos
y se les facilita de manera increíble el uso, por ejemplo, de un celular inteligente para ver
sus vídeos favoritos. Generaciones atrás hemos ido aprendiendo y desaprendiendo el uso
de todos los gadgets o dispositivos tecnológicos que van saliendo al mercado y
adaptándonos de manera gradual al cambio en el uso de diversas tecnologías de la
información y comunicación como el correo electrónico, los foros de participación, los
blogs, las redes sociales, las plataformas educativas, las plataformas de ocio, los grupos de
chats, etc.
Pero el usuario final solo es consumidor, no tiene la idea de cómo o qué tipos de
tecnologías en cuanto a lenguajes de programación se desarrollan las diversas aplicaciones
o plataformas que utiliza en su día a día, llámese la plataforma de vídeos “YouTube”, la gran
red social “Facebook” o la aplicación de mensajería instantánea “WhatsApp”.
Los lenguajes de programación juegan un papel fundamental en las diversas
aplicaciones que utilizamos; y el presente proyecto de investigación pretende dar a conocer
en que lenguajes de programación están basadas las principales aplicaciones mencionadas
anteriormente, con el fin de que el lector amplié sus conocimientos acerca de ellos.
Bases teóricas
Definición de programa y lenguaje de programación
Un programa informático o programa de computadora es una secuencia de
instrucciones, escritas para realizar una tarea específica en una computadora.
Según (Catalinas, 2002) una aplicación informática también recibe el nombre de
paquete informático, y es unión o conjunto de uno o más programas enlazados o
relacionados entre sí, junto con la documentación generada durante el proceso de
desarrollo de dicha aplicación. Un lenguaje de programación es una notación o conjunto de
símbolos y caracteres combinados entre sí de acuerdo con una sintaxis ya definida que
posibilita la transmisión de instrucciones a la CPU.
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
9
Se conoce en el mundo de la programación como “sintaxis” a la manera en que se
escribe un programa, es decir a sus reglas y normas estructurales que se siguen al momento
de escribir el código de programación.
Clasificación de los lenguajes de programación
Realice para mi investigación el siguiente esquema en donde se clasifican los
lenguajes de programación, la cual muestro en la figura:
Figura 1. Lenguajes de programación de bajo y alto nivel
Fases de elaboración de un programa informático
El desarrollo de una aplicación o conjunto de programas para obtener una solución
informática a un determinado problema se basa en un concepto denominado ciclo de vida,
que establece una serie de etapas o fases que hay que seguir secuencialmente y de forma
ordenada cuando se desea desarrollar un determinado producto de software.
Se consideran las siguientes fases: Análisis, Diseño, Codificación o construcción,
Explotación, Mantenimiento.
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
10
Fase de Análisis
En esta fase se establece cual es el producto que se va a desarrollar, siendo necesario
especificar los procesos y estructuras de datos que se van a emplear, para satisfacer las
necesidades del usuario, por lo que debe existir una gran comunicación entre el usuario y
el analista para conocer todas las necesidades y restricciones en el desarrollo de la
aplicación.
Fase de Diseño
En esta fase se alcanza una solución óptima, detallada y con la mayor precisión
posible, teniendo en cuenta los recursos físicos del sistema (tipo de ordenador, periféricos,
comunicaciones, etc.). Y los recursos lógicos (sistema operativo, programas de utilidad,
compiladores, bases de datos, etc.). Con la finalización de esta etapa se obtiene como
documentación del denominado cuaderno de carga.
Fase de Codificación
Consiste en la traducción de la solución obtenida a un determinado lenguaje de
programación, basándonos en las especificaciones de diseño expresadas en el cuaderno de
carga. Así mismo se deberán realizar las pruebas necesarias para depurar errores y verificar
la calidad de los programas.
Fase de Explotación
En esta fase se realiza la implementación de los programas (aplicación) en el entorno
operativo o sistema físico donde va a funcionar habitualmente y su puesta en marcha para
obtener un funcionamiento normal de todo el sistema.
Fase de mantenimiento
Esta fase completa el ciclo de vida y en ella se realiza las correcciones necesarias
para subsanar errores y deficiencias en el producto desarrollado, existiendo la posibilidad
de que ciertas acciones de esta fase pueden reiniciar el ciclo de vida. El tiempo invertido en
la actividad de mantenimiento depende en gran medida de la correcta evaluación de las
fases anteriores, así como la documentación desarrollada.
(Catalinas, 2002)
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
11
VII.-Metodología La investigación se llevó a cabo a través de la investigación documental y de campo.
La investigación documental se realizó a través de páginas y sitios web, se consultó además
blogs de personas expertas en el tema, páginas oficiales de los lenguajes de programación,
así como también revistas informáticas.
Para que las fuentes de informaciones tanto primarias como secundarias en los sitios
web fueran de confianza se utilizó el buscador Google académico, obteniendo
principalmente libros acerca del tema.
La investigación de campo se llevó a cabo durante una visita al lugar de estudio para
una exploración visual, posteriormente se realizó una entrevista con el especialista del tema
y se concluyó con la aplicación de encuestas a un sector de la población seleccionada por
nosotros mismos.
Se llevó a cabo durante la investigación un plan de trabajo que se detalla a continuación:
Actividad Periodo de trabajo: del 05 al 28 de mayo Recursos:
Selección del tema
05 mayo
Todos los recursos
disponibles en distintas
fuentes web, vídeos de
consulta, así como también
los recursos didácticos e información
que nos proporcionen
en el aula virtual en lo
que resta del curso
propedéutico.
Delimitación del tema
05 mayo
Objetivos 05
mayo
Justificación 07
mayo
Planteamiento 07
mayo
Hipótesis 07
mayo
Fuentes consultadas
11 mayo
Visita de campo
14 mayo
Aplicación de entrevista
16 mayo
Aplicación de encuestas
24 mayo
25 mayo
Ensayo 27
mayo
Contenido 28
mayo
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
12
VIII.-Resultados
Facebook es la red social con más popularidad en la actualidad, fue fundada el 4 de
febrero del 2005 por un joven estadounidense de nombre Mark Zuckerberg y otros jóvenes
amigos suyos. Actualmente Facebook alcanza la cifra de 2 320 millones de usuarios
registrados en el mundo.
Según (Redacción, 2017) Facebook se mantiene como la red social predilecta por los
internautas mexicanos con la cifra de 66.5 millones de usuarios. La red social ofrece diversos
servicios a sus usuarios entre los que destacan: lista de amigos, chat, grupos y páginas,
fotos, regalos, estado civil, aplicaciones, juegos.
Durante todo el proceso de recopilación de información me di cuenta que no existe
información directa y tampoco creo que exista debido a la configuración de privacidad del
sitio acerca de las tecnologías que emplean para la funcionalidad de la plataforma.
Sin embargo en varios sitios web consultados y por comentarios en redacciones de
las páginas oficiales de los lenguajes de programación confirme que existen diferentes tipos
de lenguajes de programación utilizados en esta red social, así como también otras
tecnologías que hacen posible toda la funcionalidad del sitio.
Esta información puede ser cambiante ya que este tipo de plataformas y otras más
están en constantes cambios para las mejoras de sus propios servicios o por la misma
demanda del usuario, e incluso crean sus propios lenguajes de programación como en el
caso de esta red social.
Los posibles lenguajes de programación que utiliza esta plataforma de red social son:
PYTHON
PHP
HACK
C++
JAVASCRIPT
JAVA
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
13
En cuanto a la plataforma de vídeos YouTube encontré como datos principales que
fue fundada el 14 de febrero de 2005, sus fundadores son Jawed Karim, Steve Chen, y Chad
Hurley
El primer video de YouTube fue subido a la plataforma el 23 de abril de 2005 con
una duración de apenas 19 segundos en donde se muestra a uno de sus fundadores Jawed
Karim en una visita al zoológico.
Según la fuente (Rodrigo, 2017) el 79% de los internautas mexicanos es usuario de
YouTube con un registro de 16.99 millones de visitantes únicos al mes. De manera mundial
al día se reproducen mil millones de horas en video.
Los posibles lenguajes de programación que utiliza esta popular plataforma son:
PYTHON
GO
JAVA
C++
JAVASCRIPT
El siguiente comentario (Python, s.f.) Acerca de un tipo de lenguaje de
programación utilizado en YouTube lo hizo un miembro de esta compañía:
“Python allows us to produce maintainable features in record times, with a minimum of
developers. “ Cuong Do, Software Architect YouTube.com
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
14
En el caso de la aplicación de mensajería instantánea WhatsApp, como dato general
tenemos que fue fundada el 24 de febrero de 2009, actualmente su propietario es Facebook.
Los posibles lenguajes de programación en que está basada esta aplicación son:
JAVA
SWITF
ERLANG
Sabiendo un poco acerca de las posibles tecnologías utilizadas en nuestras aplicaciones de
investigación, a continuación describimos las características de cada uno de ellos:
PYTHON
Python fue creado por Guido van Rossum, un programador holandés a finales de los 80 y
principio de los 90 cuando se encontraba trabajando en el sistema operativo Amoeba.
Primariamente se concibe para manejar excepciones y tener interfaces con Amoeba como sucesor
del lenguaje ABC.
El 16 de octubre del 2000 se lanza Python 2.0 que contenía nuevas características como
completa recolección de basura y completo soporte a Unicode. Pero el mayor avance lo constituye
que este comenzó a ser verdaderamente desarrollado por la comunidad, bajo la dirección de Guido.
El Python 3.0 es una versión mayor e incompatible con las anteriores en muchos aspectos,
que llega después de un largo período de pruebas el 3 de diciembre del 2008. Muchas de las
características introducidas en la versión 3 han sido compatibilizadas en la versión 2.6 para hacer de
forma más sencilla la transición entre estas. A Guido van Rossum le fue otorgado el Free Software
Award (Premio del Software Libre) en el 2001, por sus trabajos en la creación y desarrollo del
lenguaje Python. En el 2005 fue contratado por Google, donde trabaja en la actualidad, aunque
sigue liderando los esfuerzos en el desarrollo del Python.
Sintaxis
La sintaxis de Python es muy sencilla, tanto que en algunas ocasiones parece pseudocódigo. Es muy
interesante observar las diferencias que existen entre el programa Hola Mundo de Python y el de
otro lenguaje de alto nivel como C++:
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
15
#include <iostream>
using namespace std; int main() { cout << “Hello World” << endl; return 0; }
Y ahora se ve cómo lograr esta misma tarea en Python:
print “Hello World” Como se puede apreciar es más simple programar en Python
(Challenguer-Pérez, Díaz-Ricardo, & Becerra-García, 2014)
Principales características
Es orientado a objetos, pero soporta también los estilos de programación procedural y
funcional.
Corre en múltiples plataformas, incluyendo Windows, Mac OS y Linux.
Su sintaxis y semántica es sencilla y consistente.
Utiliza tipos dinámicos.
Es adecuado tanto para programar scripts como aplicaciones de gran tamaño.
Es muy modular.
Cuenta con administración automática de memoria a través de recoleccion de basura.
Incluye una poderosa y extensa biblioteca de clases.
Cuenta con una gran comunidad que se dedica a promover su desarrollo y adopción.
Por su naturaleza interactiva, resulta ideal para llevar a cabo programación experimental y
desarrollo
rápido.
(Ariel, 2010)
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
16
PHP PHP fue creado en 1994 por un programador de Groenlandia llamado Rasmus Lerdorf, el
significado original del nombre de PHP no era otro que Personal Home Page.
Es un lenguaje interpretado del lado del servidor que se caracteriza por su potencia, versatilidad,
robustez y modularidad. Los programas escritos en PHP son embebidos directamente en el código
HTML y ejecutados por el servidor web a través de un intérprete antes de transferir al cliente que
lo ha solicitado un resultado en forma de código HTML puro.
Por su flexibilidad, PHP resulta un lenguaje sencillo de aprender; especialmente para
programadores familiarizados con lenguajes como C, Perl o Java, debido a la similitud de sintaxis
entre ellos. Al ser un lenguaje inicialmente concebido para entornos Unix, es sobre este sistema
operativo sobre el que se pueden aprovechar mejor sus prestaciones.
En comparación con otro tipo de tecnologías similares, PHP resulta más rápido,
independiente de la plataforma y más sencillo de aprender y utilizar.
Inicialmente diseñado para realizar poco más que contadores y libros de visita de páginas,
en la actualidad PHP permite realizar una multitud de tareas útiles para el desarrollo web. Por
ejemplo dispone, entre otras cosas de:
Funciones de correo electrónico que pueden ser utilizadas para programar complejos
sistemas de correo electrónico vía web.
Funciones de administración y gestión de bases de datos específicas para la mayoría de
gestores comerciales y funciones para conexiones ODBC con bases de datos en sistemas
Microsoft.
Funciones de gestión de directorios y ficheros, incluso para la transferencia mediante FTP.
Funciones de tratamiento de imágenes y librerías de funciones gráficas.
Funciones de generación y lectura de cookies.
Funciones para la generación de documentos PDF.
(Cobo Ángel, 2005)
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
17
Sintaxis
<?PHP
$t = ”Todo sobre mi madre”;
$d= “Pedro Almodóvar”;
print (“<TABLE BORDER>”);
print (“<TR> <TH>Título <TH> <TH>Director</TH> <TH>”);
print (“<TR> <TD> “);
print ($t);
print (“</TD> <TD>);
print ($d);
print (“</TD> <TR> <TABLE>”);
?>
HACK Hack es un lenguaje de programación de alto nivel para la Máquina Virtual HipHop (HHVM),
creado por Facebook como una extensión del lenguaje PHP. La implementación del lenguaje es
de código abierto, licenciado bajo la licencia MIT. Fue introducido en marzo del 2014, diseñado por
Marcos de la Cruz, David Carvajal, Alok Menghrajani, Drew Paroski.
Hack permite a los programadores utilizar tanto tipado dinámico y tipados estáticos. Este
tipo de sistema de tipos se le llama tipificación gradual, y también se aplica en otros lenguajes de
programación como ActionScript.
Hack interactúa perfectamente con PHP, que es un lenguaje de scripting de código abierto,
de uso general ampliamente utilizado, que está especialmente diseñado para el desarrollo de
páginas web y puede ser integrado en páginas HTML. La mayoría de los scripts PHP también son
válidos en Hack; Sin embargo, funciones y construcciones del lenguaje PHP de uso menos frecuente
no están soportados en Hack.
Sintaxis
<?hh
echo 'Hola Mundo';
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
18
C++
C++ como evolución del lenguaje C, fue considerado como el lenguaje ideal para enseñar a
programar, ya que permite utilizar construcciones más avanzadas que simplifican muchas de las
tareas que en C requerirían un esfuerzo importante. Por otra parte, todo lo incorporado a C++ es
opcional: pueden definirse clases o no, puede usarse sobrecarga de operadores o no, pueden
definirse funciones o clases genéricas o no, etc. La filosofía siempre fue que si algo no se usa, no se
paga un costo adicional (en memoria o velocidad) por tener la posibilidad de usarlo. Sin embargo,
C++ es un lenguaje enorme y no fue ideado para ser usado como primer lenguaje de programación.
El hecho que C++ soporte casi todo el lenguaje C y además agregue conceptos como clases,
operadores, sobrecarga, espacio de nombres, programación genérica, plantillas y más, lo convierten
en un lenguaje monstruoso.
Sintaxis
#include <iostream> using namespace std; int main() { cout << “Hola, mundo!” << endl; return 0; }
(Osella Massa Germán L)
JAVASCRIPT
Javascript es el lenguaje de facto en Internet. La mayoría de los navegadores actuales (sino
todos) lo soportan. Sin embargo, posee características que no lo convierten en un lenguaje ideal
para comenzar a programar. En general, aunque hay excepciones, carece se funciones de
entrada/salida (como la intención fue que corriera en un navegador, poder leer y escribir archivos
de manera arbitraria conllevaba un riesgo de seguridad innecesario). También sufre en cierta
medida del mismo inconveniente que Ruby, en el sentido que es difícil ocultar el hecho que se está
trabajando con objetos. El sistema de tipos cuenta con conversiones implícitas que más de una vez
sorprenden inclusive a programadores avanzados en ese lenguaje.
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
19
Sintaxis
<script language="Javascript"> var navegador_version = 0; function verNavegador() { var version; version = document.appVersion; return version; } </script>
(Osella Massa Germán L)
JAVA
Java y C# son dos lenguajes similares y de amplio uso. Ambos son, en principio
multiplataforma, empleando una máquina virtual para abstraerse del sistema operativo sobre el
que corren. En el caso de Java, Oracle provee máquinas virtuales que corren tanto sobre Windows,
Linux, Solaris y OS X. En el caso de C#, Microsoft provee solamente para Windows la plataforma .NET
(plataforma para la cual C# compila) pero existe el proyecto Mono que busca desarrollar una
plataforma compatible con .NET (en la medida de lo posible) y provee versiones para Windows,
Linux, Solaris y OS X, permitiendo también compilar para iOS y Android. El principal inconveniente
que ambos lenguajes tienen es que solamente soportan el paradigma de la programación orientada
a objetos y casi rechazan completamente el paradigma imperativo. Es imposible en ambos lenguajes
definir una función independiente; sólo pueden definirse métodos en una clase. Esto conduce a una
sobrecarga de estructuras innecesarias en un programa donde solamente se pretende enseñar
programación imperativa.
Sintaxis en Java
package hola;
public class HolaMundo { public static void main(String[] args) { System.out.println("¡Hola, mundo!"); } }
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
20
Sintaxis en C#
using System;
namespace hola { public class HelloWorld { public static void Main(string[] args) { Console.WriteLine("¡Hola, mundo!"); } } }
GO
Go es un lenguaje relativamente nuevo (fue anunciado públicamente en el 2009) creado e
impulsado por un grupo de desarrolladores de la empresa Google. Busca ser un lenguaje de sistema
simple pero incorpora facilidades que típicamente no se incluían en lenguajes de sistema, como
manejo automático de memoria y soporte para programación concurrente. Se aparta de la sintaxis
y las estructuras de control propuestas por el lenguaje C, proponiendo alternativas más simples y
potentes. Soporta programación orientada a objetos pero no utiliza el concepto de clases y herencia
común en otros lenguajes de programación.
Sintaxis
package main import "fmt" func main() { fmt.Println("¡Hola, mundo!") }
(Osella Massa Germán L)
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
21
SWITF
Swift es un lenguaje de programación multiparadigma creado por Apple enfocado en el
desarrollo de aplicaciones para iOS y macros. Fue presentado en WWDC 2014 y está diseñado para
integrarse con los Frameworks Cocoa y Cocoa Touch, puede usar cualquier biblioteca programada
en Objective-C y llamar a funciones de C. También es posible desarrollar código en Swift compatible
con Objective-C bajo ciertas condiciones. Swift tiene la intención de ser un lenguaje seguro, de
desarrollo rápido y conciso. Usa el compilador LLVM incluido en Xcode 6. Fue presentado como un
lenguaje propietario, pero en el año 2015, con la versión 2.2 pasó a ser de código abierto con
la Licencia Apache 2.0.
Sintaxis
let personas = ["Anna": 67, "Beto": 8, "Jack": 33, "Sam": 25]
for (nombre, edad) in personas {
print("\(nombre) tiene \(edad) años.")
}
Recuperado de:
https://es.wikipedia.org/wiki/Swift_(lenguaje_de_programaci%C3%B3n) el 28
de mayo de 2019
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
22
ERLANG Erlang es un lenguaje de programación concurrente (u orientado a la concurrencia) y un
sistema de ejecución que incluye una máquina virtual (BEAM) y bibliotecas (OTP).
El subconjunto de programación secuencial de Erlang es un lenguaje funcional,
con evaluación estricta, asignación única, y tipado dinámico. Fue diseñado en la
compañía Ericsson para realizar aplicaciones distribuidas, tolerantes a fallos, soft-real-time y de
funcionamiento ininterrumpido. Proporciona el cambio en caliente de código de forma que éste se
puede cambiar sin parar el sistema. Originalmente, Erlang era un lenguaje propietario de Ericsson,
pero fue cedido como software de código abierto en 1998.
La creación, gestión y comunicación de procesos es sencilla en Erlang, mientras que en
muchos lenguajes, los hilos se consideran un apartado complicado y propenso a errores. En Erlang
toda concurrencia es explícita.
Erlang recibe el nombre de A. K. Erlang. A veces se piensa que el nombre es una abreviación
de ERicsson LANGuage.
Sintaxis
-module(fact).
-export([fac/1]).
fac(0) -> 1;
fac(N) '''when''' N > 0 -> N * fac(N-1).
Recuperado de https://es.wikipedia.org/wiki/Erlang el 28 de mayo de 2019
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
23
IX.-Conclusiones y recomendaciones
Como conclusión comento que con algunos de los lenguajes de programación que
investigue no hubo suficiente información o documentación fiable, es decir la información se tomó
del sitio web Wikipedia, esto es que son actuales o son creados por las mismas compañías como
Facebook y no hay mucha documentación en la web.
A las personas interesadas en estudiar los lenguajes de programación, recomiendo
investiguen aparte de esta información que les presenté debido a que solamente me enfoque en
ciertos lenguajes de programación y existen muchos de ellos.
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
24
X.- Bibliografía
Ariel, O. R. (2010). Python como primer lenguaje de programación. Estado de México.
Catalinas, E. Q. (2002). Sistemas operativos y Lenguajes de programación. España: Thomson
Ediciones Spain, Paraninfo, S.A.
Challenguer-Pérez, I., Díaz-Ricardo, Y., & Becerra-García, R. A. (2014). El lenguaje de programación
Python. Holaguín, Cuba: Ciencias Holguín.
Cobo Ángel, G. P. (2005). PHP y MySQL Tecnologías para el desarrollo de aplicaciones web".
España: Ediciones Díaz de Santos.
nasheli. (21 de Octubre de 2014). https://hipertextual.com. Obtenido de
https://hipertextual.com/archivo/2014/10/historia-lenguajes-programacion/
Osella Massa Germán L, R. C. (s.f.). Análisis de nuevos lenguajes de programación. Argentina.
Python. (s.f.). Python.org. Obtenido de Success Stories: https://www.python.org/success-stories/
Redacción. (24 de Mayo de 2017). Es oficial, a los mexicanos les fascina Facebook. Excelsior, pág.
https://www.excelsior.com.mx/hacker/2017/05/24/1165396.
Rodrigo, E. (15 de Agosto de 2017). Producción audiovisual. Obtenido de
produccionaudiovisual.com: https://produccionaudiovisual.com/produccion-video-
digital/consumo-youtube-mexico/
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
25
XI.-Anexos
A continuación presento el guion de la entrevista aplicada durante la investigación a un especialista
en el tema de lenguajes de programación, se anexa también la bitácora de investigación de campo,
así como por último la encuesta aplicada y sus resultados.
GUION DE ENTREVISTA
ENTREVISTA APLICADA A: (nombre del entrevistado)
CARGO: (cargo u ocupación en la empresa, años de servicio en ella)
FECHA DE LA ENTREVISTA: (fecha en que se aplique la entrevista con la previa cita)
HORA DE INICIO: (hora en que inicia la entrevista, después de la presentación)
PREGUNTAS:
1. ¿Qué tipo de tecnologías maneja en su trabajo?
2. ¿Cuáles son las redes sociales que utiliza en sus ratos libres?
3. ¿Cuánto tiempo en invierte diariamente en las redes sociales?
4. ¿De qué manera cree que impacta el uso de redes como Facebook y WhatsApp en los
jóvenes a nivel secundaria?
5. ¿A tomado algún curso de lenguajes de programación? (mencionar)
6. ¿Puede describirme con sus palabras qué es un lenguaje de programación?
7. ¿Cuáles son los lenguajes de programación que conoce de manera general?
8. ¿Según sus conocimientos, puede mencionar en que lenguajes de programación están
hechos la red social Facebook, la plataforma de vídeos YouTube y la aplicación de
mensajería WhatsApp?
9. ¿Cuál cree qué es la importancia de los lenguajes de programación?
10. ¿Considera importante que jóvenes en la actualidad cursen materias como programación o
robótica? ¿Por qué?
HORA DE TERMINO: (hora en que terminó la entrevista)
AGRADECIMIENTOS: (despedida formal)
OBSERVACIONES: (anotar cualquier anomalía u observación)
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
26
Bitácora de diario de campo
1) Fecha de la
visita
martes 14 de mayo de 2019 07:00 am
Actividades
realizadas
Visité tres clases de la sección secundaria en los grupos 3a y 3b para observar el uso de la plataforma YouTube, red social Facebook o mensajería instantánea WhatsApp para actividades escolares. (07:30-08:20, 08:20-09:10, 09:10-10:00 am) Posterior a esto realice tres preguntas básicas a mi investigación a tres profesores (10:30 am)
Actividades no
realizadas
No se pudo entrar a la clase de robótica para preguntar acerca de los lenguajes de programación a los alumnos ya que salieron temprano de clases.
Resultados o
hallazgos
Observe que las actividades escolares que llevan a cabo los profesores en sus clases de la sección secundaria incluye el manejo de una plataforma educativa, la cual presenta a los alumnos información visual mediante imágenes, archivos en PDF y videos, ya sean de YouTube o de otro sitio web. Los alumnos llevan su propio equipo de cómputo para trabajar en sus actividades escolares. Tienen acceso Internet, cada salón cuenta con su propia antena Wifi. Cada profesor maneja su propio equipo de cómputo, solamente el profesor proyecta vídeos en YouTube, los alumnos no pueden hacerlo en clases debido al consumo del ancho de banda. Tanto alumnos como profesores tienen prohibido el uso de redes sociales en horario escolar, pero en el caso de los profesores tienen comunicación constante con sus directivos o jefes inmediatos en grupos de chat en la mensajería WhatsApp, haciendo consulta de mensajes solamente en sus horas libres en la sala de maestros. Los profesores titulares tienen grupos de comunicación vía WhatsApp con sus alumnos y padres de familia.
Observaciones
o
interpretación
de los datos o
hallazgos
Con lo que respecta a las labores administrativas que realizan los profesores utilizan mucho los vídeos y tutoriales de YouTube como consulta de información para preparación de planeación de clases., así como también mensajería a través de WhatsApp para la recepción y envío de comunicados (aparte del correo institucional).
Impacto de la
experiencia
Tanto alumnos como profesores manejan las tres aplicaciones en cuestión (YouTube, Facebook y WhatsApp) saben o tienen conocimientos básicos de un lenguaje de programación, pero desconocen completamente los lenguajes de programación en que están hechas las aplicaciones, a pesar de que conviven diariamente ya sea de manera laboral o personal con las aplicaciones en cuestión.
Resultado de las preguntas realizadas
Pregunta Profesor 1 (español) Profesor 2 (inglés) Profesor 3 (química)
¿Ha escuchado hablar de los
“lenguajes de programación”?
No, nunca había escuchado.
No. No.
¿Maneja redes sociales?
¿Cada cuánto?
Sí, casi a diario. Sí, todos los días. Si, a diario.
¿Conoce los lenguajes de
programación en que están
hechos YouTube, Facebook y
WhatsApp?
No tiene ni idea. No, desconoce. No conoce ninguno.
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
27
Encuesta aplicada y gráficos de resultados
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
28
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
29
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
30
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
31
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
32
UNIVERSIDAD ABIERTA Y A DISTANCIA DE MEXICO
33