domingo, 22 de mayo de 2016

Primeras ideas


Para mi proyecto de Scratch tenía pensado hacer un juego en el cual pudieran jugar dos personas y que fuera divertido. Estuve dos sesiones buscando juegos en diferentes lugares, para encontrar la idea de mi juego. Finalmente encontré el juego del Pong, pero para dos personas y como ya había hecho previamente un Pong individual, pensé que estaría bien hacerlo multijugador y además ya tendría una base de conocimientos para empezar el juego.
Al empezar, supe que tenía que crear dos palas, una bola y un límite detrás de cada pala para contar la puntuación. También sabía que quería que el juego tuviera diferentes niveles y cada uno con mayor grado de dificultad.

Esas eran las bases de mi proyecto, luego mientras iba desarrollandolo iba añadiendo o cambiando cosas, hasta que el proyecto final tuvo su forma definitiva.  


Caracteísticas del juego

El juego contiene tres escenarios diferentes, en los cuales empiezas con una velocidad determinada pero que a medida que el tiempo en el que pasas un nivel, aumenta la velocidad de la pelota también. Hay un contador de puntuación que al comienzo de cada nivel se pone a 0. Cada nivel lo gana el jugador que llegue antes a los 8 puntos y cuando un nivel se termina, aparece un letrero indicando el ganador del nivel. El tamaño de las palas y de la pelota va cambiando.
 
 

jueves, 21 de enero de 2016

Interfaz de usuario


En estas prácticas hemos aprendido un número grande de comandos y variables de entorno que podemos utilizar, y a la vez los hemos probado para ver su funcionamiento.

Comando
Función
which pwd
Pwd: muestra el directorio de trabajo actual.
Which: permite encontrar en el sistema de archivos otros comandos
which file
Which: permite encontrar en el sistema de archivos otros comandos
File: indica de qué tipo es un fichero
ls
muestra el contenido de un directorio
cd
cambia de directorio de trabajo si no se indica directorio, nos traslada a $HOME
find . -name *.html -print
Find: búsqueda avanzada de ficheros
-name *.html: buscar ficheros cuyo nombre sea cualquier cosa acabada en html
-print: para que imprima aquello que encuentre
ctrl + l
para hacer una limpieza
cd MOOC/
Ir a el subdirectorio MOOC/
cp page.html test.html
hacer una copia del fichero page.html a uno de prueba test.html
Cp: copia ficheros y directorios
find . -name *.html -mtime -1
Find: búsqueda avanzada de ficheros
-name *.html: buscar ficheros cuyo nombre sea cualquier cosa acabada en html
-mtime -1: elige los ficheros que tengan un tiempo de modificación inferior a un día
vi test.html
editar el fichero test.html
vi: editar de pantalla
:x
salir de la edición de un fichero
diff page.html test.html
comparar el fichero page.html con el fichero test.html
diff: comparar dos ficheros
rm test.html
borrar el fichero test.html
rm: borra ficheros
ping gitchub.com
gitchub.com: nombre de la máquina con quien comprueba la conectividad
ping: comando de administración del sistema, se usa para verificar la conectividad entre dos hosts en una red
ctrl+c
terminar la ejecución de cualquier comando
echo “MOOC: sistema operativo UNIX”
echo: hace eco en pantalla
“MOOC: sistema operativo UNIX”: frase escrita para que haga eco en la pantalla
echo “MOOC: sistema operativo UNIX” > texto
redirigir la salida del comando echo a un fichero llamado texto
cat texto
cat: muestra el contenido de un fichero
texto: nombre de un fichero
od -cb texto
ver la codificación interna del fichero con algo más de detalle
od: muestra byte a byte el contenido de un fichero.
-cb: para mostrar en octal y simultáneamente los caracteres
texto: nombre del fichero
wc
cuenta líneas palabras y caracteres en un fichero
ctrl + d
señalización de fin de fichero
grep pala poema
busca la palabra pala en el poema escrito anteriormente, no como palabra aislada sino que forma parte de una palabra
grep: busca ocurrencias de una cadena en un fichero
grep -w pala poema
-w: para encontrar palabras aisladas
grep -w amor poema | wc -l
nos muestra el número de veces que aparece la palabra amor en el poema
nombre=manu
define la variable nombre y le asigna el valor manu
echo $nombre
nos muestra el valor de la variable nombre
echo ${nombre}el
nos muestra el valor de nombre y además añadido “el”
xterm &
xterm: crea una shell externa donde las variaciones son heredadas
&: para indicar que lo hacemos en background, de forma que esta shell devolverá prompt y ejecutará en un segundo proceso concurrente a ella
printenv
muestra todas las variables
printenv | grep -w PATH
buscar la variable PATH. esta variable contiene la lista de directorios donde la shell busca para ejecutar comandos que tecleamos
grep: busca ocurrencias de una cadena en un fichero
printenv: muestra todas las variables




para mi los comandos más útilies y a la vez dificiles han sido:
  • find . -name *.html -mtime -1====busca el fichero cuyo nombre acabe en .html y que se haya modificado hace menos de un dia
  • diff page.html test.html===== compara el fichero page.html con el test.html

martes, 22 de diciembre de 2015

Los 5 de los 100 comandos

1º comando: whoami
Para saber quien eres, tu usuario.

2º comando: ls ../
Para ver los archivos del directorio anterior



3º comando: touch informatica
Para crear un archivo en Unix llamado informatica. Luego he puesto el comando "ls -l" para comprobar que se había creado.



4º comando: time ls
Para saber el tiempo que tarda en ejecutarse un comando. Escribes time y el nombre del comando que desees saber su información, en este caso he decidido saber el tiempo de el comando ls




5º comando: ls *.txt
Para encontrar archivos terminados en .txt en el directorio actual



En general los comandos que he elegido son comandos fáciles de ejecutar en los que no necesitas hacer muchos pasos y en los cuales te da una información útil, es por eso que he escogido estos. Además sobretodo, el comando touch *nombre del archivo* en mi opinión es un comando muy útil porque enseguida puedes hacer un archivo de manera muy rápida, es por eso que he elegido este entre la lista de 100 comandos.

jueves, 10 de diciembre de 2015

Sistemas de archivo Linux I

Acontinuación les voy a mostrar los comandos que he estado utilizando en mis últimas clases de introducción a Linux en informática.


Listado de comandos

Comando
Función
ls
contenido de un directorio
cat
vuelca contenido a pantalla
more
ambos muestran el contenido
less
página a página
cp
copia ficheros
mv
mueve y renombra ficheros
rm
elimina ficheros
file
muestra el tipo de un fichero
cd
cambia al directorio especificado o, al home usuario. Es un comando interno del intérprete de comandos
chmod
cambia los permisos de un fichero a los valores proporcionados
vi
editor de pantalla
vi -r fille
recupera y edita “fille” después de una caída o del sistema o editor vi
vi +n
edita el fichero en la línea n
whoami
da información sobre el usuario
cal
nos muestra el calendario
date
nos muestra la fecha actual
echo
repite las palabras que escribimos detrás del comando



Opciones ls
ls -l
listado en formato largo. Incluye permisos, propietario, tamaño, última modificación, etc
ls -lt
lista por orden de fecha/hora de la última modificación, primero el más reciente
ls -lr
lista en orden inverso. Para combinar con otras opciones
ls -la
listado que incluye ficheros ocultos
ls -li
listado que incluye el número de nodo

Vi comandos básicos
i
antes del cursor
a
después del cursor
o
al comienzo de una nueva línea
zz
guardar y salir
:q
salir sin guardar
^z
suspender edición
dd
borrar línea
u
deshacer último cambio
/<texto>
buscar <texto> hacia adelante
:r fichero
inserta el contenido del fichero


Ejemplos de comandos usados:

  
Primera columna: es el número de inodoos
Segunda columna: son los permisos que tiene
Tercera columna: es el número de ficheros
Cuarta columna: el grupo al que pertenece
Quinta columna: nombre de usuario
Sexta columna: el tamaño que tiene el fichero o directorio
Séptima columna: mes en que se ha producido
Octava columna: dia en que se produció la última modificación
Novena columna: hora en que se ha producidola última modificación
Décima  columna: muestra el fichero o directorio
 
Desde mi punto de vista sobre la utilización de estos comandos creo que son bastante útiles ya que te permite ejecutar algunas acciones desde un mismo sitio sin tener que entrar en varias pestañas ni buscar nada. Al principio de todo son un poco difícles ya que son muchos pero luego a la horar de practicar varias veces lo entiendes y te facilita el trabajo. Para mi el comando más útil ha sido el ls ya que con el puedes averiguar inforamción del directorio. El comando más estético diria que es el de cal, que te muestra el calendario de forma muy rápida.