전체 글 (39) 썸네일형 리스트형 [TIL] 24.05.18 SAT #객사오- 7장객체지향 설계와 연관된 세가지 관점- 개념관점: 설계는 도메인안에 존재하는 개념과 개념들 사이의 관계(사용자가 도메인을 바라보는 관점) -> 실제 도메인의 규칙과 제약을 유사하게 반영하는것이 핵심- 명세관점: 소프트웨어상의 객체의 책임에 초점, 객체의 인터페이스를 바라보며 협력을 위해 무엇을 할 수 있는지 설계- 구현관점: 실제 코딩; 객체들이 책임을 수행하는데 필요한 동작하는 코드를 작성하는 것; 객체의 책임을 어떻게 수행할 것인가에 초점, 속성과 메서드를 구현 세 가지 관점 모두 수용할 수 있도록 개념, 인터페이스, 구현을 함께 드러내도록 분리해 설계해야 한다. 1. 개념관점에서 도메인 모델을 설계 (구체적으로 관계를 표현하도록 UML을 그릴 필요까진 없다 중요한것은 어떤 타입이 .. [TIL] 24.05.12 SUN #객사오 - 6장소프트웨어의 설계에는 '기능'과 '구조'의 두 가지 측면이 있다.기능: 제품이 사용자에게 무엇을 제공할 수 있는지구조: 제품의 형태가 어떠해야 하는지 - 요구사항은 변경되기 때문에 변경에 안정적인 소프트웨어를 설계해야 한다(미래의 변경을 예측하고 반영하는 것이 아닌 변경이 일어났을 때 유연하게 대처할 수 있도록 설계한다) - 구조를 수집하고 표현하는 기법: 도메인 모델링- 기능을 수집하고 표현하는 기법: 유스케이스 모델링 도메인 모델: 이해 관계자들이 소프트웨어 개발에 대해 생각하는 관점 - 도메인: 사용자가 소프트웨어를 사용하는 대상 분야(ex: 게임, 은행업무) - 모델: 대상을 추상화하고 단순화 한것(불필요한 정보를 무시하면서 복잡성을 낮춘다) - 단순 다이어그램이 아니라 개념적 모.. [TIL] 24.05.07 TUE # 객사오- 5장객체지향 공동체의 기본 단위는 자율적인 객체객체의 책임을 결정하는 메세지는 객체의 자율성을 보장해야함,자율성을 보장할만큼 충분히 추상적이면서 협력의 의도를 명시할수 있을정도로 충분히 구체적이여야한다메시지 전송은 수신자와 메시지의 조합,메시지는 메시지이름과 인자의 조합 ex) 모자장수.증언하라(어제, 왕국) 다형성: 메시지는 무엇이 실행될지만 명시 수신자의 메서드(어떻게 처리할지)는 알지못함 -> 같은 메시지도 다른 메서드로 처리가능객체지향의 핵심은 메시지`what/who` 사이클: 무엇이 수행될지 먼저 결정후 누가 수행할지를 결정객체의 상태를 묻지말고 메시지만 생각한다(묻지말고 시켜라) 인터페이스: 공용인터페이스(외부 객체들이 확인 가능)/사적 인터페이스(내부에서만 접근 가능(자기 자신에.. [TIL] 24.04.26 FRI #Mapkit- 시뮬레이터에서 현재 위치 features -> locations- 현재 위치를 받아오려면 CoreLocation을 import해서 user의 coordinate를 읽어옴 - 위치 권한 설정 - Info plist에서 Privacy - Location Always and When In Use Usage Description 값 할당, - CLAuthorizationStatus 체크 # Github page - repo에서 index.html로 page를 사용하면 자동으로 빌드, 접근 url로 접근가능 - webkit: webView에 url request 로딩으로 페이지 접근 - WKNavigationDelegate를 통해 웹뷰 시작점과 종료점.. [TIL] 24.04.24 WED #Morning Algorithm프로그래머스 2개 이하로 작은 비트- 해결- 40분- 규칙 찾기, 구현- 작은 자리 수 부터 첫번째로 등장하는 01을 10으로 변환하면 2진법에서 2개의 숫자가 달라지는 큰수중 가장 작게됨 #Snapkit- stackView의 내부 view들에 맞추고 싶을 때 greaterThanOrEqualTo사용 (최솟값만 지정) (stackView가 가질 내부의 view들이 동적으로 들어가는 상황이라 레이아웃을 알지 못할 경우가 있었음) [TIL] 24.04.03 TUE #Morning Algorithm프로그래머스 숫자 변환하기- 30분- 해결- DP로 해결 [TIL] 24.04.22 MON #Morning Algorithm 프로그래머스 롤케이크 자르기 - 40분 - 해결 - Set만을 사용해 검증하려 했지만 Set(Array)가 N만큼 반복, 시간 초과 - Dictionary와 Set을 사용해 두 그룹으로 나누어 검증해 해결 #Mapkit - simulator에서 위치 설정 -> feature 에서 location, custom location으로 설정(simulator에서 위치 못 받아옴) - mapView(_ mapView: MKMapView, viewFor annotation: MKAnnotation) -> MKAnnotationView? 재사용 가능한 어노테이션 추가 - mapView(_ mapView: MKMapView, didSelect view: MKAnnotationView).. [TIL] 24.04.20 SAT #객사오 4장 - 객체 지향 설계의 품질은 협력의 품질 - 협력 - 요청과 응답으로 이뤄지는 네트워크 - 책임 - 요청에 응답할 수 있거나, 적절한 행동을 할 의무가 있는 경우 책임을 가지는 것 - 하는것 - 객체를 생성하거나 계산을 하는 등 스스로 하는 것 - 다른 객체의 행동을 시작시키는 것 - 다른 객체의 활동을 제어하고 조절하는 것 - 아는 것 - 개인적인 정보를 아는 것 - 관련된 객체를 아는 것 - 자신이 유도하거나 계산할 수 있는 것에 대해 아는 것 - 책임은 객체의 공용 인터페이스를 구성함 - 요청은 메세지 전송을 통해 이루어짐 - 역할 - 책임의 집합 - 협력을 추상화 할 수 있음 - 역할은 협력내에서 역할을 수행할 수 있는 다른 객체로 대체될 수 있음 - 프로그래밍 내에서 타입과 역할은.. 이전 1 2 3 4 5 다음