일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 오공완
- 패캠인강후기
- 코딩테스트
- 패스트캠퍼스후기
- Components
- 연결리스트생성
- 스위프트
- 사이드프로젝트10개기술스택으로구현하는풀스택서버리스프로젝트withReact
- 환급챌린지
- ios
- HTML
- 직장인인강
- 실패율
- eventcapturing
- 이벤트버블링
- 패스트캠퍼스
- MVMM
- 이벤트캡처링
- hig
- swift
- 패캠챌린지
- stopPropagation
- 수강료0원챌린지
- JavaScript
- 직장인자기계발
- 프로그래머스
- 연결리스트삭제
- 연결리스트삽입
- eventbubbling
- 자료구조
- Today
- Total
목록전체 글 (93)
날쌘 개발자
시저 암호 문제 설명 어떤 문장의 각 알파벳을 일정한 거리만큼 밀어서 다른 알파벳으로 바꾸는 암호화 방식을 시저 암호라고 합니다. 예를 들어 "AB"는 1만큼 밀면 "BC"가 되고, 3만큼 밀면 "DE"가 됩니다. "z"는 1만큼 밀면 "a"가 됩니다. 문자열 s와 거리 n을 입력받아 s를 n만큼 민 암호문을 만드는 함수, solution을 완성해 보세요. func solution(_ s:String, _ n:Int) -> String { let alpha = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"] var res..

delegate delegate(델리게이트)는 거의 안보이는곳이 없을정도로 IOS를 공부하다보면 자주 보이는.. 그만큼 중요한 개념이다. 직역하면 '대리자' 혹은 '위임자' 라고들 부르고 정의를 검색해보면 '소프트웨어 엔지니어링에서 Delegate 패턴은 객체 지향 디자인 패턴중 하나로써 상속과 비슷하게 재사용을 가능하게 해주는 패턴' 이라고 나오는데, 이놈이 하는일은 대리자 라는 말 그대로 일을 대신해준다고 보면 되겠다. 조금 풀어 설명하자면 - 객체 지향 프로그래밍에서 하나의 객체가 모든 일을 처리하는것이 아닌, 처리 해야 할일 중 일부를 다른 객체에 넘겨 대신 해주는 게 델리게이트 패턴 이라고 한다. 이 델리게이트라는놈을 알기 위해서는 먼저 저번에 공부했던 프로토콜에 대해 잘 알아야한다. 프로토콜은..
문자열 내림차순으로 배치하기 문제 설명 문자열 s에 나타나는 문자를 큰것부터 작은 순으로 정렬해 새로운 문자열을 리턴하는 함수, solution을 완성해주세요. s는 영문 대소문자로만 구성되어 있으며, 대문자는 소문자보다 작은 것으로 간주합니다. func solution(_ s:String) -> String { return String(s.sorted(by: >)) } 문제를 읽고 혹시나싶어서 해봤는데 바로 풀려버렸다 말그래도 sorted를 이용해 > 내림차순으로 정렬하니 대소문자까지 알아서 배치되었다.

MVVM 저번에 설명했던 MVC패턴과 마찬가지로 앱개발에 자주 사용되는 디자인 패턴중 하나이다. 다만 현재 내가 주로 사용하는 프레임워크인 UIKit는 MVC패턴을 주로 기반으로 하는 반면, MVVM패턴은 SwiftUI프레임워크에서 주로 사용하는 디자인 패턴이라고 한다. 이번에 작게 개인적으로 진행하게된 프로젝트가 UIkit프레임워크를 기반으로 하고 MVMM패턴을 채택한 프로젝트라, 겸사겸사 MVMM에 대해 먼저 알아보기로 하였다. MVVM은 MVC 의 C에 해당하는 Controller를 빼고 대신 ViewModel을 추가한 패턴이다. ViewModel 또한 Controller처럼 View와 Model사이의 중간역할을 한다. 하나씩 설명해보자면 Model MVC에서의 그것과 마찬가지로 실제적 데이터에 해..
3진법 뒤집기 문제 설명 자연수 n이 매개변수로 주어집니다. n을 3진법 상에서 앞뒤로 뒤집은 후, 이를 다시 10진법으로 표현한 수를 return 하도록 solution 함수를 완성해주세요. 입출력 예시) 입력 리턴 기대값 45 7 125 229 입출력 예 #1 답을 도출하는 과정은 다음과 같습니다. n (10진법) n (3진법) 앞뒤 반전 (3진법) 10진법으로 표현 45 1200 0021 7 따라서 7을 return 해야 합니다. import Foundation func solution(_ n:Int) -> Int { var num = n var result:[Int] = [] var resultNum:Int = 0 var count = 1 while num > 0 { result.append(nu..
체육복 문제 설명 점심시간에 도둑이 들어, 일부 학생이 체육복을 도난당했습니다. 다행히 여벌 체육복이 있는 학생이 이들에게 체육복을 빌려주려 합니다. 학생들의 번호는 체격 순으로 매겨져 있어, 바로 앞번호의 학생이나 바로 뒷번호의 학생에게만 체육복을 빌려줄 수 있습니다. 예를 들어, 4번 학생은 3번 학생이나 5번 학생에게만 체육복을 빌려줄 수 있습니다. 체육복이 없으면 수업을 들을 수 없기 때문에 체육복을 적절히 빌려 최대한 많은 학생이 체육수업을 들어야 합니다. 전체 학생의 수 n, 체육복을 도난당한 학생들의 번호가 담긴 배열 lost, 여벌의 체육복을 가져온 학생들의 번호가 담긴 배열 reserve가 매개변수로 주어질 때, 체육수업을 들을 수 있는 학생의 최댓값을 return 하도록 solution..
원래는 프로토콜 개념을 이어서 정리하려 했는데... 알아보기전에 먼저! 프로퍼티라는 개념(?)을 매번 사용하지만 뭔가 프로퍼티의 개념과 종류.. 종류별 특징들에 대한 개념이 아직 정립되지 않은것 같아 한번 정리하고 가려고 한다. 먼저 프로퍼티라는 놈은, 필드(데이터 멤버)와 메소드 간 기능의 중간인 클래스 멤버의 특수한 유형 이라고 하는데, 쉽게말해 클래스/구조체/열거형 에 값을 연결해주는 놈이다. 프로퍼티의 종류는 크게 저장 프로퍼티 - 상수 / 변수 값을 저장하는 프로퍼티 연산 프로퍼티 - 특정 연산을 수행하여 값을 반환하는 프로퍼티 타입 프로퍼티 - 타입 자체에 연결되는 프로퍼티 이렇게 세가지로 나뉜다. 한놈씩 살펴 보겠다. 저장 프로퍼티 (Stored Property) 흔히 클래스와 구조체에서 선..
Interface Essentials https://developer.apple.com/design/human-interface-guidelines/ios/overview/interface-essentials/ [Interface Essentials - iOS - Human Interface Guidelines - Apple Developer Interface Essentials Most iOS apps are built using components from UIKit, a programming framework that defines common interface elements. This framework lets apps achieve a consistent appearance across the..

문자열 압축 문제 설명 데이터 처리 전문가가 되고 싶은 "어피치"는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문자열에서 같은 값이 연속해서 나타나는 것을 그 문자의 개수와 반복되는 값으로 표현하여 더 짧은 문자열로 줄여서 표현하는 알고리즘을 공부하고 있습니다. 간단한 예로 "aabbaccc"의 경우 "2a2ba3c"(문자가 반복되지 않아 한번만 나타난 경우 1은 생략함)와 같이 표현할 수 있는데, 이러한 방식은 반복되는 문자가 적은 경우 압축률이 낮다는 단점이 있습니다. 예를 들면, "abcabcdede"와 같은 문자열은 전혀 압축되지 않습니다. "어피치"는 이러한 단점을 해결하기 위해 문자열을 1개 이상..
부족한 금액 계산하기 문제 설명 새로 생긴 놀이기구는 인기가 매우 많아 줄이 끊이질 않습니다. 이 놀이기구의 원래 이용료는 price원 인데, 놀이기구를 N 번 째 이용한다면 원래 이용료의 N배를 받기로 하였습니다. 즉, 처음 이용료가 100이었다면 2번째에는 200, 3번째에는 300으로 요금이 인상됩니다. 놀이기구를 count번 타게 되면 현재 자신이 가지고 있는 금액에서 얼마가 모자라는지를 return 하도록 solution 함수를 완성하세요. 단, 금액이 부족하지 않으면 0을 return 하세요. import Foundation func solution(_ price:Int, _ money:Int, _ count:Int) -> Int64{ var total = money for i in 1...c..