본문 바로가기

분류 전체보기159

성공하는 스터디를 만드는 10가지 방법 연설자 분 블로그 : https://hannut91.github.io/blogs/dynamodb/install 스터디 팀 블로그 : https://codesoom.github.io/wiki/api-design/ 인프런 다시보기를 보던 중에 스터디와 관련된 세미나를 보았다. 마침 gdsc 스프링 입문 스터디를 거의 마무리 지은 상태여서 앞으로 다른 스터디를 어떻게 준비 혹은 참여해야할지 고민이 많았는데, 이 영상을 보고 좋은 팁을 얻었다. 핵심은 입력(책, 자료, 강의 영상)에 의존하기 보다 인출(코드, 정리한 글) 등의 아웃풋을 남기는 공부 방식이 효과적이라는 점이다. 내가 적용해보고 싶은 팁 내용 질문과 핵심 질문 만들기 완전한 문장으로 답하기 스터디 활동 전에 짧은 리뷰를 통해 흐름 잡기 다 같이 스.. 2023. 1. 12.
[221219] gdsc spring 입문 스터디 운영 후기 구성 인사말 스터디 소개 목표 설정 운영 방식 소개 토이 프로젝트 소개 스터디 운영 회고를 마치며 스프링 입문 스터디에서 활용한 노션 페이지, 깃허브, 멤버들이 작성한 팀 블로그를 공유합니다. 구경하러 오세요 ⍢ 노션 : my notion 깃허브 : spring-novice 팀 블로그 : gdsc sookmyung team blog ['Group Study (2022-2023)/Spring 입문' 카테고리의 글 목록 Google Developer Student Club Sookmyung Women's University 활동들을 기록합니다 dsc-sookmyung.tistory.com](https://dsc-sookmyung.tistory.com/category/Group%20Study%20%282022.. 2023. 1. 12.
클래스는 개념, 명세, 구현 관점에서 검토한다 공부 내용 : 객체지향의 사실과 오해 7장 공부 기간 : 2022년 11월 23일 수요일 기억하고 싶은 것 변경에 유연하게 대응할 수 있는 객체를 작성하는 가장 빠른 방법은 클래스가 개념, 명세, 구현 관점을 명확하게 드러내도록 하는 것이다. 개념은 도메인 모델로부터, 명세는 메시지(안정적인 영역)로부터, 구현은 클래스의 가변적 영역을 드러낸다. 객체지향 시스템을 설계할 때, 도메인 모델을 우선 표현해야 한다. 그리고 객체의 협력 관계를 만들어 인터페이스를 얻는다. 첫 메시지는 기능으로부터 얻고, 객체의 선택은 도메인 모델을 바탕으로 한다. 객체가 수행할 수 없는 책임이 등장하면 그때 다른 객체를 선택한다. 객체 협력 관계가 완성되면 정적 타입으로 분리해 클래스를 작성한다. 인터페이스와 내부 구현을 명확.. 2023. 1. 12.
안정적인 구조에 기능을 종속시켜라 공부 내용 : 객체지향의 사실과 오해 6장 공부 기간 : 2022년 11월 23일 수요일 기억하고 싶은 것 설계의 목적은 변화를 수용하는 여지를 남기기 위함이다. 기능이 안정적인 구조를 따라야 변경을 수용할 수 있는 소프트웨어가 된다. 요구사항에 비해 잘 변하지 않는 개념(멘탈 모델)을 표현하는 도메인 모델은 안정적인 구조를 제공한다. 사용자가 도메인에 기대하는 기능은 유스 케이스로 서술한다. 책임 주도 설계는 도메인 모델을 바탕으로 시스템의 책임을 객체에 분배하고, 기능을 바탕으로 책임을 파악한다. 질문 왜 기능이 구조를 따라야 하는가? 기능과 구조의 목표는 무엇인가? 구조는 어떻게 얻을 수 있으며, 이렇게 얻은 구조가 안정적인 이유는 무엇인가? 기능은 어떻게 표현하는가? 책임 주도 설계는 구조와 기능.. 2023. 1. 12.
메시지에 따라 객체지향을 설계하라 공부 내용 : 객체지향의 사실과 오해 5장 공부 기간 : 2022년 11월 22일 화요일 기억하고 싶은 것 객체지향이 유연한 설계와 재사용성을 높일 수 있는 이유는 협력을 수행하는 방법으로 메시지를 선택하기 때문이다. 메시지는 협력의 문맥에서 객체의 내부와 외부를 구분한다. 따라서 객체는 자율적인 책임을 지니게 된다. 캡슐화, 다형성, 낮은 결합도와 높은 응집도 등의 장점을 자율적인 책임에서 얻을 수 있다. 따라서 객체지향 시스템을 설계할 때는 협력의 문맥에서 메시지(what)을 결정하고 해당 책임을 수행할 객체(who)를 정한다. 객체를 설계할 때도 외부에 오픈할 메시지를 담는 인터페이스와 내부 구현(상태, 행동)을 구분해야 한다. 질문 자율적인 책임은 무엇을 정의하는가? 다형성 지탱하는 것은 무엇인가.. 2023. 1. 12.
역할, 책임, 협력의 관점에서 애플리케이션 설계하기 공부 내용 : 객체지향의 사실과 오해 4장 공부 기간 : 2022년 11월 20일 일요일 질문 객체지향 설계의 품질을 결정하는 것은 무엇인가? 협력은 무엇으로 구성되는가? 책임과 메시지의 차이는 무엇인가? 역할을 사용하여 얻을 수 있는 장점은 무엇인가? 책임 주도 설계는 무엇인가? 디자인 패턴은 왜 사용해야 하는가? 테스트 주도 개발과 객체 지향은 어떤 관련이 있는가? 기억하고 싶은 것 객체지향 설계란 애플리케이션의 기능을 구현하기 위한 협력 관계를 고안하고, 협력에 필요한 역할과 책임을 식별한 후 이를 수행할 수 있는 적절한 객체를 선택하는 과정이다. 핵심은 올바른 책임을 올바른 객체에게 할당하는 것이다. 협력은 요청과 응답으로 이루어지고, 객체는 자신의 책임을 수행하며 다른 객체에게는 메시지를 통해 .. 2023. 1. 12.