SlideShare una empresa de Scribd logo
1 de 39
Programación para no
                  programadores
               TDD for Games Development



@IWT2_Javier
Programación para no Programadores

                • Presentar las ideas de la
                  programación.
                • Conocer las estructuras
                  básicas de programación
                • Entender un código
                  fuente en distintos
                  lenguajes de
                  programación.
                • Modificar el código
                  fuente de un juego
Objetivos
                                              2
Programación para no Programadores

             1. Publicidad.
             2. Un vistazo a los lenguajes
                de programación
             3. Herramientas de
                programación.
             4. Variables.
             5. Condicionales
             6. Bucles y listas
             7. Métodos y funciones
             8. Conclusiones
Índice
                                             3
Bienvenidos
Resumen de la Charla

¿Seguimos?




                                    5
Publicidad




             6
Próximas actividades


                  • Próxima reunión
                     – Fecha: 9-noviembre-2012
                     – Tema: SOLID y GRASP.
                     – Síguenos en twitter: #IWT2
                  • Herramientas de desarrollo
                    Microsoft y HTML-Tour.
                  • ISD 2013.
                  • Cursos de formación CFP.
#IWT2, @IWT2_Javier, www.iwt2.org
Próximas Actividades
Un vistazo a los
  lenguajes de
 programación



                   9
Un vistazo a los lenguajes
¿Qué tienen en común todo estos
            juegos?
Un vistazo a los lenguajes
Un vistazo a los lenguajes




                             12
Un vistazo a los lenguajes

        Java




   Object C

               LibGDX   PhoneGAP   Corona

  XNA / C#



JavaScript /
    HMTL5

                                        13
Un vistazo a los lenguajes

¿Son juegos buenos?         ¿Y en qué lenguaje están hechos?
Herramientas de
 programación




                  15
Herramientas de Programación




Compilador / Interprete              IDE




                                Motor 3D

    Framework / Librería
Hagamos un juego




                   17
Enter de Game
Framewrok: Löve + LUA




Enlaces

LUA: http://www.lua.org/
Programming in LUA: http://www.lua.org/pil/
Löve: https://love2d.org/
Variables




            20
Variables




            Ir al código
Variables

int a;
Float b;
                        var a = 32;
Integer a;              var s = “Holaaaa”;
String s = “Cadena”;
boolean = true;




                        a=3
                        local b = 4
Visibilidad de las Variables



Bloque en el que se declaran (clase o
método)




                                              Con local, sin local
Condicionales




                24
Condicionales




¿Qué tecla se ha
   pulsado?          Ir al código
Condicionales


if ( tecla == x) {
   //……
}




                        if techa == x then
                           …
                        end
Condicionales




¿Qué más condicionales tenemos?
Bucles y listas




                  28
Bucles y listas




                  Ir al código
Listas


List<Asteroid> l = new ArrayList<Asteroid>();
                                              var fruits = [];
l.add(r1);
                                              Fruits.push(r1);
l.add(r2);




                                              asteroids={}
                                              Table.insert(asteroids, a)
Bucles




         Ir al código
Bucles

for(Asteroid a: l) {           for (var i=0; i<5; i++) {
  a.incrementaX();              x=x + i;
}                               }

for (int a=0; a < 10; a++) {   for (x in person) {
  System.put.println(a);         txt=txt + person[x];
}                               }


                               for _,rock in pairs(rocks) do
                                          …
                               end

                               for sI = #rocks, 1, -1 do
                                          ….
                               end
Métodos / funciones




                  33
Métodos / funciones




       Los dos hacen lo mismo, ¿cuál te gusta
                       más?
Métodos / funciones


                                            void updatePlater(float dt) {
[public ] [int] sum(int a, int b) {
                                                     ……
            int c = a + b;
                                            }
            return c;
}




                                            function add(a, b)
                                              c=a+b
var add = function(number1, number2) {        return c
   var sum = number1 + number2;             end
   return sum;
};
Conclusiones




               36
Conclusiones


• Java, C / C++, C#, Object C tienen una sintaxis
  básica similar.
• Diferencia entre lenguaje de tipado estático y
  dinámico.
• Diseño muy diferente / librerías muy
  diferentes.
Conclusiones




¿Más código?
Conclusiones




                                http://opinahq.com/app/c/623




@IWT2_Javier / javierj@us.es / DAVES Google Group

Más contenido relacionado

La actualidad más candente

Lenguaje c++
Lenguaje c++Lenguaje c++
Lenguaje c++itzjpb
 
Estadisticas Descriptivas e Inferencia utilizando R (Taller Intermedio) UPDATED
Estadisticas Descriptivas e Inferencia utilizando R (Taller Intermedio) UPDATEDEstadisticas Descriptivas e Inferencia utilizando R (Taller Intermedio) UPDATED
Estadisticas Descriptivas e Inferencia utilizando R (Taller Intermedio) UPDATEDDr. Orville M. Disdier
 
.NET UY Meetup 6 - Integrando con C/C++ por medio de P/Invoke by Juan Ramirez
.NET UY Meetup 6 - Integrando con C/C++ por medio de P/Invoke by Juan Ramirez.NET UY Meetup 6 - Integrando con C/C++ por medio de P/Invoke by Juan Ramirez
.NET UY Meetup 6 - Integrando con C/C++ por medio de P/Invoke by Juan Ramirez.NET UY Meetup
 
Programación orientada a objetos - luis joyanes aguilar
Programación orientada a objetos - luis joyanes aguilarProgramación orientada a objetos - luis joyanes aguilar
Programación orientada a objetos - luis joyanes aguilarHenry Upla
 
Cuestionario 40 preguntas DSAUPOO
Cuestionario 40 preguntas DSAUPOOCuestionario 40 preguntas DSAUPOO
Cuestionario 40 preguntas DSAUPOOMichelle Peña
 
Estandares de Codigo (Emanuel)
Estandares de Codigo (Emanuel)Estandares de Codigo (Emanuel)
Estandares de Codigo (Emanuel)PiXeL16
 

La actualidad más candente (15)

Lenguaje c++
Lenguaje c++Lenguaje c++
Lenguaje c++
 
C sharp
C sharpC sharp
C sharp
 
El mundo del lenguaje c++
El mundo del lenguaje c++El mundo del lenguaje c++
El mundo del lenguaje c++
 
Estadisticas Descriptivas e Inferencia utilizando R (Taller Intermedio) UPDATED
Estadisticas Descriptivas e Inferencia utilizando R (Taller Intermedio) UPDATEDEstadisticas Descriptivas e Inferencia utilizando R (Taller Intermedio) UPDATED
Estadisticas Descriptivas e Inferencia utilizando R (Taller Intermedio) UPDATED
 
C++
C++C++
C++
 
Proyecto Golden Jackpot and Polypot
Proyecto Golden Jackpot and PolypotProyecto Golden Jackpot and Polypot
Proyecto Golden Jackpot and Polypot
 
4 Introducción al lenguaje Scala
4 Introducción al lenguaje Scala4 Introducción al lenguaje Scala
4 Introducción al lenguaje Scala
 
Introduccion a Visual C Sharp
Introduccion a Visual C SharpIntroduccion a Visual C Sharp
Introduccion a Visual C Sharp
 
.NET UY Meetup 6 - Integrando con C/C++ por medio de P/Invoke by Juan Ramirez
.NET UY Meetup 6 - Integrando con C/C++ por medio de P/Invoke by Juan Ramirez.NET UY Meetup 6 - Integrando con C/C++ por medio de P/Invoke by Juan Ramirez
.NET UY Meetup 6 - Integrando con C/C++ por medio de P/Invoke by Juan Ramirez
 
Programación orientada a objetos - luis joyanes aguilar
Programación orientada a objetos - luis joyanes aguilarProgramación orientada a objetos - luis joyanes aguilar
Programación orientada a objetos - luis joyanes aguilar
 
C++ Meetup Madrid
C++ Meetup MadridC++ Meetup Madrid
C++ Meetup Madrid
 
Curso basico c sharp
Curso basico c sharpCurso basico c sharp
Curso basico c sharp
 
Cuestionario 40 preguntas DSAUPOO
Cuestionario 40 preguntas DSAUPOOCuestionario 40 preguntas DSAUPOO
Cuestionario 40 preguntas DSAUPOO
 
Cuestionario consultado
Cuestionario consultadoCuestionario consultado
Cuestionario consultado
 
Estandares de Codigo (Emanuel)
Estandares de Codigo (Emanuel)Estandares de Codigo (Emanuel)
Estandares de Codigo (Emanuel)
 

Similar a Primera Interaula, 'Programación para no programadores'

Similar a Primera Interaula, 'Programación para no programadores' (20)

Proyecto
ProyectoProyecto
Proyecto
 
Proyecto
ProyectoProyecto
Proyecto
 
Portafolio de evidencias actividades
Portafolio de evidencias actividadesPortafolio de evidencias actividades
Portafolio de evidencias actividades
 
Como usar el lenguaje c++
Como usar el lenguaje c++Como usar el lenguaje c++
Como usar el lenguaje c++
 
Lo básico para programar
Lo básico para programarLo básico para programar
Lo básico para programar
 
Csharp
CsharpCsharp
Csharp
 
El_pensamiento_computacional_y_programacion_.pptx
El_pensamiento_computacional_y_programacion_.pptxEl_pensamiento_computacional_y_programacion_.pptx
El_pensamiento_computacional_y_programacion_.pptx
 
NIVEL DE PROGRAMACIÓN WEB INTRODUCCIÓN
NIVEL DE PROGRAMACIÓN WEB INTRODUCCIÓNNIVEL DE PROGRAMACIÓN WEB INTRODUCCIÓN
NIVEL DE PROGRAMACIÓN WEB INTRODUCCIÓN
 
Javascript
JavascriptJavascript
Javascript
 
Javascript
JavascriptJavascript
Javascript
 
Javascript desde cero
Javascript desde ceroJavascript desde cero
Javascript desde cero
 
Javascript
JavascriptJavascript
Javascript
 
Javascript completo
Javascript completoJavascript completo
Javascript completo
 
Javascript
JavascriptJavascript
Javascript
 
1117035859 javascript
1117035859 javascript1117035859 javascript
1117035859 javascript
 
Manual javascript
Manual javascriptManual javascript
Manual javascript
 
1117035859 javascript
1117035859 javascript1117035859 javascript
1117035859 javascript
 
javascript
 javascript javascript
javascript
 
1117035859 javascript
1117035859 javascript1117035859 javascript
1117035859 javascript
 
Javascript
JavascriptJavascript
Javascript
 

Primera Interaula, 'Programación para no programadores'