Mostrando entradas con la etiqueta Informática. Mostrar todas las entradas
Mostrando entradas con la etiqueta Informática. Mostrar todas las entradas

Creación de un programa sencillo en Java. Práctica virtual

Aprendiendo a programar

En la anterior práctica, vimos las bases de como empezar a programar en Java. El aprendizaje de Java es un mundo porque se puede crear todo (o casi todo). En este caso empezaremos a sentar los cimientos creando un programa sencillo.

Algunos ejemplos de programas sencillos pueden ser:

- Un programa que sume, reste, multiplique o divida 2 números.

- Un programa que realice conversiones de unidades, como de libras a euros, dolares a euros, grados Celsius a grados Farenheit, u otras que se nos ocurran, como por ejemplo a la hora de inflar neumáticos, ya que hay manómetros con distintas escalas (psi, kg/cm2, bar, kPa).

- Un programa de diálogo sencillo como por ejemplo uno que te pregunta que cual es tu nombre, le respondes y te dice algo; o te pregunta que día es, y te contesta según aciertes o falles, o similares.

- Un programa que es como una especie de cuestionario o examen, que te dice cuantas preguntas has acertado o fallado.

- Cualquier otra idea que se te ocurra, ¿te apetece crear otra cosa?

Lo aprendido en las anteriores prácticas, creación de un diagrama de flujo y como empezar a programar en Java, lo vamos a aplicar en esta, por lo que haremos referencias a las anteriores.

La idea de esta práctica es que el que la realice se sienta libre de crear lo que le apetezca (aunque salga mal) sin un guión fijo establecido. Puede que dé un poquito de vértigo o respeto, pero frecuentemente el programador es como el escritor o el descubridor, a veces hay que adentrarse en mundos desconocidos. Se trata de un programa sencillo, sólo nos mojaremos los pies en la playa del vasto océano de la programación.


Introducción

- Lectura: CUVSI. Creación de un diagrama de flujo. Práctica virtual
- Lectura: CUVSI. Como empezar a programar en Java. Práctica virtual


Guión de la práctica

1.- Pensar en una idea. Algún programa que se nos ocurra crear. ¡No importa que nos parezca absurdo! Lo importante es aprender. Ver los ejemplos de antes o pensar en algún programa que conozcamos. ¿Te gustan los videojuegos? Puede que en estos momento te parezco lejano crear uno, pero por que no idear un pequeño fragmento, como un diálogo.

2.- Desarrollar un esquema y construir un diagrama de flujo. Determina como va a funcionar tu programa y establece la secuencia de los pasos que se van a producir. Crea un diagrama de flujo como esquema dibujado en un papel o con una herramienta gratuita de las que existen.

3.- Elige un editor de texto. En la anterior práctica vimos varios editores. Elige uno con el que te sientas a gusto, pero los recomendables son los que resaltan la sintaxis, como Notepad++, Sublime Text, etc.

4.- Descarga el compilador. En Java es el Java Development Kit, que contiene los programas appletviewer.exe, visor de applets; javac.exe, compilador de Java; java.exe, intérprete de Java; y javadoc.exe, que genera la documentación de las clases Java de un programa.

5.- Empieza escribiendo el prototipo. Para ello usa lo aprendido en los cursos, libros y documentación en Internet. De una manera general, consulta la entrada del curso: El lenguaje de programación Java: fundamentos y elementos.

6.- Depura errores. Repasa el código y verifica donde puede estar el fallo. A veces los errores son más sencillos de lo que parecen como omitir punto y coma al final de cada línea de código, no distinguir entre mayúsculas y minúsculas, o que los bloques de código se inicien y cierren con llaves. Una opción es comprobar los fallos en algunos editores online. También se pueden consultar webs especializadas como Code, CodecademyLínea de Código o Aprender a programar.

7.- Prueba el programa. Hazlo una y otra vez hasta comprobar fallos que pensabas que no tenía. Corrígelos y vuelve a probarlo.

8.- Valora el programa. ¿Se han conseguido los objetivos? ¿es útil? ¿funciona correctamente?


Para saber más y ampliar conocimientos


Introducción a la Programación
Leer más

Por qué tenemos que aprender a programar

Desarrollo profesional continuo

La programación informática es el proceso de diseñar, crear, codificar, depurar y poner a punto programas y procesos computacionales. Requiere, además de los conocimientos informáticos, conocimientos en áreas distintas, en concreto las orientadas al objetivo que pretende el programa o proceso que se pretende crear. Requiere el dominio del lenguaje de programación que se va a utilizar, algoritmos y lógica formal, además de una mente ordenada y lógica.

En el mundo de la programación nunca se deja de aprender y no existe el límite o el fin del aprendizaje, ya que por un lado nunca se dejan de descubrir cosas nuevas que se pueden hacer, y por otro, es un mundo enormemente dinámico, que se está renovando continuamente con nuevos avances, con lo que el aprendizaje y la formación es para toda la vida. Todos los cursos realizados y todo lo que se aprenda siempre será poco.

Por tanto, para saber programar es preciso:

- Conocer el lenguaje de programación que estemos usando.

- Conocer algoritmos y lógica formal.

- Conocer la temática del programa o proceso que queremos crear.

Y además poseer las siguientes cualidades:

- Una mente ordenada para tener claro el desarrollo de lo que queremos obtener.

- Una mente lógica que nos indique claramente los pasos que debemos de dar.

- Capacidad de concentración en la tarea que estamos realizando.

- Paciencia y tranquilidad para depurar los errores.

- Optimismo para no desanimarse y llegar al objetivo.


Importancia profesional

En la actualidad, la tecnología informática nos rodea y se ha hecho imprescindible en nuestras vidas. En cuestión de unos veinte años, nuestra vida cotidiana y profesional ha cambiado. Si miramos al pasado, hace dos décadas, la única forma inmediata de comunicarse era por teléfono con cable, si queríamos leer teníamos que coger un libro y si queríamos conocer las noticias, esperar al noticiario de la televisión o ir a comprar un periódico. En nuestro trabajo, los archivos ocupaban numeroso espacio en las estanterías, se recibían y mandaban montones enormes de cartas, y si queríamos desplazarnos a un lugar no conocido necesitábamos un mapa. En cambio, hoy día, nos comunicamos por telefonía móvil o por Whatsapp, leemos en ebook o tablet y echamos un vistazo a las noticias en Internet; y en nuestro trabajo, manejamos bases de datos, utilizamos el correo electrónico y cuando nos queremos ubicar en un lugar no conocido usamos el GPS.

Las máquinas no podrían hacer nada de lo que tanto nos maravilla si no existiesen programas que las dicen lo que tienen que hacer. Hoy día casi todo el mundo sabe manejar teléfonos móviles, tabletas y ordenadores, pero muy poco saben programar.

Si no entendemos absolutamente nada de programación las máquinas tendrán dominio sobre nosotros, en vez de tenerlo nosotros sobre ellas. Pero sí sabemos programar, dejaremos de ser usuarios pasivos y las máquinas harán lo que nosotros queramos que hagan. Entraremos entonces en uno de los campos más bonitos de la vida, porque vivir es crear.

Aprendiendo programación se puede crear una carrera profesional extremadamente flexible, ya que sus conocimientos pueden ser aplicados desde dispositivos móviles a biología computacional, pasando por investigación científica, desarrollo industrial, creación musical y multimedia, o creación de dispositivos de ayuda a discapacitados, por citar algunas fuentes de desarrollo.

Otra enorme ventaja es que la programación se adapta perfectamente al trabajo en casa o teletrabajo. Con un equipo informático y una conexión a Internet basta en la mayor parte de las situaciones. Muchos empleadores permiten trabajar en casa, parte o la totalidad de la jornada, ya que frecuentemente el rendimiento es incluso mayor que en la oficina. Muchos puestos de programación de computadoras sólo necesitan un equipo y una conexión a Internet para hacer el trabajo. Los empleadores a menudo permiten a los programadores trabajar desde casa, ya sea una parte de la semana o completamente. Como alternativa, trabajar por cuenta propia como consultor informático independiente que trabaja desde su casa y de vez en cuando trabaja en los lugares de los clientes.

En Estados Unidos y en muchos países, las personas con conocimientos de programación poseen empleos muy bien remunerados. y se van a necesitar muchísimos más programadores que los que salen de la enseñanza.

Sin dinero, pero con las posibilidades que abre la programación o Internet, el emprendimiento empresarial es una opción personal si se sabe programar.

Profesionalmente se nos abrirán una enorme cantidad de puertas, tanto si queremos crear nuestra empresa o trabajar para otros.


Desarrollo de habilidades

Saber programar exige una gran capacidad de concentración, ya que una variable o signo mal escrito, puede hacer que todo el programa no funcione. Hay que prestar una gran atención en cada línea de código, así como tener bien claras las normas del lenguaje de programación y los valores de las variables, así como su correcta sintaxis.

La programación aumenta la imaginación y la creatividad. Crear un programa exige tener una buena idea y esa buena idea requiere ser depurada. La innovación es algo muy valorado, ya que es lo que realmente cambia el mundo y la vida de las personas. Toda innovación nace de un sueño de una persona, un sueño en el que imagina algo para que la vida sea mejor. Saber programar exige creatividad, ya que un problema puede ser abordado de distintas formas y con distintas soluciones.

En el proceso de enseñanza a alumnos, aumenta el interés por crear e innovar, ya que perciben que pasan de ser meros consumidores pasivos de tecnología a creadores activos de la misma. Esto supone un conocimiento de la tecnología actual desde una perspectiva más profunda. También supone que los alumnos muestren un mayor interés por el aprendizaje y la experimentación. Debiera ser una actividad obligatoria en el aprendizaje infantil, pues se ha comprobado que los pequeños obtienen mejores resultados en pruebas de matemáticas, razonamiento y resolución de problemas.

En la programación es muy importante el orden, para que el programa se ejecute correctamente, y la comprensión del lenguaje de programación, para localizar donde se encuentra un error para poder corregirlo. Por tanto, mejora la capacidad de comprensión y de llevar un orden.

El desarrollo de un programa requiere cálculos y lógica, que son algo consustancial a la programación, observándose, sobre todo en niños, desarrollo mental de las capacidades de cálculo y lógica.


Beneficios psicológicos y de calidad de vida

Programar te da seguridad en ti mismo. Poco se necesita para empezar a aprender a programar, con una simple tableta u ordenador basta, aunque sea viejo. Programar está al alcance de cualquiera. Dice un proverbio chino que un viaje de miles de kilómetro empieza con un sólo paso. Desde un videojuego a un complicado sistema de gestión de bases de datos, todos empezaron con un paso.

Saber ayuda a adaptarse y entender mejor al mundo actual, ya que al entender la tecnología y sus grandes cambios, la percibimos como menos estresante y sabemos anticiparnos a la posible ansiedad que todo ello nos pueda generar.

Saber configurar los programas que usas o modificar el software es otra gran ventaja de la programación. Esto satifacerá tus necesidades personales. Te hará sentir más a gusto con la tecnología que te rodea.



Introducción a la Programación

Enseñanza en la Red
Leer más

Como empezar a programar en Java. Práctica virtual

Hola Mundo en Java

Como ya comentamos, no es sencillo aprender a programar en Java. En esta práctica inicial, daremos nuestros primeros pasos en este versátil lenguaje de programación.

El lenguaje de programación Java fue publicado en 1995 como un componente fundamental de la plataforma Java de Sun Microsystems. Su sintaxis en gran medida es similar y deriva de C y C++, pero con la diferencia de que C++ puede ser orientado a objetos o no y Java es siempre orientado a objetos, Java es independiente del hardware y sistema operativo, el código máquina de C y C++ se genera para una plataforma concreta y en Java es para la máquina virtual Java (JVM) sin importar la arquitectura del ordenador o computadora y otras muchas diferencias.

Empezaremos creando el clásico de introducción a la programación Hola mundo, que no es difícil, pero antes debemos aprender como llegar ahí y como programamos en Java.

Java requiere ciertas reglas que tenemos que cumplir:

- Punto y coma al final de cada línea de código.

- Hay que tener cuidado con las mayúsculas y minúsculas, ya que en Java se diferencian y además son muy importantes.

- Los bloques de código que forman parte de un método o bucle deben estar iniciados y cerrados con llaves.

Otro aspecto importante es buscarse un buen editor, que nos sintamos familiarizados y a gusto con él. No basta con uno simple, sino que hay que buscar otro más específico para esta tarea, con distintos colores para las palabras claves y comentarios, etc.


Editores de Java

- Editor de MS-DOS: para acceder al editor de MS-DOS de Windows, la ruta es: Inicio → Programas → Accesorios → Símbolo del sistema, una vez ahí escribimos edit y pulsamos Return. Es un editor muy básico

Editores de texto: se puede usar el simple Bloc de notas, pero es preferible elegir alguno más sofisticado, tanto Notepad++, como Sublime Text están muy bien.

- NetBeans: es un entorno de código abierto, libre y gratuito para programar en Java. Tiene paquetes adicionales. Se puede descargar en su página oficial.

- Eclipse: otro entorno de código abierto multiplataforma para programar en Java. Es continuamente mejorado por la comunidad de usuarios. Se puede descargar en su página oficial.

BlueJ: es un entorno integrado de desarrollo para la programación en Java. Está orientado a fines pedagógicos, para enseñar programación orientada a objetos, pero también se puede usar para crear software. Se puede descargar en su página oficial.

Otros entornos de programación Java: como los comerciales JBuilder y JCreateor, y otros más.

Además del editor, necesitamos instalar en nuestro ordenador el Java Development Kit, para compilar los programas. Es un software de ORACLE que proporciona herramientas de desarrollo para crear programas en Java. Los programas más importantes que posee son appletviewer.exe, visor de applets porque un applet no se puede ejecutar directamente con el programa Java; javac.exe, compilador de Java; java.exe, intérprete de Java; y javadoc.exe, genera la documentación de las clases Java de un programa.

Editores online:

Ideone: permite editar código en Java, C++, Pascal, Python, entre otros lenguajes de programación. Se puede hacer directamente en su página oficial, y luego al hacer click en Run, comprueba la compilación con un mensaje de si es correcto o no. Se pueden descargar los códigos en formato adb, archivos de datos, que se puede abrir con un editor de texto.

Tutorials Pointversátil página web, que permite editar, compilar, ejecutar y compartir tus proyectos en la Red, no sólo de Java, sino de otros muchos lenguajes de programación, como C++, Python, PHP, Cobol, HTML, Javascript, YaBasic, etc.

- Browxyeditor, compilador y lanzador (launcher) de Java. Permite ejecutar programas, probarlos, compilarlos, guardarlos, descargarlos y publicar su código.

Code Twistintérprete y compilador de C, C++ y Java. Es muy fácil de utilizar, simplemente hay que introducir el código y éste se compilará.


Introducción

- Introducción: Wikipedia. Java (lenguaje de programación)


Guión de la práctica

- Lectura: Wikilibros. Programación en Java/Primer programa
- Lectura: HTML Point. Nuestro primer programa en Java



En definitiva, la práctica consiste en crear un archivo con texto escrito en lenguaje de programación Java, con algunos de los editores visto anteriormente, valiendo un simple editor de textos; compilar el código fuente, y ejecutar el programa.

En nuestro archivo HolaMundo.java escribiremos:

public class Hello {
  public static void main(String[] args) {
    System.out.println("Hola mundo");
  }
}

O una variante más corta:

public class HolaMundo {
public static void main(String[] args) {
}
}

Vamos a explicar en que consisten estas instrucciones:

- Básicamente, en Java una clase es una colección de datos. Con classcreamos la clase HolaMundo y la hacemos pública con public, quedando public class.

- Las llaves ({}): en Java, las llaves determinan el contenido de lo que se encierra entre ellas, que puede ser una clase, una función, una estructura, etc. La segunda línea es una llave abierta que indica el contenido de la clase HolaMundo, que sólo tiene un método. La llave cerrada se la última línea indica el fin de contenido de esta clase. Nótese que las llaves van por parejas, y pueden ir al fin o a la siguiente línea, aunque en esto último hay distintas opiniones.

- Todo programa en Java necesita una función o método, para establecer el inicio del programa, llamada main(). El método main en Java establece donde comienza la ejecución de un programa y va siempre en minúsculasmain() define una función, o método, public pública y static estática.

- La palabra static define las propiedades o métodos de una clase, que en este caso es HolaMundo.

args son los argumentos de un array, en Java. Un array es un objeto, definido como una variable o atributo, que siempre lleva un par de corchetes [] para indicar que es un array. String[] args define un vector de cadenas de caracteres que recoge los argumentos anteriores en la ejecución del programa HolaMundo.

- El tipo de dato void indica a la función o método, que no devuelva parámetros.

Si la práctica se ha realizado correctamente, se deberá ver el mensaje de Hola Mundo, tal como lo muestra Nuno Troitiño en Barrera Científica.




Introducción a la Programación
Leer más

El lenguaje de programación Java: fundamentos y elementos


Java es uno de los lenguajes de programación más usados, ya que tiene numerosas ventajas; es un lenguaje orientado a objetos, multiplataforma, y se puede ejecutar en cualquier dispositivo. Las applet Java son programas que incrustan en otras aplicaciones, como una página web.

Java, como lenguaje de programación, no es fácil de aprender. Y todos los recursos, como profesores, cursos, vídeos, tutoriales, son pocos. Este post es sólo una introducción que demuestra la complejidad, pero también las enormes posibilidades de este potente lenguaje de programación.

La primera característica de un programa en Java es que ha de definir una Clase, con el mismo nombre del archivo fuente, y que empiece, por convención, en mayúscula. Para definir una clase usamos el término class. Dos clases nunca pueden llevar el mismo nombre. Mediante las librerías o packages se organiza el código del programa, llevando cada librería varias clases. La variable classpath indica donde están las clases/librerías. Los calificadores permiten o niegan el acceso a ciertos segmentos del programa.

Las variables son nombres asociados a una parte de la memoria del ordenador, donde se guarda el valor que se ha asignado a dicha variable. Los constructores son métodos especiales para inicializar valores en instancias de objetos. Los métodos son conjuntos de instrucciones definidas en una clase que realizan una determinada tarea. Los comentarios son frases que se introducen que explican el código fuente. Cualquier palabra colocada entre los signos /* y */ es considerada comentario, al igual que todo renglón que se inicie con //.

Las herencias es algo característico de los lenguajes de programación orientados a objetos. Las herencias permiten reutilizar Clases existentes con todas las funcionalidades que tuvieran. Las condicionales son características de los lenguajes de programación; en Java, las principales son if/else, while y for. Los ciclos también son característicos; en Java son for y while.

Los operadores pueden ser matemáticos (suma, resta, multiplicación, etc), relacionales (mayor que, menor que, etc.) o lógicos (O, Y, negación). Al compilar un programa es cuando pueden aparecer los errores, pero en Java es posible encontrarlos al momento de su ejecución, ya que para este fin se han diseñado mecanismos.

Los arreglos son mecanismos para agrupar datos en conjunto. Por el polimorfismo, un objeto puede adoptar distintas formas. Para prohibir en Java el uso de métodos en Clases Base se usa abstract, restringiendo que éste sea llamado directamente. Una Clase abstracta debe definir los mismos métodos de la Clase base. Una Clase abstracta llevada al extremo es una interfase.

Existen muchos más elementos en Java, entre ellos citaremos las collections, estructuras de datos para agrupar objetos; los threads, que permiten fragmentar la ejecución de un programa en varios subprocesos; el garbage collection limpia instancias, objetos, que han dejado de ser utilizadas en un programa; y el assertion o aseveración, mecanismo de lenguajes de programación para garantizar el cumplimiento de ciertas normas al ejecutar un programa.


1. El lenguaje de programación Java

- Lectura: Wikipedia. Java (lenguaje de programación) (Filosofía, Sintaxis, Entornos de funcionamiento)




2. Composición, clases y librerías

- Lectura: Ósmosis latina. Curso de Java básico. Composición, Clases y Librerías



3. Variables, constructores, métodos y comentarios

- Lectura: Ósmosis latina. Curso de Java básico. Variables, constructores, métodos y comentarios



4. Herencias, condicionales y ciclos

- Lectura: Ósmosis latina. Curso de Java básico. Herencias, condicionales y ciclos



5. Operadores, errores y datos de entrada

- Lectura: Ósmosis latina. Curso de Java básico. Operadores, errores y datos de entrada



6. Interfases, arreglos y polimorfismo

- Lectura: Ósmosis latina. Curso de Java básico. Interfases, arreglos y polimorfismo



7. Otros elementos

- Lectura: Ósmosis latina. Curso de Java básico. Collections Framework, "Threads", Garbage Collection y "Assertions"




Para saber más y ampliar conocimientos

- Curso: OCW-Carlos III. Aprenda Java como si estuviera en primero
- Curso: OCW-UNICAN. Programación en Lenguaje Java
- Curso: OCW-UPM. Programación en Java I
- Curso: Programación Java. Aprende a programar con Java desde cero
- Lectura: UPV-EHU. Los elementos del lenguaje Java


Introducción a la Programación
Leer más

Creación de un diagrama de flujo. Práctica virtual

Diagrama de flujo

Crear un buen programa informático no es tarea sencilla. El código ha de estar muy bien escrito y el número de caracteres puede ser enorme, superando incluso al de una novela muy larga, con el agravante que un error ortográfico en una novela no impide la lectura del resto, pero en un programa un error puede impedir su correcta ejecución.

En un estudio realizado en 50.000 proyectos por el Standish Group, en distintos años, se puede concluir que sólo el 25-30 % eran completamente correctos, y el 70-75  % restante eran problemáticos o fueron cancelados.

Antes de empezar a escribir el código, es preciso tener una idea muy clara de lo que se quiere hacer y como se quiere que el programa funcione. Para ello es enormemente útil crear un diagrama de flujo.

Un diagrama de flujo es la representación gráfica de un proceso o algoritmo, que muestra la relación secuencial de sus actividades. Un algoritmo es una serie de instrucciones bien definidas y ordenadas que permiten realizar una actividad mediante pasos sucesivos.

Una idea idea muy clara del programa, mostrada en un diagrama de flujo, ayudará a evitar errores a la hora de escribir su código, ya que no generará dudas a la ahora de crear sus instrucciones.


Introducción

- Lectura: Wikipedia. Diagrama de flujo


Guión de la práctica

De las fases de creación y desarrollo de un programa informático, la del análisis es la primera, y dentro de ella, el primer paso sería la creación de un diagrama de flujo.

Por tanto, en primer lugar, esbozaremos una idea de programa informático. Si no nos viene nada a la cabeza, es tan fácil como pensar en una necesidad. Detrás de la necesidad de un usuario, existe una idea de programa. 

La comunicación del usuario con el analista es fundamental para que este conozca claramente las necesidades que necesita la aplicación.

Una vez que tenemos la idea, crearemos el diagrama de flujo. La forma de hacerlo se puede consultar en la siguiente dirección:


Este se puede crear a mano o con la ayuda de herramientas, programas o aplicaciones on line, como Visio, Draw u otras, que se pueden consultar en la siguiente web:



Preguntas y actividades

1. ¿Con qué editores de texto se pueden crear diagramas de flujo? ¿Se pueden crear con otros programas? (CAD, dibujo, etc.).

2. Buscar en Internet alguna otra herramienta más para crear diagramas de flujo.

3. ¿Un buen diagrama de flujo garantiza un buen programa? Razonar o debatir la respuesta.


Introducción a la Programación
Leer más

Introducción a la programación orientada a objetos

Entrada de datos en Java

La programación orientada a objetos es un tipo de lenguaje de programación que usa objetos para diseñar aplicaciones y programas informáticos. Por lo tanto, antes de entrar en contenido, es preciso definir claramente lo que es programación orientada a objetos.

Un objeto es una unidad en un programa, que posee tres características: estado, comportamiento e identidad. El estado es el conjunto de atributos y valores en un momento concreto. El comportamiento se relaciona con su función y determina las operaciones que puede realizar o a las que puede responder ante mensajes mandados por otros objetos. La propiedad de la identidad permite diferenciar a un objeto, distinguiéndolo de otros y dándolo nombre.

En la visión tradicional de la programación, un programa es una serie de subrutinas (funciones o procedimientos), o sea, una serie de instrucciones para el ordenador o computadora. Se crearía entonces un procedimiento, una estructura de datos para el procedimiento y luego unas instrucciones para llevarlo a cabo. Los datos y los procedimientos están separados. Se procesan unos datos de entrada para obtener unos datos de salida.

En cambio, en la programación orientada a objetos, se definen objetos, para luego enviarlos mensajes para que los mismos hagan sus métodos. Se escriben funciones que procesan datos.

Los inicios de la programación orientada a objetos se sitúan en la década de los 70s del siglo XX, desarrollándose progresivamente en los años 80 gracias a las interfaces gráficas de usuario, que son útiles en este aspecto.

Las características de los objetos fueron añadiendose a lenguajes de programación existentes, como Pascal o Basic, pero se daban problemas de compatibilidad, por lo que se crearon nuevos lenguajes de programación, ya orientados a objetos.

C era un lenguaje de programación muy flexible destinado a sistemas operativos. A mediados de la década de los ochenta le fueron añadidos mecanismos destinados a la manipulación de objetos, creándose el lenguaje C++, desarrollado por Bjarne Stroustrup.

Java es un lenguaje de programación orientado a objetos desde sus inicios y siendo destinado a cualquier tipo de dispositivos. En sus orígenes fue desarrollado por James Gosling de Sun Microsystems, compañía que fue adquirida por Oracle. Hoy día tiene licencia pública, siendo su uso, modificación y desarollado autorizado a cualquier persona. La máquina virtual Java permite ejecutar sus programas, sin importar la arquitectura del ordenador o computadora.

Actualmente, otro lenguaje de programación orientada a objetos, que está adquiriendo popularidad y desarrollo es Python, cuyo objetivo es una sintaxis con un código legible, además de ser multiplataforma. Es administrado por la Python Software Foundation, siendo también de código abierto.


1. Programación orientada a objetos

- Lectura: Desarrollo Web. Tipos de programación
- Lectura: Wikipedia. Programación orientada a objetos



2. Conceptos fundamentales

- Lectura: Wikipedia. Objeto (programación)



Introducción a la Programación
Leer más

Sistema de numeración binaria. Práctica virtual

Numeración binaria

El sistema de números que utilizamos es el sistema decimal, en el que las cantidades usan como base aritmética las potencias del número diez. Se piensa que se originó porque tenemos diez dedos en las manos. Es el usado en el mundo, exceptuando ciertas culturas, como los antiguos mayas.

En cuanto a los símbolos, en el mundo occidental en la Antigüedad se usó el sistema romano (y aún se usa en ámbitos formales y solemnes) pero no posibilitó el desarrollo de las matemáticas por la dificultad de las operaciones complejas y la ausencia del número 0. Fue sustituido por el sistema arábigo, surgido en la India e introducido por los árabes.

Hasta el siglo XIX, Bacon y Leibniz trataron el sistema binario, pero sin aplicaciones prácticas. A mediados del siglo XIX, George Boole crea un sistema lógico llamado Álgebra de Boole, que muchos años más tarde resultaría ser esencial en el desarrollo de la electrónica.

Pero sería con el desarrollo de la Informática y los computadores cuando el sistema binario adquiriría su importancia. Un sistema informático o de computación es un sistema electrónico en el que se trabaja con dos niveles de voltaje, encendido y apagado, encendido es 1 y apagado es 0. Por tanto, la numeración que usan los ordenadores es la numeración binaria, y por es esta razón es importante conocer su fundamento.


Introducción

- Lectura: Wikipedia. Sistema binario


Guión de la práctica

El objetivo de la práctica es familiarizar con el sistema binario, respondiendo a una serie de ejercicios. En el primero se aprenderá como se convierte un número de decimal a binario de forma manual y en los siguientes se realizarán operaciones de cierta complejidad de manera más automatizada.

1. Convertir el número 156 en binario de forma manual.

2. Convertir los números 26 y 3 en binario, realizar las siguientes operaciones 26 + 3, 26 - 3, 26 x 3 y 26 /3, en forma manual.

Acceder a la siguiente calculadora online que convierte números de decimal a binario y viceversa:


3. Realizar la siguiente operación de números binarios: 1111010101 x 1101011110 x 1111111100, dando el resultado en binario. Para ello transformar los número a sistema decimal, hacer la operación en el mismo y pasar el resultado a sistema binario.

Acceder a calculadoras binarias online, para realizar operaciones complejas en binario. Se pueden utilizar los siguientes enlaces:





4. Realizar las siguientes operaciones: 10101101010101 + 111110100001, y 11101010101011 - 10000111010

5. Realizar las siguientes operaciones: 1011111110111 * 11111100, y 101111000010101 / 10111100


Solución de los ejercicios propuestos

Se puede consultar la solución de los ejercicios propuestos en la siguiente entrada:



Preguntas y actividades

1.- Crear y realizar operaciones en sistema binario. Para comprobar la solución, transformar los números a decimal.

2.- La operación manual con números binarios en que es más fácil equivocarse en la resta o sustracción. Practicar hasta dominarla. Además del vídeo que aparece en la solución, se puede ver este otro.

3.- Dada la facilidad de equivocación en la resta de números binarios, otra posibilidad es usar el complemento a dos, transformando la resta en una suma. Consultar este enlace.de operaciones en complemento a 2.


Introducción a la Programación
Leer más

Sistema de numeración binaria. Práctica virtual. Solución de los ejercicios propuestos

Numeración binaria

Solución de los ejercicios propuestos en la práctica virtual Sistema de numeración binaria.


1. Convertir el número 156 en binario de forma manual

156 dividido entre 2 da 78 y el resto es igual a 0
78 dividido entre 2 da 39 y el resto es igual a 0
39 dividido entre 2 da 19 y el resto es igual a 1
19 dividido entre 2 da 9  y el resto es igual a 1
9 dividido entre 2 da 4  y el resto es igual a 1
4 dividido entre 2 da 2  y el resto es igual a 0
2 dividido entre 2 da 1  y el resto es igual a 0
1 dividido entre 2 da 0  y el resto es igual a 1

Ordenando los restos, del último al primero, tenemos el número binario: 10011100


2. Convertir los números 26 y 3 en binario, realizar las siguientes operaciones 26 + 3, 26 - 3, 26 x 3 y 26 / 3, en forma manual.


Convertir los números en binario

26 dividido entre 2 da 13 y el resto es igual a 0
13 dividido entre 2 da 6 y el resto es igual a 1
6 dividido entre 2 da 3 y el resto es igual a 0
3 dividido entre 2 da 1  y el resto es igual a 1
1 dividido entre 2 da 0  y el resto es igual a 1

Ordenando los restos, del último al primero, tenemos el número binario: 11010

3 dividido entre 2 da 1  y el resto es igual a 1
1 dividido entre 2 da 0  y el resto es igual a 1

Ordenando los restos, del último al primero, tenemos el número binario: 11


26 + 3:

Las combinaciones al sumar dos bits son

- 0 + 0 = 0
- 0 + 1 = 1
- 1 + 0 = 1
- 1 + 1 = 10

Empezamos a sumar desde la derecha, 0 + 1 = 1; siguiente 1 + 1 = 10, escribiendo 0 en la fila del resultado y llevamos 1 (este "1" se llama  arrastre) y se suma el arrastre a la siguiente columna: 1 + 0 = 1, terminando con 11:

    11010
+        11
---------
    11101


26 - 3:

Las restas básicas son:

0 - 0 = 0
1 - 0 = 1
1 - 1 = 0
0 - 1 =  1, no cabe o se pide prestado al próximo

Para que los dos números binarios que intervienen tengan las misma cifras se añaden ceros a la izquierda del menor.

La resta 0 - 1 se resuelve, como en el sistema decimal, tomando una unidad prestada de la siguiente posición: 10 - 1 = 1 y me llevo 1, lo que equivale en decimal, 2 - 1 = 1. Esta unidad prestada debe devolverse, sumándola, a la posición siguiente.

Segunda posición: esta al ser 1 - 1 = 0, como tenemos que arrastrar  es como si empezaramos colocando el 1 del arrastre antes de ellos, así 1 -1 = 0, 0 -1 = 1... y continuamos arrastrando el 1 (en Hispanoamérica también lo llaman acarreo).

Tercera posición, colocamos el 1 antes de los dos ceros, y sería 0 -1 = 1, 1 - 0 = 1... y sigue el arrastre.

Cuarta posición, colocamos el 1 del arrastre por encima, 1 -1 = 0, y 0 - 0 = 1. Y ya no arrastramos, ya que no sobra. Quinta posición, sin problema, 1 - 0 = 1.

   11010
-  00011
---------
   10111

En este vídeo, lo podemos ver bien explicado:



26 x 3

La multiplicación es más sencilla, ya que se asemeja a la del sistema decimal, ya que el 0 multiplicado por cualquier número da 0, y el 1 es el elemento neutro del producto.

                   11010
                x       11
                ---------
                   11010
                 11010
                ---------
               1001110

26 / 3


La división en sistema binario es parecida a la decimal, pero a la hora de hacer las restas de la división se harán en binario.

     11010  / 11
                 -----
    -11          1000
    ------
     000
  -   00
   ------
     0001
   -    00
    ------
     0010
    -   00
    ------
        10

Como vemos 26 entre 3 da 1000 en binario, que en decimal es 8, y como resto da 10 en binario, que en decimal es 2.


3. Realizar la siguiente operación de números binarios: 1111010101 x 1101011110 x 1111111100, dando el resultado en binario. Para ello transformar los número a sistema decimal, hacer la operación en el mismo y pasar el resultado a sistema binario.

Los números en sistema decimal son los siguientes:

- 1111010101 = 981

- 1101011110 = 862

- 1111111100 = 1020

Luego la operación es 981 * 862 * 1020 = 862534440, que en binario es 110011011010010011101100101000


4. Realizar las siguientes operaciones: 10101101010101 + 111110100001, y 11101010101011 - 10000111010

 - 10101101010101 + 111110100001 = 11101011110110

- 11101010101011 - 10000111010 = 011011001110001


5. Realizar las siguientes operaciones: 1011111110111 * 11111100, y 101111000010101 / 10111100

- 1011111110111 * 11111100 = 101111001011100100100

- 101111000010101 / 10111100 = 10000000, resto = 010101


Sistema de numeración binaria. Práctica virtual
Leer más

Hardware, software y sistemas operativos. Práctica virtual

Ordenador o computadora

En un sistema informático o de computación, el hardware es la parte física, que se puede tocar, sería el ordenador o computadora y los periféricos; el software serían los programas usados por ese sistema informático, y el sistema operativo sería el sistema informático que gestiona el hardware y el software. El sistema operativo tiene privilegios sobre el resto de los programas.

Esta práctica es elemental e introductoria para tener una base sobre la que aprender unos conceptos básicos de Informática y programación.


Introducción

- Lectura: Wikipedia. Hardware
- Lectura: Wikipedia. Software
- Lectura: Wikipedia. Sistemas operativos
- Vídeo: MentorEnLínea. Definición de hardware y software
- Lectura: Wikipedia. Sistemas operativos
- Vídeo: Morelvyn Guerrero Nova. Historia y evolucion de los sistemas operativos


Guión de la práctica

Se toma el ordenador habitualmente utilizado o cualquier otro al que se tenga acceso, realizando el siguiente cuestionario:

Hardware:

- Marca y modelo
- Procesador (Tipo y velocidad de reloj)
- Memoria RAM (en Megabytes o Gigabytes)
- Nombre lógico (A:, B:, C:,…), tipo (unidad de disco flexible, duro, CD-ROM…) y tamaño de almacenamiento de las unidades de disco (en Megabytes o Gigabytes)
- Indicar todos los dispositivos de entrada de datos
- Indicar todos los dispositivos de salida

Software:

- Indicar cinco aplicaciones instaladas en el disco duro del ordenador
- Indicar unidad de disco y carpetas de instalación de las aplicaciones anteriores

Sistema operativo

- Sistema operativo instalado y versión


Preguntas y actividades

1.- Comparar las características del hardware con otro que se venda en la actualidad (se puede realizar una búsqueda en Internet).

2.- Comprobar el espacio libre y el espacio que ocupan las aplicaciones instaladas.

3.- ¿Cómo se desinstala adecuadamente una aplicación?.

4.- Comparar el sistema operativo con otros anteriores que se utilizaron. Puede ser interesante acceder a esta web (en inglés): 7 sistemas operativos que puedes ejecutar en un navegador.

5.- ¿Cómo se comprueban en el sistema operativo las características del hardware?


Nota de humor
Humor - Big smile
Windows 93 es una web que simula un sistema operativo que nunca existió, el Windows 93, que nos recrea los antiguos sistemas operativos de Windows de principios de los 90. Eso sí, en clave de humor.



Para saber más y ampliar conocimientos



Leer más

Conceptos y técnicas básicas en programación

Código de programa

Un dato es una cifra, letra o palabra que se introduce en un ordenador, como entrada y almacenamiento. Los datos, al estar codificados electronicamente en formato binario en ceros y unos, tienen como la unidad mínima de información el bit (0 ó 1), pero al ser una unidad muy pequeña, se emplea el byte, que es una secuencia de ocho bits. Como un bit puede tomar 2 valores distintos y un byte son 8 bits, un byte podrá tener 28 valores, es decir, 256 valores.

La lógica booleana o álgebra de Boole, creada a mediados del siglo XIX por George Boole, matemático autodidacta, usa técnicas algebraicas para para tratar expresiones de la lógica proposicional. Es fundamental en Informática ya que esquematiza operaciones lógicas.

Los archivos son estructuras de datos que residen en la memoria, pudiendo ser de datos o de programas. Los datos pueden ser numéricos o alfanuméricos.

Las expresiones son fundamentales en la programación ya que permiten realizar una o varias operaciones en un dato o en varios datos, obteniéndose como resultado otro dato. Una expresión consta de operandos, los datos sobre los que se actúa, y operadores, que definen la operación que se realiza en una expresión.

Los operadores pueden ser algebraicos, relacionales o lógicos. Los operadores algebraicos pueden ser de asignación, que asignan valores; y aritméticos, que operan sobre valores de tipo entero o real. Los operadores relacionales, que establecen una relación o comparación entre valores. Finalmente, los operadores lógicos o booleanos actúan mediante operaciones lógicas.

Un algoritmo es una serie de instrucciones u ordenes bien definidas que no dan lugar a dudas, que partiendo de un estado inicial, permiten llegar a un estado final y solución, mediante pasos sucesivos. Se pueden expresar mediante lenguaje natural, que tiende a ser ambiguo y extenso; pseudocódigo, mezcla de lenguaje natural y convenciones sintácticas propias de lenguajes de programación; diagramas de flujo, descripciones gráficas de algoritmos, o lenguajes de programación, lenguaje formal para computadoras.

La iteración usa bucles, que son códigos que se repiten una y otra vez, mientras la recursión o recursividad es un código que se llama a sí mismo. La diferencia entre ellos es que la iteración se basa en la repetición y finaliza cuando la condición de continuación del ciclo es falsa, mientras la recursión usa una estructura de selección y finaliza cuando se identifica el caso base. Ambas pueden ejecutarse infinitamente si no finalizan. La solución recursiva generalmente es más lenta y usa más memoria, pero en determinadas ocasiones es más sencillo escribir la versión recursiva.

En muchas aplicaciones informáticas se guardan listas de datos, se puede acceder a los mismos de forma secuencial, para acceder a uno hay que pasar por los anteriores; o de forma directa, se accede al deseado a través de un índice. Una secuencia es una colección de objetos de un tipo, en la que se dispone de acceso secuencial. En una secuencia, la parte izquierda representa los elementos ya leídos y la derecha los elementos por leer.

Una tabla es una colección de objetos en los que se dispone de acceso directo, indentificándose cada elemento a través de un índice. En una tabla es preciso indicar su nombre, el rango de valores del índice y el tipo de elemento de cada casilla de la tabla. Para hacer búsquedas con eficiencia, es necesario ordenar los elementos almacenados de una tabla, teniendo una relación de orden definida; para ello existen distintos algoritmos de ordenación


1. Datos, expresiones y operadores

- Lectura: OCW-UPM. Fundamentos de Programación: Introducción (pdf) (epígrafes 1.7. Codificación de la información y representación de datos y 1.8. Lógica booleana, págs. 10-17)
- Lectura: OCW-UPM. Fundamentos de Programación: Expresiones y operadores (pdf)
- Presentación: Claudia Gutierrez. Tipos De Datos y Expresiones (Prezi)
- Vídeo: DesarrolloWeb. Variables y tipos de datos
- Vídeo: Juan Cuenca. Fundamentos de programación -7- Expresiones
- Vídeo: Escuela de Videojuegos. Tipos de operadores


2. Algoritmos. Estructuras algorítmicas básicas

- Lectura: Wikipedia. Algoritmo
- Lectura: UNICAN (Michael González Harbour y José Luis Montaña Arnáiz). Estructuras algorítmicas básicas (pdf)
- Vídeo: Zyter7 Motovlogs. ¿Que es un algoritmo?


3. Iteración y recursión

- Lectura: UNICAN (Michael González Harbour y José Luis Montaña Arnáiz). Iteración y recursión (pdf)
- Lecturas: Documentos Google. Iteración vs. llamada recursiva
- Vídeo: Irving Bone. ¿Qué es la iteración?
- Vídeo: Codigo Facilito. Recursividad - Curso de Programación Básica "Nunca He Programado" - Parte 13


4. Iteración y recursión sobre secuencias

- Lectura: UNICAN (Michael González Harbour y José Luis Montaña Arnáiz). Iteración y recursión sobre secuencias (pdf)


5. Iteración y recursión sobre tablas

- Lectura: UNICAN (Michael González Harbour y José Luis Montaña Arnáiz). Iteración y recursión sobre tablas (pdf)


Para saber más y ampliar conocimientos

- Curso OCW-UNICAN: Michael González Harbour y José Luis Montaña Arnáiz. Programación I
- Lectura: Wikipedia. Análisis de algoritmos
- Lectura: Wikipedia. Recursión


Introducción a la Programación
Leer más

Introducción a la programación

Lenguajes de programación

Ordenador o computadora es un aparato electrónico que recibe y procesa datos convirtiéndolos en información conveniente y útil. La informática o computación es la ciencia que estudia la trasmisión y procesado de la información a través de medios electrónicos digitales. En América se emplea la palabra computadora o computador, y Computación, palabras que vienen del inglés computer y Computer Science; mientras en España se emplean las palabras ordenador e Informática, que vienen del francés ordinateur e Informatique. El galicismo adoptado por los españoles simplemente responde al dinamismo de una ciencia muy joven con un espectacular desarrollo, teniendo en España sus inicios con muchos profesionales formados en el país vecino. Aunque sería más coherente por su mayor uso en lenguaje español el uso de computadora y computación, una vez adoptada una palabra es difícil cambiarla, aunque este debate carece de importancia, ya que no hay ningún problema para entenderse.

El lenguaje que usa un ordenador está muy lejos del humano, ya en el formato digital sólo se emplea la codificación digital o codificación binaria, los números 0 y 1, que en cadenas extensas se denomina lenguaje máquinacódigo máquina. Los seres humanos no tenemos facilidad para la memorización de números, y mucho menos de largas secuencias de números 0 y 1. Por ello, los primeros operadores informáticos, crearon un lenguaje traductor, el lenguaje ensamblador, para sustituir los números 0 y 1 por palabras, como por ejemplo add (sumar). La codificación binaria, el lenguaje máquina y el lenguaje ensamblador son lenguajes de bajo nivel, que están lejos del lenguaje humano y próximo al de las máquinas.

Se necesitan lenguajes de programación más cercanos al usuario, por ello, a finales de la década de los 50 del siglo XX, se crean un nuevo tipo de lenguajes de programación más cercanos próximos a las necesidades del usuario y del entendimiento humano: los lenguajes de alto nivel. Sus ventajas de uso son evidentes, ya que en vez de manejar conceptos como direcciones de memoria, pilas de llamada o registros, se emplean otros menos maquinísticos, como variables, objetos, subrutinas, bucles, etc. Sin embargo, hay mermas en la eficiencia óptima. Lenguajes de alto nivel son Basic, Pascal, Python, C, C++, etc.

Hay autores que consideran que algunos lenguajes como Basic o C, no deberían ser considerados de alto nivel, ya que permiten el uso de funciones a nivel aritmético, pero a nivel lógico dependen de literales en lenguaje ensamblador. Son lenguajes orientados a procedimientos. Serían lenguajes de medio nivel.

Se denomina hardware a las partes físicas de un sistema informático. Dentro del hardware, tendríamos el procesador que puede ser desde un ordenador o computadora hasta un teléfono móvil o tableta, que al fin y al cabo no dejan de tener la misma función y ser el mismo concepto; y los perífericos, elementos a través de los que se maneja el proceador, entra o sale información, que son teclado, monitor, ratón, impresora, etc.

En el siglo XIX, el matemático e inventor Charles Babbage estableció los principios de la computadora digital moderna y los primeras máquinas son de este siglo. Los primeros ordenadores electrónicos datan de la época de la Segunda Guerra Mundial y funcionaban con válvulas. El transistor se crea a finales de la década de los 50 del siglo XX y el circuito integrado aparece a finales de la década de los 60 del mismo siglo, posibilitando el desarrollo de la electrónica. En la década de los 70 eran grandes máquinas, en los 80 entraron por primera vez en los hogares y empresas, en la década de los 90 se desarrollaron de forma fulgurante, consolidándose a principios del siglo XXI. Hoy día, aparecen nuevos aparatos que hacen las funciones del ordenador, como los teléfonos móviles inteligentes.

El software es el soporte lógico de un sistema informático; sin el mismo, el hardware no podría realizar sus tareas específicas. El software puede ser software de sistema: sistemas operativos y controladores de dispositivos (drivers), software de programación: herramientas para crear programas, y software de aplicación: editores de texto, juegos, software profesional, etc.

Un sistema operativo, abreviadamente SO en español o OS en inglés (Operating System) es un programa o conjunto de programas, en un sistema informático, que gestiona los recursos de hardware, proporcionando operatividad a los programas de aplicación de software, ejecutándose en modo privilegiado respecto de los restantes. En sentido estricto, el el programa o conjunto de programas que hacen posible lo anterior y no entrarían en la definición programas accesorios, aunque se proporcionen con el sistema operativo, como navegadores, utilidades, etc.


1. La programación y los lenguajes de programación. Historia de los lenguajes de programación

- Lectura: Wikipedia. Lenguaje de programación
- Vídeo: Desarrolloweb. Historia y características de los lenguajes de programación


2. Hardware y software

- Lectura: EUM-UCLM. Historia de los ordenadores
- Lectura: Wikipedia. Hardware
- Lectura: Wikipedia. Software
- Vídeo: MentorEnLínea. Definición de hardware y software


3. Sistemas operativos

- Lectura: Wikipedia. Sistemas operativos
- Vídeo: Morelvyn Guerrero Nova. Historia y evolucion de los sistemas operativos


Introducción a la programación
Leer más

Plan de estudios de Quimioinformática - CUVSI

Sistema de Gestión de Información de Laboratorio

La Quimioinformática, Química computacional o Química digital es la parte de la química que ordenadores para investigar y resolver problemas químicos. Trata datos de la química teórica y resultados experimentales, para calcular estructuras y reacciones de moléculas, así como propiedades de moléculas y cuerpos sólidos; también simula procesos químicos y reacciones; y crea software específico para aplicaciones profesionales, de enseñanza y de investigación. Es una ciencia muy joven, siendo un campo de unión entre la informática y la química.

El quimioinformático está capacitado para diseñar y crear programas y aplicaciones informáticas destinadas a realizar usos, estudios e investigaciones en el campo de la Química, y el diseño de sistemas y procesos informáticos de utilidad en actividades relacionadas con la Química, así como la investigación, la divulgación científica y la enseñanza en el campo de la Quimioinformática.

La formación del quimioinformático contribuye al desarrollo de la Química y de la Informática, al conocimiento de los fenómenos químicos, al diseño de nuevas moléculas, medicamentos y materiales, y a la creación de aplicaciones en el campo quimioinformático.

La exigencia indisciplinar en la formación del quimioinformático de una fuerte base matemática, así como una suficiencia en las ciencias Química e Informática impide que en el plan de estudios pueda existir optatividad en las asignaturas. Esto no impide la especialización a través de estudios avanzados o a través de un menor académico (minor).


PRIMER CURSO

Primer cuatrimestre

Matemáticas I (Álgebra Lineal y Geometría)
Física I (Mecánica y Ondas)
Química I (Principios de Química y Estructura de la Materia)
Fundamentos de programación
Estructuras discretas (Matemática discreta)

Segundo cuatrimestre

Matemáticas II (Cálculo diferencial e integral)
Física II (Electromagnetismo y Óptica)
Química II (Reacciones Químicas)
Arquitectura de computadores   
Lógica matemática


SEGUNDO CURSO

Primer cuatrimestre

Matemáticas III (Cálculo diferencial e integral de funciones de varias variables)
Química de los elementos no metálicos
Química Analítica I (Principios de Química Analítica)
Ingeniería del software
Programación orientada a objetos

Segundo cuatrimestre

Matemáticas IV (Ecuaciones diferenciales)
Química de los elementos metálicos
Química Orgánica I (Química de hidrocarburos)
Redes de computadores
Lenguajes de programación


TERCER CURSO

Primer cuatrimestre

Estadística
Química Orgánica II (Química de compuestos oxigenados y nitrogenados)
Química Física I (Estructura Atómica y Molecular)
Sistemas operativos
Bases de datos

Segundo cuatrimestre 

Algoritmia
Ingeniería Química I (Bases de la Ingeniería Química)
Química Física II (Espectroscopia y Estadística Molecular)
Compiladores
Economía de la Empresa


CUARTO CURSO

Primer cuatrimestre

Química cuántica
Inteligencia artificial
Ingeniería web
Bases de datos avanzadas
Criptografia

Segundo cuatrimestre

Laboratorio de quimioinformática
Bioquímica
Inteligencia artificial avanzada
Seguridad informática
Desarrollo de aplicaciones para dispositivos móviles


Facultad de Ciencias Químicas
Leer más