분류 전체보기
Fix/뭐시기 브랜치를 만들고 해당 브랜치에서 작업하고 push 혹은 pull을 하려고 하는데 안됐음. 이유가 뭔가하니 fix와 fix/어쩌고 하는 두 브랜치를 사용하려고 하면, Git에서 브랜치 이름 충돌로 인해 커밋 또는 푸시가 실패하는 오류가 생기는 것이었음 오류 메시지: could not remove directory '/Users/t2023-m0072/Documents/파일이름/파일명/.git/refsremotes/origin/fix/gitignore': parent is not directory: Not a directory (-1) 해결하는 방법으로는git remote에서 fix 브랜치를 삭제하고 fix가아닌 다른 이름 fix/bugfix 등으로 이름을 변경하면됨. 예방하는 방법으로는브랜치를..
오늘부터 다시 TIL작성을 할 것임. 요즘 코딩에 손을 놨었는데, 주문한 새 맥북도 온김에 오랜만에 코딩 공부를 해봤음. 요즘은 기초 문법부터 다시 공부를 하고있는데 개념으로 다가가니 조금 어려운 느낌이 강하게 들었음. https://leedoseo.tistory.com/192 [iOS / Swift] 구조체 (Struct)구조체 (Struct): 구조체란 인스턴스의 값(프로퍼티)을 저장하거나 기능(메서드)을 제공하고 이를 캡슐화할 수 있는 Swift가 제공하는 타입(named type)임. 클래스처럼 인스턴스를 만들어서 실제 작업leedoseo.tistory.com https://leedoseo.tistory.com/191 [iOS / Swift] 클래스(Class)Swift는 객체 지향 언어이기 떄문..
구조체 (Struct): 구조체란 인스턴스의 값(프로퍼티)을 저장하거나 기능(메서드)을 제공하고 이를 캡슐화할 수 있는 Swift가 제공하는 타입(named type)임. 클래스처럼 인스턴스를 만들어서 실제 작업에도 쓸 수 있음.코드를 보면 클래스와 구조체의 코드가 거의 비슷함. class를 struct로 바꾼 것 말고는 차이가 없는듯함.이처럼 클래스와 구조체는 선언하고 사용하는 방법까지 매우 비슷함. 구조체 안의 변수도 속성이라 부르고 함수도 메서드라고 부름.구조체 안의 변수 : 속성(Property)구조체 안의 함수 : 메서드(method) 이제 클래스와 조금 다른 점을 보자면, 클래스에서는 초기화 작업이 있었음. 초기화 작업을 하면 인스턴스에 매개변수를 변경해줄 수 있었음.(클래스 내부에 init(..
Swift는 객체 지향 언어이기 떄문에 클래스의 사용이 필수적임. 또한 클래스의 사용으로 코드는 더 유연해지고 보기쉽게 됨.클래스(Class): Swift에서는 클래스를 정의하여 객체를 만들고 사용할 수 있음. 클래스를 하나 만든다면 클래스에서 생성된 객체인 인스턴스를 만들어 실제 작업에 쓰일 수 있게함. 클래스에 대한 예시코드를 보겠음.클래스를 선언하기 위해서는 아래 처럼 작성하면 됨.class '클래스이름' { /* 코드 부분 */}위 처럼 클래스를 선언하고 안에 name 변수와 my_name() 이라는 함수를 선언했음.Swift에서는 클래스 안에 변수를 속성이라고하고 함수는 메서드라고 함. 클래스 안의 변수 : 속성 (property)클래스 안의 함수 : 메서드 (method) 이렇게 클래스를 선..
옵셔널 (Optional): 옵셔널이란 변수의 값이 있을 수도 있고 없을 수도 있다는 것을 나타냄. 즉, 변수의 값이 nil값인 아무것도 없는 상태를 가질 수 있다는 것임.이게 무슨소린지 나는 처음에 이해를 잘 못했음. 없으면 0이지 '빈 값'이라는 개념이 있다는 것을 이해하지 못했음. nil값을 가질 수 있는 옵셔널 변수를 선언하기 위해서는 데이터 타입 뒤에 ?를 붙이기만 하면 됨. 아래 예시를 보겠음.말 그대로 데이터 타입 뒤에 ?를 붙여 옵셔널 변수 선언을 했음.이름이 있을 경우에는 name을 그대로 출력하고, 이름이 nil일 경우에는 '손'을 넣어 출력하여"안녕하세요, '이름'님", 혹은 "안녕하세요, '손'님" 이 출력되게 했음. 이처럼 이름이 String값일수도 있고, nil일 수도 있음. 그..
Swift에서 함수의 형태1. 매개변수와 반환값 둘 다 있는 경우// 매개변수와 반환값 둘 다 있는 경우func 함수이름(매개변수1 이름: 매개변수1 타입, 매개변수2 이름: 매개변수2 타입 ...) -> 반환타입 { /* 함수 구현부분 */ return 반환값}Swift에서 함수의 형태는 다음과 같음. 위의 형태는 함수에 매개변수와 반환값이 있는 경우고 상황에따라 매개변수가 없을 수도 있고 반환값이 없을 수도 있음. 2. 매개변수가 없는 경우// 매개변수가 없는 경우func 함수이름() -> 반환타입 { /* 함수 구현부분 */ return 반환값}매개변수가 없는 경우엔 단순히 매개변수를 쓰는 괄호를 비워두면 됨. 3. 반환값이 없는 경우// 반환값이 없는 경우func 함수이름() -> void{..
컬렉션 타입: 데이터들을 한번에 관리할 수 있고 쉽게 사용할 수 있는 타입. 배열, 딕셔너리, 세트 등이 있음.Array(배열): 같은 데이터 타입의 값들을 순서대로 저장하는 List라고 생각하면 됨.배열에는 순서가 있는 상태로 저장이 되어 어떠한 요소에 접근하기 편함. 중복된 값을 허용함.코드를 이렇게 작성해보니 .first, .last로 접근했을 때 오류가 발생Optional(kim) 등등 Optional이라고 뜨는데 이건 다음에 다루겠음.일단 보아하니 배열에 추가를 하게되면 해당 배열에서 가장 마지막에 추가가 되는 것을 알 수 있음.딕셔너리: 순서 없이 키(key)와 값(value)를 한 쌍으로 데이터를 저장하는 컬렉션 타입이번에도 마찬가지로 옵셔널에서 오류가 발생은 했지만 다른 부분은 출력이 잘..
for문간단히 설명하자면첫번째 for문 : name 배열에 있는 요소들을 반복해서 차례대로 출력을 하는 코드임. 배열을 이용해서 반복문을 돌릴 수 있음두번째 for문 : 0부터 4까지 1씩 더해서 반복문을 출력하는 코드임. stride를 이용해서 출력이 가능세번째 for문 : 두번째 for문과 동일한 출력이지만, 두번째 보다 간결하게 사용함. While문위 for문과 동일한 코드로 while문을 작성해봤음. for문보다는 코드가 길어졌음. 첫번째 while문은 i는 0부터 시작, 4미만까지(총 0, 1, 2, 3, = 4회 반복)반복하여 이름을 출력함, 반복할 때마다 i는 1씩 증가두번째 while문은 j는 0부터 시작, 5미만 까지(총 0, 1, 2, 3, 4 = 5회 반복)반복하여 숫자를 출력, 반복..
if문간단한 예시로 코드를 짜봄. a와 b의 if조건문은 성립하기 때문에 정답으로 출력됐지만,c는 "기영"이기 때문에 기철이 아니라서 else 문이 출력됨. else if 문도 한 번 예시코드를 보자면,이런식으로 age 가 8세이상 14세 미만일 경우 "초등학생", 17세 미만일경우 "중학생", 20세 미만일 경우 "고등학생" 으로 표현함마지막은 대학생이라고 해서는 안됨(30세일수도 있기 때문) 하지만 귀찮아서 대학생으로 그냥 적음. 그리고 if let 과 아래에 나올 guard let은 옵셔널 값을 확인하고 해당 값을 일시적으로 변수나 상수에 바인딩하는 Optional Binding 기능을 수행함. 옵셔널은 다음에 공부를 하고 정리할 것이니 일단은 가볍게 정리하고 패스함.여기서 optionalInt:..