MVC 패턴 적용하여 테이블 뷰 구성하기 지난번 MVC 패턴의 기본 개념정도만 정리하는데 그친 반면에 오늘은 이 패턴을 직접 적용시켜 간단한 테이블 뷰를 만들어 보려고 한다. Swift Architecture , MVC 개념 정리 아키텍처(Architectuer) 애플리케이션을 설계하고 구축하는데 사용되는 구조와 패턴을 나타낸다. 모델의 구성과 동작 원리, 구성요소 간의 관계 및 시스템 외부 환경과 관계 등 포괄하여 설명하는 dongdida.tistory.com 먼저 MVC 패턴을 다시 한번 간단하게 말해보면 소스 코드 설계 기법으로써, 모델(Model) , 뷰(View), 컨트롤러(Controller) 의 핵심구조를 이용하여 애플리케이션을 설계하는 것을 말한다. 모델(Model)은 데이터를 담당하고 뷰..
2024.03.19 - [◽️ Programming/T I L] - ToDoList 앱 만들기 (1) 오늘도 하루종일 ToDoList 만들기에만 모든 시간을 다 쏟았다.. 내일은 화면 이동 , 데이터 이동 관련 강의 좀 꼭 들어야 할 것 같다. 목표는 생성되어있는 Cell 을 애니메이션 효과를 넣어 삭제하는 것 까지 기능 구현을 완료하는게 목적이었는데 아직까지 해결되지 않은 문제 때문에 목표치를 달성하지 못했다.. 내일은 꼭 해결방법을 얻어 원하는 목표치까지 달성 하고 강의까지 듣는 알찬 하루였음 좋겠다 어제는 UITableViewDataSource, UITableViewDelegate 를 활용하여 데이터 연결을 한 후 테이블 뷰에 원하는 셀을 띄우는 것 까지 완료하였다. 오늘은 버튼을 눌러 알럿을 띄..
오늘은 하루종일 ToDoList 만들기 과제에 모든 시간을 쏟아버렸다.. TableView Delegate 패턴의 적용은 간단하기도 하고 필수 구현내용이 없어서 금방 적용할 수 있었지만, Datasource의 경우 필수 구현내용 함수에서 자꾸만 에러가 나 시간을 너무 많이 잡아먹었다. 차라리 코드로 짜버리고 싶은 마음이 굴뚝 같았지만 과제 구현 사항이 Storyboard를 사용하여 구현해야 하므로 오늘 헤맸던 구간에 대해서 기록을 해두려고 한다. Storyboard 를 사용하여 TableView 세팅하기 Storyboard 컴포넌트 VC 내 TableView를 넣어주고 오토레이아웃을 topAnchor 만 버튼의 height 만큼 (40) 넣어주고 나머지 면을 0으로 설정해 가득 차게 구성하였다. 그 이후..
앱의 생명주기 앱의 생명주기는 앱이 시작되고 종료될 때까지의 주요 이벤트 및 상태를 설명하는 개념이다. Not Running : 앱이 실행되지 않은 상태이며, 시스템이 앱을 아직 시작하지 않았거나 앱이 종료되었을때의 상태 Inactive : 앱이 실행 중이지만 이벤트를 받지 않는 상태이다. 앱이 백그라운드에 있거나 다른 앱이 화면을 가리고 있을때의 상태 아래에서 위로 스와이프 하는 순간 InActive 상태가 된다. Active : 앱이 화면에 표시되고 사용자 이벤트를 처리하는 상태이다. 앱이 직접 상호작용하고 화면에 표시될 때 이 상태가 된다. Background : 앱이 백그라운드에서 실행 중이고 코드를 실행하거나 업데이트 할 수 있는 상태이다. 예를 들어 위치 업데이트 및 네트워크 작업 수행과 같다..
두 배열 내 요소 비교 ( contains , elementsEqual ) if comNumbers.elementsEqual(playerNumbers) { print("정답입니다!!!") gameAttempts.append(attemptCount) break } else { strike = 0 ball = 0 for i in 0..
if let 문 내 쉼표(,) 를 통한 다중 옵셔널 바인딩 if let choice = readLine(), let choiceInt = Int(choice) { switch choiceInt { case 1: print("게임을 시작합니다.") GameStart() break case 2: print("") GameRecords() break case 3: print("숫자 야구 게임을 종료합니다.") GameEnd() break default: print("잘못된 입력입니다. 1, 2, 3 중에서 선택해주세요.") } } else { print("입력이 잘못되었습니다.") 게임을 시작하기 전에 선택 항목을 받아 각자 다른 클래스를 실행시키는 식을 만들었다. 일단 각자의 식을 실행하려면 각기 다른 입력..