inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

워밍업 클럽 2기 BE 1주차 발자국

마블
0

1주차 배운 내용 요약

클린코드의 중요성 알아가기

  1. 가독성 -> 글이 잘 읽히는 것이 중요하다. 나 뿐만 아닌 다름 사람이 코드를 읽었을 때 얼마나 잘 이해할 수 있을까?

    1. 회사에서 일을 할 때 코드를 읽는 것이 대부분

  2. 유지보수성 -> 추상이란? 추상에 대해서 생각해보기

    1. 추상이란 무엇일까?

      1. 구체화 된 어떤 것들을 중에서 중요한 것만 추출하여 파악하는 것.

      2. 어떤 일면만을 추상화하고, 다른 측면은 버린다.

    2. 컴퓨터 측면에서 추상화

      1. 8 byte -> 1bit, 4bit -> int 자료형

      2. 추상화 레벨 - 고수준 언어, 저수준 언어

        1. 고수준 언어는 레벨이 높다

        2. 저수준은 언어는 레벨이 낮다.

이름짓기

  1. 단수 복수 구분하기

     

  2. 이름 줄이지 않기

  3. 은어/방언 사용하지 않기

  4. 좋은 코드를 보고 습득하기

메서드와 추상화

매직 넘버, 매직 스트링

논리 사고의 흐름

Early Return

사고의 depth 줄이기

1. 중첩 if, for

2. 사용할 변수는 가깝게 선언

3. 공백 라인도 의미를 가진다.

4. 부정어 줄이기

5. 해피케이스와 예외 처리

객체 지향

객체 설계

주의점

  1. 1개의 관심사로 명확하게 책임이 정의되었는지 확인

     

  2. 생성자, 정적 팩토리 메서드에서 유효성 검증이 가능하다.

     

  3. setter 사용 자제

     

  4. getter 사용 자제

     

  5. 필드의 수는 적을수록 좋다.

  6. 도메인 지식은 만드는 것이 아니라 발견하는 것이다.

     

     

상속과 조합

Value Object

일급 컬렉션 - 일급 함수

Enum

다형성 활용하기

if문 줄이기

어떤 조건을 만족하면, 그 조건에 해당하는 행위를 수행한다.

변하는 것 → 조건, 행위

변하지 않는 것 → 조건을 만족하는 가?, 행위를 수행한다.


DAY2 미션 - 추상과 구체

아기에게 우유를 따르라고 했을 때 아기는 제대로 우유를 따르지 못한다는 그런 내용이 생각이 떠올랐던 미션이었다. 컴퓨터적 사고에 대한 내용인데 아기는 우유를 따르라고 했을 때

  1. 컵을 가져와라

  2. 우유를 가져와라

  3. 우유팩 뚜껑을 열어라

  4. 우유팩을 들어라

  5. 우유를 컵에 따라라

이런 구체화 된 내용을 말하지 않으면 할 수 없다는 내용이다. 이렇듯 컴퓨터적 사고는 모듈을 개발할 때 모든 논리 과정을 생각하지 않으면 만들 수 없다. 그런데 우리의 뇌는 이런 모든 구체화 된 내용을 기억할 수 없기 때문에 추상화하지 않으면 기억하기 힘들다.

일상 생활에서 자연스럽게 사용하고 있었지만, 이것을 다시 개발에 적용하는 것이 쉽진 않은 것 같다. 미션은 최근에 일어났던 일로 하긴 했지만 일을 할 때 코드가 하나도 추상화되어있지 않아 읽기 힘들고 기억하기가 힘들었는데 이번에 강의를 들으면서 배웠던 내용으로 추상화하려고 노력하니 많이 발전된 모습을 보일 수 있어서 좋았다.

 

DAY4 미션 - SOLID 정의

자바와 스프링을 하면서 너무 많이 들었던 내용이었다. 또한 면접을 볼 때도 엄청 외우고 다녔었는데 다시 보니 리마인드 되고 미션을 하면서 다시 내가 재 정의를 하려니 쉽지 않았지만 새롭게 배울 수 있었다. 학습은 타인에게 설명할 수 있는 단계 까지이다. 나도 이렇게 항상 생각하고 학습해왔기 때문에 이번에도 내가 타인에게 설명하는 것을 생각하며 SOLID를 다시 정의했다.


1주차 회고

최근에 책을 읽는 독서법을 바꾸려고 노력하고 있다. 전에는 빨리 읽으려고 노력했던 반면 요새는 책 내용 중 인상 깊었던 것들은 실천하려고 노력한다. 그렇지 않으면 읽었던 내용들을 다 잊어버린다. 그 좋은 내용들을 잊기 싫었다. 강의 내용도 그랬다. 사실 읽었던 책에 나온 내용들이긴 하지만 책은 이해하기 쉽지 않았다. 그런데 강의는 그것을 잘 이해할 수 있도록 강사님이 잘 설명해 주시기도 했고, 직접 해볼 수 있는 실습이 있어서 강의 내용을 이해하기 더 수월했다. 이론도 중요하지만 이론을 적용할 실습이 동반되지 않으면 말짱 도루묵이다. 그런면에서 얻을 수 있는 것이 많아서 좋았다.

그리고 책에서 배웠던 내용을 리마인드 한다고 생각하면서 이번 1주차를 보냈다. 강의 내용도 좋고 중간 중간 미션과 회고를 쓰게 하는 것도 좋았다. 시간이 지남에 따라 해이해지는 정신을 잘 잡아주는 커리큘럼 구성이 좋았다.

마지막으로 하나 반성을 하자면, 시간 투자를 많이 못했다. 강의를 듣고 공부하는 데에 시간을 많이 못쓰고.. 강의가 밀리기도 했다. 다행이 휴일이 많아서 따라왔지만, 다음 주부터는 이렇게 하다간 힘들 거라는 생각이 들었다. 시간을 많이 투자하고 관련된 책들도 다시 읽고, 미션도 열심히 수행해야겠다고 반성했다.

 

 

백엔드 발자국 워밍업클럽 2기 1주차

답변 0