본문 바로가기

분류 전체보기151

[Git]main, origin, remote, HEAD 의미 보호되어 있는 글 입니다. 2023. 7. 31.
[Swift] 타입 캐스팅(Type Casting) 머리말 포스팅을 하게 된 이유 수업 시간에 UITableViewCell? 타입의 cell이라는 상수에 하위 클래스의 CustomTableViewCell 타입으로 다운캐스팅(as!)을 하는 것을 배웠다. as라는 키워드도 익숙하지 않은데 물음표(?)나 느낌표(!)까지 들어가 있어서 더더욱 무서웠다... 이후에 다운캐스팅을 포함한 타입 캐스팅에 대해 개념도 배우고 실습도 했지만 아직 긴가민가 해서 포스팅을 하게 됐다. 강의 시간의 코드 일부 class CustomTableViewCell: UITableViewCell { // ... func configureCell(row: ToDo) { // ... } // ... } class CustomTableViewController: UITableViewContr.. 2023. 7. 28.
[UIKit] 값을 새로 저장해도 왜 화면에 나타나지 않을까(UserDefault와 UIViewController 생명 주기) 머리말 앱에 대한 설명 구현한 앱은 "나의 기분"이라는 탭에서 "감정을 나타내는 이모티콘 버튼"을 눌렀을 때, "기본 통계"라는 탭에서 얼마나 눌렀는지를 확인 할 수 있는 앱이다. 데이터의 저장 방법은 UserDefault 데이터를 저장하는 것에는 여러 방법이 있겠지만 여기서는 강의 시간에 배운 UserDefault를 이용했다. UserDefault에 대한 설명은 공식 문서에서 아래와 같다. An interface to the user’s defaults database, where you store key-value pairs persistently across launches of your app. 애플리케이션이 실행될 때 계속해서 키-값을 쌍으로 한 형태로 이를 저장하는, 사용자의 기본 데이터베이스.. 2023. 7. 26.
[Swift] 열거형과 원싯값 (feat. CaseIterable) 머리말 참고 자료 Enumerations - The Swift Programming Language 열거형 (Enumerations) - Swift 열거형(Enumerations) 열거형의 정의 공식 문서에서 정의한 열거형이란 아래와 같다. 열거형은 연관된 값들의 묶음에 대하여 공통된 타입을 정의하고, 코드에서 타입 세이프한 방식으로 그 값들을 작업할 수 있도록 한다. An enumeration defines a common type for a group of related values and enables you to work with those values in a type-safe way within your code. 열거형 구문(Enumeration Syntax) enum이라는 키워드로 열거형을.. 2023. 7. 25.
Git) local repository의 상태 3가지 (feat. remote) 목차 머리말 들어가기 전에 Git의 여러 상태와 각 상태 간의 변화에 대하여 개괄적으로 알아 보자. Git에 대한 전체적인 이미지와 흐름을 알고 있다면 해당 문제가 발생했을 때 좀 더 쉽게 접근하여 문제를 해결할 수 있을 것이다. 참고 자료 Git: How to start code changes, commit and push changes when working in a team | by Nikolas Begetis | Medium Git Workflow Git의 상태에 대한 설명을 글보다는 이미지를 먼저 살펴 보는 게 이해하기 더 쉽다. Git graph와 명령어 Local의 3가지 상태 a. Working Directory 말 그대로 "(현재) 작업 중인 디렉토리"라는 뜻으로, 파일을 수정/삭제할 수.. 2023. 7. 24.
[Swift] 번호 기호(#)로 Raw String 사용하기 머리말 참고 자료 Extended String Delimiters - Strings and Characters | Documentation 이스케이프 문자를 문자열로 표현하기 위한 번거로움 해당 문자 자체에 지정된 뜻을 가져서 곧바로 표현이 되지 않는 이스케이프 문자를 표현하기 위해서는 아래와 같이 문자의 바로 왼쪽에 역슬래시(\) 문자를 입력해야 한다. let backslash = "\\\\" // 역슬래시 let lineFeed = "\\\\n" // 줄바꿈 문자(\\n) let carriageReturn = "\\\\r" // 캐리지리턴 문자(\\r) let tab = "\\\\t" // 탭 문자(\\t) let quotationMark = "\\"" // " 큰따옴표 문자 하지만 하나의 문자열 안.. 2023. 7. 23.
[UIKit] 모서리 깎기와 그림자 설정을 동시에 하기 머리말 문제점 그림자 처리를 하려고 하면(.layer.shadow~) 그림자만 남고, 모서리를 깎으려 하면(.layer.cornerRadius) 모서리만 깎여지는 문제가 발생했다. 하나의 ImageView에 두 설정을 하려면 양립 불가능하다는 피드백을 받았다. 완성 화면 해결책 네 개의 View 안에 각각의 ImageView를 넣었다. 여기에 ImageView를 실제로 화면의 모서리를 깎고, 그 상위의 View에 그림자를 넣는 방식으로 문제를 해결했다. ViewController의 계층 구조 코드 import UIKit class DatePickerViewController: UIViewController { ... @IBOutlet var topLeftView: UIView! @IBOutlet var .. 2023. 7. 20.
[Swift] 매개변수 vs 전달인자 (feat. 아규먼트 레이블) 머리말 함수에서 사용되는 여러 용어 함수를 사용할 때면 매개변수, 전달인자, 인수, 아규먼트 레이블, 파라미터(패러미터), 아규먼트 등 여러 용어가 혼용하여 쓰인다. 특히나 Swift에서는 "아규먼트 레이블(argument label)"이라는 새로운 개념이 있어서 각 용어를 제대로 구분할 필요가 있다. 따라서 관련 용어를 확실하게 구분하기 위해 이번 포스팅을 하게 되었다 참고 자료 Functions | Documentation 함수 (Functions) - Swift 용어 정리 매개변수(parameter) 함수를 '정의'할 때 쓰이는 변수의 이름 그 자체 이름에 '변수'가 들어간 것을 알 수 있듯이 변수이다 하지만 엄밀히 말하면 Swift에서는 매개변수가 변수가 아니라 상수이다. Swift에서는 매개변수.. 2023. 7. 19.
[백준] (Swift) 11653번: 소인수분해 머리말 문제 링크 11653번: 소인수분해 이 문제를 선택한 이유 Swift 문법 연습(guard, nil coalescing) 풀이 풀이 순서 입력 받은 문자열 값을 정수 num으로 변환 나누어야 할 소수를 2로 초기화 num이 해당 소수로 나누어진다면, num을 소수로 나눈 다음 해당 소수를 한번 출력 3번이 해당하지 않으면 prime을 1 증가 3~4번을 반복하는 while 문 작성 스위프트 코드 import Foundation var num = Int(readLine() ?? "") ?? 0 var prime = 2 while num > 1 { guard num 2023. 7. 12.
[백준] (Python) 12865번: 평범한 배낭 보호되어 있는 글 입니다. 2023. 7. 11.
반응형