ByteCoin (2)
과제 및 필요한것들을 좀 적다보니 이제서야 시작하게 된다. API Request 구현하기 지난번에 이어서 시작하겠다. 주소에 값을 입력했을때 결과가 어떻게 나오는지 확인을 하고 끝났었다. 이제 제대로 만들어 보도록 해보자. 1. performRequest 구현하기 해당 기능을 구현하기 앞서 내가 실제로 가져와햘 값들에 대해 Data와 Mod...
과제 및 필요한것들을 좀 적다보니 이제서야 시작하게 된다. API Request 구현하기 지난번에 이어서 시작하겠다. 주소에 값을 입력했을때 결과가 어떻게 나오는지 확인을 하고 끝났었다. 이제 제대로 만들어 보도록 해보자. 1. performRequest 구현하기 해당 기능을 구현하기 앞서 내가 실제로 가져와햘 값들에 대해 Data와 Mod...
Generic (제네릭) 제네릭으로 구현한 기능과 타입은 재사용하기도 쉽고, 코드의 중복을 줄일 수 있다. 제네릭을 사용하고자 할 때는 제네릭이 필요한 타입 또는 메서드의 이름 뒤의 홀화살괄호 기호 사이에 제네릭을 위한 타입 매개변수를 써주어 제네릭을 사용할 것임을 표시한다. 제네릭은 실제 타입 이름을 써주는 대신에 placeholder를...
1. Protocol (프로토콜) 1. 프로토콜 특정 역할을 하기 위한 메소드, 프로퍼티, 기타 요구사항 등을 정의 해놓은 “규약” 혹은 “약속” class, structure, enum이 프로토콜을 ‘채택’하고 모든 요구사항을 충족하면 프로토콜을 ‘준수’했다고 한다. class, structure, enum이 프로토콜을 채택해서 특정 ...
import Foundation func solution(_ number:Int, _ limit:Int, _ power:Int) -> Int { var numberArray : [Int] = [] var numbers : [Int] = [] var answer : Int = 0 numberA...
이젠 더이상 건드릴게 없어 보인다. Model // GameModel import Foundation struct GameModel { static var answer = Array<Int>() var question = Array<Int>() static var gameStart : ...
조금 더 세분화를 하였다. 기존에 GameModel로 모든 변수에 대해 관리를 하였다면? 그것을 좀 더 쪼개서 세분화 하였다. // GameModel struct GameModel { var question = Array<Int>() var answer = Array<Int>() var g...
이미 과제는 끝났지만, 클래스화를 하고싶은데 생각대로 그게 되지않았다. 사실 어떻게 나눠야할지 모르겠다가 더 맞는 표현인듯 하다. 그래서 새롭게 클래스 화 하려고 한다. 각 레벨에 대한 내용은 생략하겠다. Lv.1 // main.swift import Foundation let game = BaseballGame() game.start() /...
예외처리 실패 가능한 상황과 예외 처리 에러처리 프로그램에서 에러가 발생한 상황에 대응하고 이에 대응하는 과정. Swift에서는 런타임에 에러가 발생한 경우, 이를 처리를 지원하는 클래스를 제공한다. 프로그램에서 모든 기능이 개발자가 예상하고 원하는대로 동작한다는 보장은 없다. ...
클로저 1. 클로저 클로저는 이름없는 함수 즉, 코드 블록을 의미한다. 클로저는 상수나 변수의 참조를 캡쳐(capture)해 저장할 수 있다 스위프트의 클로저는 주변 환경에 있는 변수나 상수를 캡처하여 저장하고, 이를 나중에 사용할 수 있도록 한다. 이것은 클로저가 생성될 때 클로저가 참조하는 변수 또는 상수의 값에 대한...
import Foundation func getPrime(_ number : Int) -> Int { var result : Int = 0 var i : Int = 1 while i <= number{ if number%i == 0 { result +...