본문 바로가기

전체 글133

[👾 Programmers] 26. 음양 더하기 1. 문제 설명 (📎Link)어떤 정수들이 있습니다. 이 정수들의 절댓값을 차례대로 담은 정수 배열 absolutes와 이 정수들의 부호를 차례대로 담은 불리언 배열 signs가 매개변수로 주어집니다. 실제 정수들의 합을 구하여 return 하도록 solution 함수를 완성해주세요. 2. 제한사항absolutes의 길이는 1 이상 1,000 이하입니다. absolutes의 모든 수는 각각 1 이상 1,000 이하입니다. signs의 길이는 absolutes의 길이와 같습니다. signs[i] 가 참이면 absolutes[i] 의 실제 정수가 양수임을, 그렇지 않으면 음수임을 의미합니다. 📝 문제import Foundationfunc solution(_ absolutes:[Int], _ signs:[.. 2024. 7. 10.
[Swift 🍎] configureUI() 언제 사용하는가?viewDidLoad() 메서드가 간결해지고, UI 설정 코드를 별도의 메서드로 분리하여 코드의 가독성과 유지보수성 을 높일 수 있다사용 전  viewDidLoad() 메서드에서 모든 UI 설정 작업을 진행사용 후  viewDidLoad() 메서드에서 configureUI() 메서드를 호출하고, configureUI() 메서드에서 UI 설정 작업을 진행  사용 전후 비교configureUI 사용 전 코드 예시import UIKitclass ViewController: UIViewController { private let myButton: UIButton = { let button = UIButton(type: .system) // +버튼 세팅 값 r.. 2024. 7. 10.
[Swift 🍎] ViewController 메서드 1. loadView()이 메서드는 뷰를 직접 프로그래밍 방식으로 설정할 때 사용된다(코드베이스)스토리보드나 XIB 파일을 사용하는 경우 직접 구현할 필요는 없다사용하지 않아도 상관 없지만 오류 발생 확률이 있다 override func loadView() { // UIView를 직접 생성하여 뷰로 설정합니다. let view = UIView() view.backgroundColor = .white // UIButton을 추가합니다. let button = UIButton(type: .system) button.setTitle("Press Me", for: .normal) button.frame .. 2024. 7. 10.
KPT 회고란? 프로젝트 회고 과정 중 진행하는 일부분짧은 시간에 구성원들의 생각을 공유하고 실행 및 측정 가능한 Action을 도출한다Keep (유지할 점)현재 만족하고 있는 부분계속 이어갔으면 하는 부분Problem (문제점)프로젝트 과정 중 겪은 어려움이나 문제점개선이 필요하다고 생각되는 부분Try (시도할 점)Problem에 대한 해결책과 방안 모색문제를 해결하기 위한 구체적인 계획  이번 프로젝트 KTP 회고Keep (유지할 점)첫 협업의 의미: 첫 협업이라는 점에서 매우 의미가 깊었음.구현의 만족: 프로그램이 실제로 돌아가고 구현이 되었다는 점에서 만족스러웠음.자기 주도 학습: 배우지 못한 내용들을 스스로 찾아서 구현하고 적용시킨 점이 의미가 컸음.Problem (문제점)완벽하지 못한 구현: 프로그램이 완벽하.. 2024. 7. 9.
[강의노트👩🏻‍💻] ViewController 생명주기 이론 init 뷰 컨트롤러를 생성했다 (생성자) loadViewViewController가 반드시 가지게 되는 ViewView의 속성에 해당하는 View를 수동으로 생성하고 초기화 할 수 있는 책임을 갖는 생명주기다메모리에 올라가기 전 사전 세팅을 마칠 수 있다 ViewDidLoadView가 메모리 위에 올라온다(유저 눈으로 확인이 가능한 바로 전 단계)유효한 프레임값을 얻을 수 없다한번만 호출 된다 ViewWillAppear뷰 컨트롤러의 뷰가 뷰 계층에 추가되기 직전에 호출됨여러번 호출 될 수 있다View가 나타나고 있다(현재 진행형)예를들면, 뷰가 등장할 때 마다 새로운 화면을 보여주고 싶어! ViewIsAppearing유저 눈에 보이고 있음 ViewDidAppearView가 정말로 나타난다유저 눈으로 볼.. 2024. 7. 9.
[🍎 Swift 문법] sort 와 sorted sort() 함수원본 배열을 오름차순으로 정렬해준다(직접 수정)내림차순으로 정렬 시 sort(by: >)를 사용한다 오름차순var numbers = [3, 1, 4, 1, 5, 9, 2, 6, 5]numbers.sort()print(numbers) // 출력: [1, 1, 2, 3, 4, 5, 5, 6, 9] 내림차순var numbers = [3, 1, 4, 1, 5, 9, 2, 6, 5]numbers.sort(by: >)print(numbers) // 출력: [9, 6, 5, 5, 4, 3, 2, 1, 1] sorted() 함수원본 배열을 건드리지 않고 복사본을 만들어서 오름차순으로 정렬한 후 정렬된 요소를 반환한다(사본 생성)사본 생성 시 메모리를 많이 먹게 되므로 원본 배열이 중요한 경우 sor.. 2024. 7. 9.
[👾 Programmers] 25. 나누어 떨어지는 숫자 배열 1. 문제 설명 (📎Link)array의 각 element 중 divisor로 나누어 떨어지는 값을 오름차순으로 정렬한 배열을 반환하는 함수, solution을 작성해주세요.divisor로 나누어 떨어지는 element가 하나도 없다면 배열에 -1을 담아 반환하세요. 2. 제한사항arr은 자연수를 담은 배열입니다.정수 i, j에 대해 i ≠ j 이면 arr[i] ≠ arr[j] 입니다.divisor는 자연수입니다.array는 길이 1 이상인 배열입니다.📝 문제func solution(_ arr:[Int], _ divisor:Int) -> [Int] { return 0}  💻 내가 푼 방법 전체 코드func solution(_ arr:[Int], _ divisor:Int) -> [Int] .. 2024. 7. 9.
[꿀팁] 초 단위 실행 메서드 + 2 등 초 단위 입력 시 하단의 실행문 N초 뒤 실행반복문 등 내부에서 활용할 수 있을 것으로 예상함!DispatchQueue.main.asyncAfter(deadline: DispatchTime.now() + 2) { //실행문 입력} 출처 : 김리인님 2024. 7. 9.
[👾 Programmers] 24. 서울에서 김서방 찾기 1. 문제 설명 (📎Link)String형 배열 seoul의 element중 "Kim"의 위치 x를 찾아, "김서방은 x에 있다"는 String을 반환하는 함수, solution을 완성하세요. seoul에 "Kim"은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다.2. 제한사항seoul은 길이 1 이상, 1000 이하인 배열입니다.seoul의 원소는 길이 1 이상, 20 이하인 문자열입니다."Kim"은 반드시 seoul 안에 포함되어 있습니다. 📝 문제func solution(_ seoul:[String]) -> String { return 0}  💻 내가 푼 방법 및 풀이 전체 코드func solution(_ seoul:[String]) -> String { fo.. 2024. 7. 8.
[두번째 팀 프로젝트] 모바일 키오스크 3️⃣ 오늘은 팀플 3일차!각자 작업물 가지고 리뷰하는 시간을 가졌고 아래와 같은 피드백이 나왔다. 팀 프로젝트 1차 피드백컬렉션뷰 셀간 간격 조정이미지 사이즈 키우기음료 이름 폰트 사이즈 키우기가격 폰트 볼드 처리하기 & 3번째 줄 고정 수정 1.  CollectionView Cell 간격 수정extension SBMenuController: UICollectionViewDelegateFlowLayout { func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize { // 셀.. 2024. 7. 5.