Download Programación 1

Document related concepts

Hollywood (lenguaje de programación) wikipedia , lookup

Make wikipedia , lookup

Sudo wikipedia , lookup

Alternate Data Streams wikipedia , lookup

Setuid wikipedia , lookup

Transcript
Programación 1
Grado de ingeniería Robótica
Información general
●
●
●
●
Clases de teoría: miércoles de 11:00 a 13:00 aula B12 aulario 2
Clases de prácticas: martes de 11:00 a 13:00 y de 13:00 a 15:00
aula L24 Politécnica 1
Profesores:
Nombre
Correo
Tutorías
Miguel Cazorla
[email protected]
Martes 10:00-13:00
Diego Viejo
[email protected]
Lunes 11:00-13:00 y
martes 9:00-11:00.
Jesús Martínez
[email protected]
Martes 10:00-12:00
Para atender las tutorías se tiene que solicitar cita por tutoría virtual
o email
2
Práctica 1: Entorno y Herramientas
●
Objetivos de la primera práctica:
–
Conocer y comprender las herramientas necesarias para la
realización de un programa
–
Aprender a manejar las herramientas y el entorno
seleccionado para las prácticas
–
Sistema Operativo: Linux
● Editor de textos: Geany
● Compilador: gcc
Compilar y ejecutar un primer programa
–
Depurar los fallos encontrados
●
3
Práctica 1: Entorno y Herramientas
●
●
●
Para realizar y evaluar un programa, debemos
–
Generar el programa usando un editor de textos
–
Compilar el programa para obtener un ejecutable, usando un
compilador
–
Ejecutar el programa desde el sistema operativo
Existen numerosos IDEs, o entornos integrados de desarrollo, que
facilitan la tarea del desarrollador, tales como Eclipse, NetBeans,
Visual Studio, etc
En las prácticas, usaremos Geany como alternativa ligera y de
licencia GPL entre el resto de opciones
4
Práctica 1: Entorno y Herramientas
●
Las prácticas se desarrollarán bajo el Sistema Operativo
Linux, lanzado a través de una “máquina virtual”
–
Permite emular un Sistema Operativo
●
●
●
p.e. Lanzar Windows desde Linux o viceversa
Es importante conocer los comandos básicos para usar el
terminal, así como algunos conceptos base
Diferencias entre mayúsculas y minúsculas (case sensitive)
5
Práctica 1: Entorno y Herramientas
●
●
●
Lanzar la terminal
–
Desde el icono “Terminal”
–
Combinación de teclas “Ctrl+Alt+T”
Permisos
–
Algunas de las funcionalidades necesitan permisos de
superusuario
–
Podemos acceder como usuarios “normales” y ejecutar
ordenes como superusuario cuando sea necesario
Instalación de programas
–
Existen repositorios de aplicaciones similares a “Google Play”
6
Práctica 1: Entorno y Herramientas
●
●
Movernos dentro del sistema
–
Acceder a un directorio “cd nombre_dir”
–
Subir un nivel “cd ..”
–
Listar los ficheros y directorios “ls”
–
Eliminar un fichero “rm”
–
Crear un directorio “mkdir nombre_dir”
Cambiar los permisos de un fichero
–
●
chmod cambio_permiso fichero
Mostrar ayuda sobre un comando
–
man comando
7
Práctica 1: Entorno y Herramientas
●
Buscar ficheros/directorios
–
●
Lanzar un comando como superusuario
–
●
●
find -name “opciones_busqueda”
sudo “comando” → pedirá la contraseña de root
(Des)Comprimir
–
tar cvzf archivos nombrecomprimido→comprimir
–
tar xvzf nombrecomprimido → descomprimir
Instalar aplicaciones desde el repositorio
–
apt-get install “nombre_aplicacion”
–
Es necesario lanzarla como root
●
Ejemplo “sudo apt-get install geany”
8
Práctica 1: Entorno y Herramientas
●
Geany
●
9
Práctica 1: Entorno y Herramientas
●
Geany
–
Gestión de ficheros y edición estándar
–
Nuevo, guardar como, buscar, reemplazar
Editor de textos “enriquecido”
–
Palabras clave aparecen con un color resaltado
Opciones para programar
–
Construir → Compilar | Construir | Ejecutar
● Sobre el fichero actual que contiene el programa
Vista inferior
●
●
●
●
Mensajes de salida, errores, vista de terminal, etc.
10
Práctica 1: Entorno y Herramientas
●
Geany
–
Construir → Compilar
–
Equivalente al comando gcc -c programa.c
● Genera un programa en código objeto programa.o
Construir → Construir
–
Equivalente al comando gcc -o programa programa.c
● Compilar y linkar o enlazar
● Generará un ejecutable llamado programa (sin extensión)
Construir → Ejecutar
●
●
●
Equivalente a la ejecución desde consola ./ejecutable
11
Práctica 1: Entorno y Herramientas
●
Geany, trabajando con nuestro primer programa
–
Antes de empezar, crea una carpeta en el sistema para alojar
todos los ficheros
–
Ejemplo: cd Escritorio → mkdir jMartinezP1 → cd jMartinezP1
Descarga el fichero firstProgram.c en la carpeta
–
Abrirlo desde Geany
●
●
●
●
●
Compilar y estudiar los ficheros generados
Construir y estudiar los ficheros generados
Ejecutar
Eliminar todos los ficheros salvo el .c original
12
Práctica 1: Entorno y Herramientas
●
Compilando desde consola
–
Abrir de nuevo el terminal y realiza las siguientes
acciones
●
●
●
Compilar únicamente
– gcc -c firstProgram.c
Compilar y linkar generando ejecutable
– gcc -o ejecutable firstProgram.c
Ejecutar el fichero generado
– ./ejectuable
13
Práctica 1: Entorno y Herramientas
●
Cuando algo no va bien … descubriendo errores
–
Descarga en la carpeta el fichero firstProgramErrorA.c
y firstProgramErrorB.c
–
Para cada fichero
●
●
●
●
Abre el ficheros desde Geany
Intenta compilar
Estudia la salida obtenida
Estudia las diferencias con respecto al programa
original
14
Programación 1
Grado de ingeniería Robótica