TIL

· TIL
내일배움캠프 앱개발 iOS 트랙 본캠프 2주차 Today I Learned 오늘의 (개인적인) 업적 https://github.com/yenny42/nbc_camp/tree/main/Basic_Calculator 어제 헤매던 사칙연산을 구현했다. 기본적으로 0~9까지의 숫자를 입력할 수 있고 + - * / 네가지 연산이 가능하다. 점 . 을 사용해서 소수를 계산할 수도 있다. 기본적으로 아이폰의 기본 앱인 계산기를 많이 참고했다. 나름 iOS 강의를 듣는 중이니... 구현한 내용 @IBAction func didTapNumButton 숫자 버튼을 누를 때 마다 동작 입력하는 숫자를 curreuntDisplay에 담아서 label에 노출시킴 입력된 숫자를 numberValue[0] 에 Double로 형변환..
· TIL
내일배움캠프 앱개발 iOS 트랙 본캠프 2주차 Today I Learned # 오늘 한 것? 스토리보드로 계산기 틀을 만들었다. UIButton과 UILabel을 사용했다. 생긴 것은 나름 iOS 수업이니까.. 아이폰 계산기를 보고 비슷하게 해봤다. 아직 구현하기 힘들 것 같은 버튼은 제외시켰다. # UIButton의 sender란 무엇일까? 액션 핸들러를 담당하는 객체! 라고 공식 문서 에는 적혀 있는데.. 말을 참 어렵게 하는 것 같다. 그냥 버튼 그 자체라고 보면 될 것 같다. sender 하위에 currentTitle 이라는 속성이 있는데 이걸 이용하면 버튼의 글자를 받아올 수 있다. 하마터면 숫자버튼 10개랑 기능버튼 6개(혹은 그 이상)을 일일히 IBOutlet으로 연결해서 가져올 뻔 했다. ..
· TIL
내일배움캠프 앱개발 iOS 트랙 본캠프 2주차 Today I Learned 오늘은 깃허브로 좀 스트레스 받아서 일기형식 TIL. 깃헙에 알고리즘 풀이를 백업하기 위한 리포지토리를 만든 다음, 그걸 클론 받아서 사용하려니까 xcode에서 열리지를 않았다. 컴도 껐다 켜보고 깃 폴더도 삭제하고 다시 초기화 하고.. 적어도 오늘 세시간은 이걸로 진땀을 뺐다. 결국엔 깃헙 사이트에서 파일을 올린 뒤, 그 파일을 클론 받아서 사용하는 걸로 나 혼자 합의를 봤다. 팀플 하기 전에 해결을 봐야 한다... 오늘은 해결을 못 봤지만 근 시일 내로 반드시 찾아봐야 겠다 싶어서 검색했던 기록이라도 백업해둔다... Please make sure you have the correct access rights and the re..
· TIL
내일배움캠프 앱개발 iOS 트랙 본캠프 1주차 Today I Learned # 프로그래머스 문제 _ 링크 :: 제일 작은 수 제거하기 (Swift) # 발생한 에러 알고리즘 문제를 풀다가 처음으로 시간초과를 마주했다. 시간초과는 테스트 케이스 1번에서만 발생했지만, 다른 테스트 케이스들도 이상하게 오래 걸렸다. # 오류를 낸 코드 func solution(_ arr:[Int]) -> [Int] { guard arr.count != 0 else { return [-1] } let result = arr.filter{ $0 > arr.min()! } return arr.count [Int] { guard arr.count != 0 else { return [-1] } let minValue = arr.min..
· TIL
내일배움캠프 앱개발 iOS 트랙 본캠프 1주차 Today I Learned filter(_:) -> https://yy-dev.tistory.com/62 주어진 값을 매개변수의 조건에 맞게 걸러낸다 주어진 값 - 대부분 콜렉션 매개변수 - Bool 타입으로 반환되는 클로저 프로그래머스 문제 풀이 https://yy-dev.tistory.com/59 해당 문제의 경우, 나는 for - in 을 돌려서 조건에 부합하는 요소를 걸러냈다. 그리고 조건 또한 단순히 배열로 박아두었다 다른 사람의 풀이를 보고... 우선, 조건이 0 이상 9 이하로 아주 단순하고 명확했다 ... 범위 연산자를 사용해서 0 ... 9 로 지정할 수 있었다 나는 해당 0 ... 9 의 범위 내에서, 주어진 배열에 포함되는 요소가 없다면..
· TIL
내일배움캠프 앱개발 iOS 트랙 본캠프 1주차 Today I Learned 성취 - 오늘의 나는 무엇을 했는지 내배캠에서 git의 사용법, github를 이용한 협업에 관한 특강을 마련해주었다 기본적으로 터미널에서 쓸 수 있는 리눅스 키워드를 알게 되었다 git 에 데이터를 올리거나 복제할 때 사용하는 키워드를 알게 되었다 개선 - 어떤 문제를 겪었는지, 어떻게 해결할 것인지 예시로 VScode를 사용해서 알려주셨기 때문에 Xcode 에서의 용법을 다시 익혀야합니다 🤔 이미 기존에 사용하던 개발자들이 블로그/유튜브에 잘 정리를 해 두셨을 것이기 때문에 그 글을 잘 읽으며 파악하도록 해야만!! ⭐ 내배캠에서 제공한 강의를 보며 만든 프로젝트를 깃허브에 올려보며 사용법을 익혀봅시다 ⭐ 학습 - 나는 어떤 것..
· TIL
내일배움캠프 앱개발 iOS 트랙 본캠프 1주차 Today I Learned 성취 - 오늘의 나는 무엇을 했는지 상속 Inheritance 과 재정의 Overriding 에 대해 공부 프로퍼티 감시자(옵저버) Property Observer 에 대해 공부 개선 - 어떤 문제를 겪었는지, 어떻게 해결할 것인지 스위프트에서 중요한 개념인 상속에 대해 공부했다. 이전에 자바할때 고생을 해서 그런가 상속 개념 자체가 어렵진 않았다 그러나 용법이 다른 부분이 많아서 그런 부분을 중심적으로 파악했다 공식문서의 워딩이 이해하기 힘들어서, 이미 파악한 뒤 정리해서 기록한 다른 개발자분들의 블로그를 많이 읽었다 학습 - 나는 어떤 것을 배웠는지 상속 (Sub-Classing)이란, 어떤 한 클래스가 다른 클래스로부터 프로..
· TIL
내일배움캠프 앱개발 iOS 트랙 본캠프 1주차 Today I Learned 성취 - 오늘의 나는 무엇을 했는지 구조체, 클래스, 열거형, 클로저... 사전캠프서 봤던것을 쭉 복습하다가 프로퍼티에 발이 턱 걸렸다😡 스위프트에서 사용한다는 ARC에 대한 내용을 공식 도큐먼트를 통해 학습했다 저장/연산 프로퍼티에 대한 내용을 학습했다 개선 - 어떤 문제를 겪었는지, 어떻게 해결할 것인지 ARC autumatic reference counting 자동 참조 세기 말 그대로 자동으로 참조의 갯수를 세어준 다음, 사용하지 않는다면 메모리를 해제해준다는 의미❗❗ 왜 자동으로 해줄까? Heap에 저장되는 참조타입의 클래스는 원래대로라면 프로그래머가 직접 할당하고 해제를 해주어야 한다 -> 과거 오브젝티브 C 시절의 M..
· TIL
내일배움캠프 앱개발 iOS 트랙 사전캠프 Today I Learned 성취 - 오늘의 나는 무엇을 잘 했는지 알고리즘 문제를 평소보다 다양하게 많이 풀어보았다 백준 Swift 알고리즘 풀이를 위한 XCode readLine 세팅을 했다 개선 - 어떤 문제를 겪었는지, 어떻게 해결할 것인지 대문자는 소문자로, 소문자는 대문자로 바꾸는 문제가 있었는데 이것에 대한 키워드는 알았지만 정확히 어떤 메소드를 사용해야 하는 지는 몰랐다 내가 눈치챈 키워드 > uppercase, lowercase 애플 개발자 문서 (Apple Developer Document)를 찾아보며 관련 메소드를 찾아서 문제를 해결할 수 있었다 https://developer.apple.com/documentation/swift Swift |..
· TIL
내일배움캠프 앱개발 iOS 트랙 사전캠프 Today I Learned 성취 - 오늘의 나는 무엇을 잘 했는지 프로젝트 파일의 버전관리를 위한 git에 대해 파악 git을 이용하기 위한 github 사이트 사용법 익히기 개선 - 어떤 문제를 겪었는지, 어떻게 해결할 것인지 homebrew를 사용해서 git을 설치하던 중, 하단의 에러가 발생했다 m1칩 이상부터 발생하는 오류인 것 같다 homebrew가 /usr/local/... 이 아니라 /opt/homebrew/ 에 설치되어 있기 때문에 발생한다 eval $(/opt/homebrew/bin/brew shellenv) 상단 명령어를 터미널에 입력해주면 해결할 수 있다 더 자세한 정리 -> https://yy-dev.tistory.com/26 학습 - 나는..
· TIL
내일배움캠프 앱개발 iOS 트랙 사전캠프 Today I Learned 성취 - 오늘의 나는 무엇을 잘 했는지 객체지향 프로그래밍이 무엇인지 이해했다 구조체와 클래스를 구분할 수 있다 XCode의 기능을 원활히 이용하여 실습했다 개선 - 어떤 문제를 겪었는지, 어떻게 해결할 것인지 공식 문서를 읽는 중, 구조체와 클래스의 초기화 부분이 이해가 잘 가지 않았다 😟 구조체는 멤버와이즈 초기화 구문을 사용해서 초기화를 하지 않아도 스위프트에서 자동으로 처리를 해 준다 클래스는 직접 정의해서 초기화를 해 주어야 오류가 나지 않는다 구조체와 클래스의 더 자세한 용법을 찾아보며 완벽하게 이해할 수 있게 노력할 예정 👊👊👊 학습 - 나는 어떤 것을 배웠는지 xCode로 네비게이션을 만들고(embed in) 페이지를 연..
· TIL
내일배움캠프 앱개발 iOS 트랙 사전캠프 Today I Learned 성취 - 오늘의 나는 무엇을 잘 했는지 알고있던 언어와 Swift 문법의 차이점을 파악하고 이해했다 새로운 Swift의 특징, 문법, 키워드, 함수등을 파악했다 함수, 클로저, inout 키워드 옵셔널에 대해 이해했다 개선 - 어떤 문제를 겪었는지, 어떻게 해결할 것인지 https://school.programmers.co.kr/learn/courses/30/lessons/12925 해당 문제를 풀며 Int(s)가 되지 않아서 헤맸다 Int는 부호를 갖는 타입이기 때문에 문제의 제한조건 상, 바로 바뀔 것이라고 생각했지만 오류가 났다 error: value of optional type 'Int?' must be unwrapped to..
YEN_
'TIL' 카테고리의 글 목록 (3 Page)