diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000..10fd21e Binary files /dev/null and b/.DS_Store differ diff --git "a/HernandezElena/Test 1 ECC @ Laboratoria.playground/Pages/Introducci\303\263n.xcplaygroundpage/Contents.swift" "b/HernandezElena/Test 1 ECC @ Laboratoria.playground/Pages/Introducci\303\263n.xcplaygroundpage/Contents.swift" new file mode 100644 index 0000000..1692858 --- /dev/null +++ "b/HernandezElena/Test 1 ECC @ Laboratoria.playground/Pages/Introducci\303\263n.xcplaygroundpage/Contents.swift" @@ -0,0 +1,22 @@ +/*: + # Everyone Can Code @ Laboratoria + + ## Primer Examen Parcial + + 19-Oct-2019 + + La idea de este examen es que estudies lo que hemos visto en clase e identifiques donde están tus fortalezas y debilidades. El examen está pensado para que lo resuelvas en 30 min. + + ¡Recuerda, el examen es INDIVIDUAL! + + Antes de comenzar: + - Recuerda contestar la copia de este examen dentrode la carpeta con tu nombre. Si no sabes a qué me refiero, revisa README.md del siguiente repositorio: https://github.com/ECC-Laboratoria/BeautifulTests + + Teoría: + - En esta sección contesta con comentarios la respuesta correcta + + Swift: + - Tu respuestas deberán estar escritas en Swift. + + */ +//: [Next](@next) diff --git a/HernandezElena/Test 1 ECC @ Laboratoria.playground/Pages/Swift.xcplaygroundpage/Contents.swift b/HernandezElena/Test 1 ECC @ Laboratoria.playground/Pages/Swift.xcplaygroundpage/Contents.swift new file mode 100644 index 0000000..adce277 --- /dev/null +++ b/HernandezElena/Test 1 ECC @ Laboratoria.playground/Pages/Swift.xcplaygroundpage/Contents.swift @@ -0,0 +1,71 @@ +//: [Previous](@previous) + +import Foundation + +//: ## Swift +//: Y finalmente, unas preguntas sobre Swift. ¡Vamos! + +//: 1. Escribe un hola mundo en Swift +//Respuesta: +print("Hola mundo") + +//: 2. Escribe un ejemplo de String Interpolation +//Respuesta: +var name = "Pato" +print("Hola \(name)") +//: 3. Declara un arreglo constante de tipo Double con los siguientes elementos: 1.0, 5.0, 33.3, 45.5 +//Respuesta: +let numbers: [Double] = [1.0, 5.0, 33.3, 45.5] + +//: 4. Usando un ciclo for, itera sobre el arreglo de la pregunta 3 e imprime cada uno de los elementos del arreglo. +//Respuesta: +for number in numbers { + print("\(number)") +} + +//: 5. Declara la enumeración llamada Planet y como casos ocupa los siguientes: +//: - Mercury +//: - Venus +//: - Earth +//: - Mars +//Respuesta +enum Planet { + case Mercury, Venus, Earth, Mars +} +//: 6. Declara una constante llamada planet y asígnale un caso de la enumeración Planet (el caso que quieras) +//Respuesta: +Planet.Mars +//: 7. Utiliza una sentencia switch para imprimir un mensaje dependiendo del valor de la constante planet de la pregunta 6. +//Respuesta: +var red = Planet.Mars +switch red { +case .Mars: + print("Is the red planet") +default: + print("Is a nice place") +} +//: 8. Declara una función llamada ```haveRead()``` que tome como parámetro el arreglo de cadenas ```books``` y la cadena ```book``` y regrese un booleano. La idea de esta función es determinar si la cadena ```book``` se encuentra dentro de ```books``` + +let books = ["The Fountainhead", "Atlas Shrugged", "Why Nations Fail", "The Principles of Scientific Managemente", "Factfulness", "Outliers", "El Existencialismo es un Humanismo", "The Old Man and the Sea", "El Arte de Pensar", "Six Easy Pieces", "Steve Jobs", "Energy and Civilization: A History", "A History of Judaism"] +let book = "Outliers" + +//Respuesta: +func haveRead(_ books:String,book:String){ +} +//: 9. Finalmente, crea una estructura llamada ```Person``` que tenga como atributos: +//: - name: String +//: - books: [String] +//: y como método la función de la pregunta 8 sin el parámetro ```books```. +//: Crea una instancia de ```Person``` e inicialízala con tu nombre y ocupa la constante ```books``` de la pregunta 8 como segundo parámetro. Finalmente, manda a llamar al método ```haveRead()``` y pásale como parámetro la constante ```book``` de la pregunta 8. El resultado debe ser un booleano. + +//Respuesta + + +struct Person { + var name: String + var books: String + + func haveRead(book) -> <#return type#> { + <#function body#> + } +} diff --git "a/HernandezElena/Test 1 ECC @ Laboratoria.playground/Pages/Teor\303\255a.xcplaygroundpage/Contents.swift" "b/HernandezElena/Test 1 ECC @ Laboratoria.playground/Pages/Teor\303\255a.xcplaygroundpage/Contents.swift" new file mode 100644 index 0000000..3cb9155 --- /dev/null +++ "b/HernandezElena/Test 1 ECC @ Laboratoria.playground/Pages/Teor\303\255a.xcplaygroundpage/Contents.swift" @@ -0,0 +1,60 @@ +//: [Previous](@previous) + +//: ## Teoría +//: Bienvenida al hermoso mundo de la teoría. Contesta las siguientes preguntas. + +//: 1¿Qué hace el archivo ViewController.swift? +/* +Respuesta: Es la parte donde se pone el codigo que va a reaccionar a las interacciones de los usuarios + + */ + +//: 2. ¿Qué puedes hacer dentro del archivo Main.storyboard? +/* +Respuesta: Es la parte donde se muestra una representacion de la interfaz grafica del usuario + + */ + +//: 3. ¿Cuál es la diferencia entre IBOutlet y IBAction? +/* +Respuesta: El primero sirve para enlazar los objetos definidos en la interfaz grafica con las funciones + el segundo sirve para modificar los eventos que se muestran en la pantalla + + */ + +//: 4. ¿Menciona al menos una ventaja al utilizar UIStackView? +/* +Respuesta: permite agrupar los objetos, como botones o imagenes, en las vistas. tambien asigna automaticamnet elos constrains en las vistas, por lo queno hay necesidad de asignarlo de forma individual a cada elemnto + + */ + +//: 5. ¿Cuál es la versión más actual de Swift y iOS? +//: a) Swift: 4.0 iOS: 13 +//: b) Swift: 5.0 iOS: 10 +//: c) Swift: 4.0 iOS: 11 +//: d) Swift: 5.0 iOS: 13 +/* +Respuesta: d + + */ + +//: 6. ¿Qué tengo que hacer para que mi interfaz sea vean *bien* en todos los dispositivos (Por *bien* me refiero a que si pongo un botón en el centro de mi vista y al girarlo, ese botón se siga viendo en el centro)? +//: - a) Diseñar una interfaz para cada dispositivo +//: - b) Agregar constraints +//: - c) Ninguna de las anteriores +/* +Respuesta: b + + */ + +//: 7. Supón que tienes un UIButton dentro de una vista A y quieres hacer una transición a otra vista B al presionar ese botón. ¿Qué tienes que hacer si quieres que la vista B aparezca de derecha a izquierda? +//: - a) Embeber la vista A dentro de un UINavigationController > Ctrl + Drag del botón a la vista B > Método de presentación: Show +//: - b) Embeber la vista B dentro de un UINavigationController > Ctrl + Drag del botón a la vista B > Método de presentación: PresentModally +//: - c) Ctrl + Drag del botón a la vista B > Método de presentación: Show +//: - d) Ctrl + Drag del botón a la vista B > Método de presentación: PresentModally +/* +Respuesta: a + + */ + +//: [Next](@next) diff --git a/HernandezElena/Test 1 ECC @ Laboratoria.playground/contents.xcplayground b/HernandezElena/Test 1 ECC @ Laboratoria.playground/contents.xcplayground new file mode 100644 index 0000000..20451a0 --- /dev/null +++ b/HernandezElena/Test 1 ECC @ Laboratoria.playground/contents.xcplayground @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/HernandezElena/Test 1 ECC @ Laboratoria.playground/playground.xcworkspace/contents.xcworkspacedata b/HernandezElena/Test 1 ECC @ Laboratoria.playground/playground.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..94b2795 --- /dev/null +++ b/HernandezElena/Test 1 ECC @ Laboratoria.playground/playground.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,4 @@ + + + diff --git a/HernandezElena/Test 1 ECC @ Laboratoria.playground/playground.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/HernandezElena/Test 1 ECC @ Laboratoria.playground/playground.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/HernandezElena/Test 1 ECC @ Laboratoria.playground/playground.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/HernandezElena/Test 1 ECC @ Laboratoria.playground/playground.xcworkspace/xcuserdata/maleny.xcuserdatad/UserInterfaceState.xcuserstate b/HernandezElena/Test 1 ECC @ Laboratoria.playground/playground.xcworkspace/xcuserdata/maleny.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000..ac3c36a Binary files /dev/null and b/HernandezElena/Test 1 ECC @ Laboratoria.playground/playground.xcworkspace/xcuserdata/maleny.xcuserdatad/UserInterfaceState.xcuserstate differ diff --git a/HernandezElena/Test 1 ECC @ Laboratoria.playground/playground.xcworkspace/xcuserdata/nestorivanmo.xcuserdatad/UserInterfaceState.xcuserstate b/HernandezElena/Test 1 ECC @ Laboratoria.playground/playground.xcworkspace/xcuserdata/nestorivanmo.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000..9dcd64d Binary files /dev/null and b/HernandezElena/Test 1 ECC @ Laboratoria.playground/playground.xcworkspace/xcuserdata/nestorivanmo.xcuserdatad/UserInterfaceState.xcuserstate differ