전체 글188 [서평] 비행운_서른 김애란 '열심히만 하면 누구나 꿈을 이룰 수 있다'고 말하는 오십대 남성의 강의를 들었어요. 너무 빤해서 들을게 없는 강연 같죠? 맞아요. 언니 그런데 그 빤한 게 사람맘을 막 쥐고 흔들던데요? '꿈' 이라는 말을 듣는데 가슴 한쪽이 싸한게 찌르르 아픈 것도 같고 좋은 것도 같고 심장이 빠르게 뛰었어요. 책을 읽고 싶다는 생각이 든 것은, 취직 공고에서 높디높은 허들을 다시 한번 마주했을 때이다. 지금은 논란으로 매장당한 문분 씨의 "비행운"이라는 노래에서 나오는 "너는 자라 내가 겨우 되겠지..."라는 가사로 유명한 책이다. 책은 단편으로, 어디로도 갈 수 있는 희망을 잠깐 보여주는 비행운과 그에 대조되는 주인공들의 비행운(非幸運)을 보여준다. 그중 나와 나이가 비슷하고 한편으로 정감 갔던 "서른"이라는 대목.. 2023. 10. 26. [swift] 비동기적으로 메시지를 전달하는 방법 part 1 (delegate) 개요 swift에는 비동기 방식으로 메시지를 전달하는 방식이 몇가지 있습니다. 그중 소개할 방법을 delegate을 소개하려 합니다. delegate라고 한다면 UITableviewDelegate, UITextFieldDelegate등등 다양한 말들을 들어봤을 것이라 생각합니다. 하지만 저도 처음에 delegate에 대한 개념이 조금은 난해했던 것 같습니다. 그래서 예시를 통해서 설명하겠습니다. 본문 delegate패턴이란? https://en.wikipedia.org/wiki/Delegation_pattern Delegation pattern - Wikipedia From Wikipedia, the free encyclopedia In software engineering, the delegation .. 2023. 10. 15. [Swift] 여러개의 타입이 존재하는 json을 encode및 decode 글 작성 개요 : 상속을 받거나, 상위타입으로 묶인 데이터를 한번에 encode해야하는 상황이 발생 했을 때 어떤 방식으로 하면 좋을까? ex) var stores: [Store] = [appleStore, blueBerryStore, candyStore]을 한번에 encode하고 싶은데 어떻게 할까? 일단 상위 타입에 대해서 고민해 봤습니다. 상위 타입은 struct일수도 있고 class일수도 있다. struct는 상위 타입이란 말이 어색할 수 있습니다. 하지만 이를 protocol을 통해서 구현 할 수 있습니다. protocol을 통해서 구현하게 된다면 객체를 상속 받은 것 처럼 타입을 통해 묶을 수 있습니다. 이를 통해서 작성해 보겠습니다. 일단 Protocol을 통해서 묶는다면 상위에 존재하고, .. 2023. 10. 1. [Swift 알고리즘] 프로그래머스_2개 이하로 다른 비트 해결 방법: String(number, radix: 2) -> Int를 2진수로 String으로 변환 Int(binaryNumber, radix: 2) -> 2진수 String을 10진수 Int로 변환 이 두가지 방법을 통해서 문제를 풀었음 첫번 째 해결방법은 브루스트 포스로 1씩 더해서 풀었는데 시간초과 남 두번 째 해결 방법은 2차이가 언제 발생하는지 곰곰하게 생각해봄 - 원하는 수 + 1 의 이진수 값이, 원래 수의 이진수 값과 자릿수가 다를 때 0을 앞에 붙여준다. eg) 3 -> 11, 4 -> 100 이럴경우 011로 바꿔준다. - 타겟 값보다 크면서 && 비트가 최대 2개까지 다른 값이 목표 - 그렇게 생각하니 앞부분을 바꾸는 것 보다(2^이 올라가는 부분) 뒷부분을 바꾸는 방식이 값 차이가.. 2023. 9. 30. [UIKit] because they have no common ancestor. Does the constraint or its anchors reference items in different view hierarchies? That's illegal Error 처리 (not addsubview) Error 가 보통 because they have no common ancestor. Does the constraint or its anchors reference items in different view hierarchies? That's illegal 으로 처리될 것이다. UI를 선언하는 클로저가 연산 프로퍼티인지 확인하자. 많이 나오는 에러 해결 방법은 addsubview를 통해서 에러를 해결한다고 기재되어 있다. 하지만 나는 addsubview또한 정확한 언어로 해결했다. 한 두시간 얼타고 확인한 것은 클로저가 UI가 아닌 computeProperty로 정의되어 있었던 것이다. //정상 코드 var testLabel: UILabel = { let lb = UILabel() lb.text = .. 2023. 8. 9. [네이버부스트캠프] 마지막 퀘스트 찬란했던 한달. 망각하지 말자는 다짐으로 블로그에 박제 합니다. 📓 퀘스트 📓 🧫 인상 깊었던 내용, 경험 🧫 피드백을 짧은 주기로 얻는 것 자기개발은 복리로 돌아온다. 자신이 스스로 고민하고, 그리고 능동적 사고는 후에 복리로 돌아온다는 말을 하였습니다. 어제보다 더 나은 현재가 지속되게 된다면 능력이 배로 불어납니다. (후로 봤을 때는 단리보다 훨씬 빠르게 불어납니다.) 스스로의 피드백, 객관적인 척도로 평가하는 것은 매우 중요한 항목중에 하나입니다. 내가 어떻게 행동하고 사고하는지를 객관화 할 수 있고, 이를 통해 헛점을 밝혀낼 수 있다는 것이 가장 큰 장점으로 생각됩니다. 한계를 믿지 않기. 과연 할 수 있을까 라는 생각을 자주 하였는데, 부스트 캠프에서는 한계를 용납하지 않았습니다. 이런 진취적.. 2023. 8. 9. [네이버 부스트캠프] iOS 네이버 부스트캠프 수료 후기 부스트캠프 웹・모바일 8기 캠퍼입니다. 부스트캠프 8기 지원부터 수료까지... 1. 지원 동기 부스트캠프에 지원한 이유는 단순히, 사람들이 많은 환경과 커뮤니티 두가지였습니다. 저는 개발 비약 향상을 부스트캠프에서 이룰 수 있다고 생각했습니다. 따라서 부스트캠프를 목표로 잡고 지난 2023년 3월 부터 시험 전 까지 꾸준하게 공부를 하였습니다. 부스트캠프에서 서류 질문으로서. "왜 개발자가 되고싶은지", "이루고자 하는 목표"를 물었습니다. 저는 나누는 개발자가 꿈 이었습니다. 제가 받은 정보들을 다시 환원하고 싶다는 생각을 자주 했습니다. 이를 지원서에 진심을 다해 지원동기를 넣었습니다. 2. 성장 알고있다고 착각하는 것. 부스트캠프에 합격했다는 기쁨도 잠시, 물 밀려오듯한 과제들은 제 정신을 휘져어 .. 2023. 8. 6. [네이버 부스트캠프] iOS 네이버 부스트캠프 3주차 회고 부스트캠프 웹・모바일 8기 캠퍼입니다. 나를 믿어주는 사람들...! 사실 부스트캠프에서 가장 많이 들었던 말은 "남과 비교하지 말라"라는 문장이었다. 사실 이 문장은 널리 사용되고있는 문장이다. 하지만 사실 그러기는 쉽지 않다. 당장 소통채널인 슬랙만 켜봐도 짱짱한 사람들이 넘쳐난다. 사실 이 사이에서, 남과 비교하지 않는 마인드를 갖기는 힘들다. (적어도 나로서는) 그래서 나는 내 최선을 체크포인트에 달았다. 현재까지 구현에 있어서는 대부분의 체크포인트를 완성했다. 내가 가야하는 정도라고 생각해서도 있고, 해냈다면 뿌듯한 기분이 들어서 이다. 하지만 Day 14에 크게 넘어졌다. 처음은 아니지만, 처참하게 체크포인트를 완성하지 못했다. 그날 새벽 4시에 잠을 잤다. 다음날 9시에 일어났을때 완수하지 못.. 2023. 7. 29. 브람스를 좋아하세요 서평 어쩌면 자신이 그들의 사랑을 위해 육 년 전부터 기울여 온 노력, 그 고통스럽고 끊임없는 노력이 행복보다 더 소중해졌기 때문인지도 몰랐다… “브람스를 좋아하세요”는 프랑수아즈 사강의 “슬픔이여 안녕”의 후속작이다. 사강은 이 작품을 발매할 당시 25살 밖에 안되는 청년이었다. 그녀가 이렇게 39세의 주인공의 감정 표현 묘사를 했다는 것은 놀라운 사실이다. 뒷편 작품 해설란에는 사강의 대략적인 삶이 닮겨 있었다. 그녀의 인생은 정상범주와는 다르다(마약이나 술에 찌들었다고 평가됨). 하지만 당연지사 그녀의 인성과 작품은 다르게 봐야한다고 생각한다. 작품은 폴, 로제, 시몽과 메지 정도이다. 폴은 똑똑하고 신식 여성이라고 말할 수 있는 반면, 로제는 순수한 젊음을 좆는 늙은이 처럼 보인다. 첫 장면에서 .. 2023. 7. 28. [네이버 부스트캠프] iOS 네이버 부스트캠프 2주차 회고 1. 무슨 생각 하세요? (CS와 연결짓고, 최적화를 하며, 조건에 맞는지 검사하고... 기타 등등) 내가 이번에 느낀 최고의 장점이다. 우리가 암기를 할 때 가장 빠르게 이해하는 방법은 메타인지 일 것이다. 메타인지를 통해서 이해를 쉽게 그리고 빠르게 할 수 있다. 네이버 부스트캠프는 이 메타인지를 도와주는데 가장 큰 역할을 한다. 무슨 생각을 하던지, 예전 배웠던 내용들과 연계가 된다. 왜 이렇게 코드를 작성할 수 밖에 없는지 이전 과제와 학습을 통해서 당위성을 어느정도 챙겨준다. 이러한 당연하다고 생각, 혹은 이제는 그렇게 될 것이라는 믿음을, CS적으로 그렇게 작동할 것이라는 믿음을 네이버 부스트캠프에서 계속해서 심어준다. 또한 그 믿음을 자신의 코드로 구체화를 한다. 이러한 훈련과 메타인지가 전.. 2023. 7. 23. [네이버 부스트캠프] iOS 네이버 부스트캠프 1주차 회고 네이버 부스트 캠프에 합류하게 되었다. 1. 왜 네부캠은 다른 코테와 다를까? 처음에 네부캠을 접했을 때는(다른 블로그) 내가봤던 코테와 상이하다라고 하였다. 나도 처음 보고나서, 똑같은 생각을 하였다. 굳이 이렇게 까지 하지 않아도 될 것 같다는 생각을 했다. 하지만 이번 1주차를 통해서 나는 왜 그런지 알 수 있게 되었다. 네부캠의 교육방식의 모토를 코딩테스트를 통해 잘 계승했기 때문이라 생각한다. 코테라는게 "추상화 -> 적합한 알고리즘 상상 -> 자료구조 생각 -> 구현" 이라고 생각하면, 네부캠은 상상의 영역인 추상화에 높은 별점을 준다. 2. 그래서 교육 방식은 어땠나요? 동료들과 하는 상호 피드백 교육 방식은 재밌었습니다. 전날 과제를 팀원들과 소통하여 개선점과 해결점을 찾는 연습을 하였습니.. 2023. 7. 17. Swift 타입 지정하는 법 스위프트 공식 문서를 읽다보면 타입을 지정하는 방법이 나온다. 보통은 temp처럼 var temp: 가 보편적으로 쓰이는 것 같습니다. 사실 한칸 띄고 타입 비정하기 너무너무 귀찮아서 다른 현직자분들은 어떻게 사용하는지 궁금해졌습니다. 그리고 왜 이렇게 사용해야 하는지도 궁금했습니다. 다른 현직자 사람들은 애플 공식문서상에서 자주 활용되는 한칸 띄는 방식을 채택하여 개발한다고 답변을 받았습니다. 사실 개취인줄 알았는데 Siwft에서 문법적으로 선호하는 것들이 따로 있는것을 확인했습니다. 이는 airbnb발췌 입니다. 아래와 같이 return type과 형태를 지정하는 것들에도 선호하는 문법이 다른 것을 확인 할 수 있었습니다. 이 외에도 다양한 것들을 찾을 수 있었습니다. 시간이 되면 읽어보는 것을 추천.. 2023. 6. 30. 이전 1 ··· 6 7 8 9 10 11 12 ··· 16 다음