Programación orientada a objetos en Javascript.

De nuevo regresa a mi la materia de Estructura de Datos con su nuevo nombre, se le agrega la palabra aplicadas que parece muy adecuado.

Ahora desde casa se me ocurren mil cosas e ideas que haber hasta donde me alcanza la vida y el entendimiento, pero una de ellas es darla con varios lenguajes; en ocasiones pasadas la llegué a impartir con Java y C#.

En esta ocasión los chicos no quisieron complicarse y supongo con la experiencia de su maestro Mario Villavicencio han decidido con C#.

Como sabemos Javascript ha tenido un dominio avasallador y es el gran protagonista del desarrollo web, entonces para el primer tema que son tipos de datos abstractos probamos las clases en Javascript.

El ejemplo fue la clase Cuadrilatero (y sólo el subconjunto de aquellas figuras que sus ángulos interiores son rectos es decir el rectángulo y el cuadrado), y pues para evitar el dibujar en la consola decidí probar el objeto canvas manipulado por Javascript.

El primer paso fue hacer un formulario donde iba a obtener del usuario, la altura y anchura del cuadrilátero, después para ir probando fui agregando botones para probar cada acción de la clase. La versión definitiva fue darle mejor presentación agregando Bootstrap 4 y un botón para obtener de una sola vez la creación del objeto, el área, el perímetro y la imagen de la figura, les muestro el prototipo final de la página web, que publiqué en un sitio gratuito de internet.

Read More

Máquina virtual con Oracle 11g Express

Les dije: investiguen, intenten, lean, busquen caminos alternativos, y aun al día de hoy, tenemos personas que no pudieron instalar Oracle y siguen batallando, o bien se fueron por otro motor de base de datos.

Como Ingenieros en TICs deben de agotar todas las opciones, y sin ofender instalar el software n veces, pudiera ser una solución, pero no es la única.

Hoy en 10 minutos, quizás 15 instalé en un Windows Server 2003, la versión 11g de Oracle Express Edition. Sí, muchos dirán pero usted es el maestro, o quizás nuestro equipo no de para máquinas virtuales, pero hay equipos en la universidad o sus compañeros pueden fungir como su servidor, en fin tenemos que buscar opciones más allá de instalar un software “más fácil”. Y no estoy enojado, pero quisiera ver más iniciativa, y claro esta observación no es para todos, por supuesto.

Read More

Ejecutar un procedimiento almacenado dentro de un bloque (transacción) anónimo – PL/SQL – Oracle.

Y seguimos con las tensiones mundiales a todo lo que da, este año iniciábamos con una posible guerra mundial y ahora tenemos una pandemia en curso (afortunadamente aunque el contagio es severo, el índice de mortandad – número de casos contra muertes es muy bajo por ahora).

Pero la vida tiene que seguir así que, a lo nuestro.

Una de las prácticas para base de datos en el tema de transacciones, es la de generación de datos aleatorios para alimentar una tabla de una base de datos de Oracle para un grupo y de MySQL para otro (donde en el caso de Oracle escribí hace algunos años un artículo sobre números aleatorios [1]).

En el grupo A, los jóvenes no pudieron mandar llamar un procedimiento almacenado (que es el que genera los datos aleatorios), por lo que tuvieron que correr los bloques de programación por separado.

Entonces…soy el profesor …jejeje …pues fuimos a la biblioteca gigante del Internet para buscar una solución y me encontré lo siguiente, en este post [2].

Read More

Primera aplicación en Android Studio

La vida implica cambios y por más comodos que muchas veces estamos, la vida cambia, todo cambia.

Por ejemplo esta máquina desde donde ahora escribo, ha sido complice inanimada de mis tutoriales, videos, artículos, reflexiones y demás “diarreas mentales” que escribo en los diferentes espacios virtuales donde habitan mis ideas.

Pues bien, estamos a punto de jubilarla, pero no sin antes rendirle todos mis honores por ser mi herramienta complice para tratar de generar y compartir conocimiento.

Al igual que yo. Aun vivo una etapa de incertidumbre la cual no se despeja, sin embargo, parece inminente, mi ausencia temporal o bien definitiva de mi quehacer docente, lo cual es algo muy complicado…pero bueno reitero es parte de la vida misma, los cambios situacionales que nos pueden ser benéficos o no tan favorables, pero implican desafíos y retos.

Pero basta, vamos a lo que nos reune aquí: “el aporte al conocimiento”.

Read More

MySQL, el desafío del primer cuatrimestre del 2020.

No se trata de sentirme el “todopoderoso” o el “sabelotodo” sino que creo debemos de cultivar e incentivar los retos y desafíos que plantean los alumnos cuando nos sugieren tal o cual tecnología para trabajar en clase.

En este caso, el desafío era para mi, ya que parece ser que en las materias pasadas ya habían usado este motor, mientras que en el otro grupo fue el ganador el poderoso Oracle.

Mis acercamientos con MySQL era referente a usarlo en combinación de php o bien con Joomla, y algunos ejemplos para conectar con .NET o con Java, pero nunca me había metido a mayor profundidad con el motor, además que para facilitar las cosas se instalaba el XAMPP.

Ahora teníamos que usar el IDE tan popular llamado MySQL Workbench, además que mi reto era instalar una versión más reciente de MySQL, y bueno como son fines educativos la versión de la “comunidad”.

Read More

Oracle otra vez…

En el Instituto seguimos usando la poderosa base de datos Oracle, y como bien saben uno parpadea un poco y la tecnología avanzo en unos cuantos años. Debido a una iniciativa que espero concretar quiero trabajar con esta base de datos y el lenguaje de programación Python, pero decidí buscar y actualizar la versión express más reciente que es la 18c.

Ahora descargamos la última versión de Oracle XE para windows del sitio oficial.

Read More

Más de SQLite – UPDATE / ROWID

En el Instituto seguimos utilizando este pequeño motor de base de datos por la flexibilidad y portabilidad que brinda.

Por lo que para nuestros procesos de trabajo hemos tenido que internarnos más en su juego de instrucciones SQL.

Las cosas se han vuelto más complejas en cuanto a la recolección y obtención de información oportuna por lo que de momento tenemos que crear archivos de prueba para empezar a generar resultados que generalmente plasmamos en cuadros con información en formato de Microsoft Excel.

Read More