본문 바로가기

분류 전체보기

(53)
MVC 패턴 공부하는 것을 정리하는 목적으로 사용하고 있습니다. 건전한 비판은 언제나 환영합니다 ~~ 이러한 코드를 만들기 위해서는 main에서 storyboard를 이용해 UI 배치후에 ViewController에다가 코드를 치시면 됩니다. // // ViewController.swift // Quizzler-iOS13 // // Created by Angela Yu on 12/07/2019. // Copyright © 2019 The App Brewery. All rights reserved. // import UIKit class ViewController: UIViewController { @IBOutlet weak var questionLabel: UILabel! @IBOutlet weak var trueB..
Swift 기본 문법 - 자료형 이 글은 공부한 내용을 기반으로 정리하는 글입니다. 언제든 건전한 비판은 환영합니다. 상수와 변수 스위프트는 함수형 프로그래밍의 패러다임을 채용한 언어이므로 불변 객체를 굉장히 중요시 한다. // 상수 선언 let 변수이름 : 타입 = 값 // 변수 선언 var 변수이름 : 타입 = 값 값이 명확하다면 타입 생략이 가능하지만, 나중에 값을 넣을 경우는 꼭 타입을 명시해줘야 한다. //타입 생략 var number = 123 let str = "kor" //값을 나중에 저장하기 var number : Int let str : String //값 저장 number = 123 str = "kor" - 변수 데이터 vs 상수 데이터 변수는 변경 가능한 데이터지만 상수는 변경 불가한 데이터이다. 그래도 이해가 안..
ViewController 특징 및 생명주기 - ViewController 생명주기 View Controller의 생명주기는 Scene의 전환과 복귀에 밀접하게 연관되어 있습니다. 일반적으로 새로운 장면으로 전환하거나 이전 화면으로 복귀하는 과정에서 View Controller의 객체의 생성과 소멸을 발생하기 때문입니다. 엡을 처음 실행하거나 새로운 장면으로 전환될때 그 장면을 담당하는 ViewController객체가 새로 생성됩니다. 생성된 객체는 메모리에 로드되어 일을 하게 됩니다. 주어진 역할이 끝나면 메모리에서 해제되면서 소멸합니다. - view 상태 변화 ViewController는 다음과 같이 4가지 상태로 나눌 수 있습니다 Appearing(나타나는 중) : ViewController가 스크린에 등장하기 시작한 순간부터 등장을 완료하기..
[IOS] 앱의 생명주기(LifeCycle) - 생명주기(Life Cycle) 생명주기라는 것은 앱의 최초 실행부터 앱이 완전히 종료되기까지 앱이 가지는 상태를 뜻합니다. 먼저 - 엡 상태(App State) App에는 5가지 App State가 존재합니다. Not Running : 앱이 실행되지 않았거나, 완전히 종료되어 동작하지 않는 상태. Inactive(Foreground) : 앱이 실행되면서 foreground에 진입하지만, 어떠한 이벤트도 받지 않는 상태, 앱의 상태 전환 과정에서 지나가는 단계이다. Active(Foreground) : 앱이 화면상에서 사용자에게 보이며 실행중이며, 이벤트를 받고 있는 상태. Backgroud : 앱이 백그라운드에 있으며, 다른 앱으로 전환되었거나 홈버튼을 눌러 밖으로 나갔을 때의 상태. 예를 들면 유튜..
완전탐색 완전탐색이란 무엇인가? 완전탐색이라는 것은 모든 것을 다 찾아본다는 이야기이다. 예를 먼저 들어보는게 가장 설명하기가 쉬울것 같아서 예를 먼저 설명하겠습니다. //10개의 상자와 1개의 사과가 있습니다. 이 중에 1개의 사과를 10개의 상자 중에 한 군데에 감추었습니다. //이 때 1개의 사과가 있는 상자를 찾으세요 위와 같은 질문에는 가장 단순한 방법은 한 개씩 상자를 오픈하면서 찾아봅니다. 물론 이 글을 보는 사람에게는 이거보다 ‘이진 탐색’으로 찾는게 더 빠르지라고 이야기 할 수 있겠지만 이 글은 완전탐색을 설명하기 위한 글입니다. ^^ 조금만 참아주세요. 다시 한번 이야기하자면 쉽게 한 개씩 다 찾아보겠습니다. 코드로 설명하자면 public static void main(String[] args)..
깃허브 에러 remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead. 갑자기 잘되던 push 가 에러가 발생하였다. 저 내용을 찾아보았는데 Password 인증방식이 달라서 personal access token으로 사용하라는 내용이었다. 이미 깃허브에서는 공지를 한 상황이라서 저 내용을 따른 것이다. 문제해결 깃허브에서 Setting을 들어간다. 2. Developer settings에 들어간다. 3. personal access tokens에 들어간다. 4. Generate new token을 클릭한다. 5. 누르면 이런 내용이 나오는데 필요한 사항이 있으면 체크하고 Generate token 클릭 그리고 중요한 것이 있다 나가지 말고 토큰을 복사한다. 6. Mac keyChain 삭제 commond+space를 누르고 keyChain을 검색합니다. 그 다음 githu..
git-lfs CocoaPod의 네이버 NMapsMap 라이브러리 사용시 100Mb 이상의 용량을 가지고 있어서 Git Push가 불가능 하다는 안내문이 있었기에 git-lfs에 대해서 찾아보았다. git-lfs란? Git Lfs를 먼저 풀어서 보면 Large File Storage라고 볼 수 있다. 이게 무슨 말이냐면 먼저 Git이라는 것은 여러개의 작은 소스코드 파일들을 위한 버전 컨트롤 시스템(VCS)이다. 그럼에도 불구하고 큰 용량 파일을 git repo에 올려야 하는 상황이 발생할 수 있다. 기본적으로 git에 50MB이상 올리면 Warning표시가 나고 100MB이상을 올리면 push가 에러가 발생한다. Git Lfs를 설치를 하게 된다면은 큰 용량이 있는 파일도 올릴 수가 있다. lfs는 용량이 큰 파일을..
Firebase 이미지 403 에러 발생 이유 FireStorage에서 참조 값을 받아오기 위해 접근하다가 에러가 발생 하였다. 해결 방법 Storage → Rules 에 들어가고 난 후에 밑과 같이 바꾼다. service firebase.storage { match /b/{bucket}/o { match /{allPaths=**} { allow read, write: if request.auth == null; } } }
class 'ViewController.swift' has no initializers class 'ViewController.swift' has no initializers 프로젝트를 하다가 이런 에러를 발생하게 되었다. 이 에러가 어떨때 발생 하냐면 해당 클래스에 초기화가 되어 있지 않은 변수 또는 오브젝트가 있다는 것이다 예를 들면 밑에 예시처럼 발생한다. class ViewController:UIViewController { var s:String // 실수 코딩 } 이게 무엇이 문제냐면 변수 s뒤에 값을 넣어 주는 것을 빼먹거나 ‘!’선언을 안했을 경우 에러가 발생한다.
초기뷰컨트롤러 선언 에러(Failed to instantiate the default view controller for UIMainStoryboardFile 'Main') 가끔 하다가 보면 정신을 놓을 때가 있는데 그냥 처음 View Controller라고 알려주면 된다 Is Initial View Controller 체크