01. 협력하는 객체들의 공동체
·
개발서적/객체지향 사실과 오해
01. 협력하는 객체들의 공동체리뷰기간: 2024년 10월 14일 → 2024년 10월 20일태그: 1회독, 작성완료✨ 내용 요약일상생활에서 찾은 객체지향적 요소손님, 캐시어, 바리스타는 각각 역할 에 해당하며 각 역할은 책임 을 가져야 한다.요청과 응답의 상호작용으로 객체지향적 설계를 설명할 수 있다.캐시어는 1명일수도, 여러명일수도 있다 마찬가지로 바리스타도 1명일수도 여러명일수도 있다 ⇒ 반드시 하나의 객체 만 동일한 역할을 책임지는것은 아니다.하나의 객체가 여러일을 수행 할 수 있다캐시어가 주문을 받고, 동시에 직접 커피를 제조해서 손님에게 전달할 수 있다 ⇒ 대체가능성책임을 수행하는 방법은 각 객체가 자율적으로 선택할 수 있다예를들어, 아이스아메리카노를 주문할때, 손님이 직접 “얼음을 먼저 넣..
KWDC23 후기
·
컨퍼런스 탐방
안녕하세요~✋ 치콩입니다! 🐔 블로그 이전 준비가 아직 덜되어서,, 일단 요기에 쓰고 글을 옮기는걸로! 오늘은 회사에서 외근처리로 KWDC23을 다녀왔습니다! KWDC는 KoreaWide Developers Conference 의 약자라고 해요! 아침부터 부랴부랴 코엑스 그랜드볼룸으로 이동하였는데 언제나 느끼지만 강남은 너무 먼것 같습니다.. 인천살고 있는 저에겐 강남은 너무 멀어요 ㅠㅠ 집에서 8시에 나갔는데 10시쯤 도착 하였습니다! ㅎㅎ 거두절미 하고 후기를 남겨보려고 해요! 도착하자마자 입장 줄이 엄청 길었어요,, 아무래도 1000명 이상의 인원이 모이는 컨퍼런스다 보니까 줄을서서 입장했는데요! 입장할때 굿즈로 귀여운 개구리 가방..? ( 뜯어보지 못했지만 언뜻 보기에 그렇게 보였어요! ) 과 K..
Combine - Intro WWDC2019 시청 (1) - Publisher
·
iOS/iOS 개념
안녕하세요~ 👋 치콩입니다! 글을 작성하기 앞서 앞으로의 블로그 작성글의 컨셉을 이렇게 소통이다 생각하고 누군가에게 설명하듯 작성하려고 합니다! 이 전의 글들은 나만 본다는 가정하에 나만 알기쉽게 작성하였는데,, 그러면 일기장에 쓰지 블로그에 글을 쓰는 의미가 없어지지 않을까,,🤔 싶은 마음이 들더라구요ㅋㅋㅋ 누군가에게 설명하듯 작성하다보면 나도 모르는 개념들을 조금 더 파악할 수 있지 않을까 싶은,, 아무튼 잘부탁드립니다 오늘은 미뤄졌고,, 아니 미뤄왔고,, 아니 그냥 하기 싫었고,, 그냥 핑계였고,,,, 어쨋든 공부해야지 해야지 하고 미뤄왔던 Combine에 대한 기초개념을 파악해 보려구 해요 🥳 RxSwift 와 Combine을 고민하였지만 결국 Combine은 애플에서 만든 프레임워크 이고 결국 ..
1년만의 포스팅 - 나의 근황 (feat. 수습회고)
·
계획 및 일기
1년간 블로그에 새글이 없었다. 핑계라고 한다면,, 애플 아카데미에서 프로젝트를 하느라 바빳고 노느라 바빳다. 12월 16일 포항과의 인사를 끝내고 본가로 올라왔다. 걱정이 한둘이 아니였다, 우선 수료를 하긴 했는데 취업을 할 수 있을까? 9개월간 진짜 열심히 살았다 프로젝트 끝나고 공부 스터디 프로젝트 스터디 사이드 프로젝트 스터디.. 12월 수료 한 후 집에 오자마자 짐을 풀고 일단 놀았다 1월부터 준비하자 라는 마인드로 1월이 되니 또 준비하기가 싫어졌다 마음은 불안한데 몸이 안따라줬음,, 그래서 생각정리 여행을 떠나기로 했다 1주일간 급하게 항공권을 구매하고 일본으로 여행을 갔다 아, 물론 가서 이력서랑 포폴 정리하려고 맥북도 챙겨갔다. 첫날 저녁 일본 카페에 앉아서 이력서를 정리하고 있는데 생각..
[BOJ] 2164 - 카드2
·
알고리즘/Swift
문제 풀이 코드 struct Queue { private var elements: [T] = [] private var reverseElement: [T] = [] public var size: Int { return elements.count + reverseElement.count } public mutating func push(_ element: T) { return elements.append(element) } public mutating func pop() -> T? { if reverseElement.isEmpty { reverseElement = elements.reversed() elements.removeAll() } return reverseElement.isEmpty ? nil :..