데브콘 리뷰 보기

[Review] 2024-04-07 K-DEVCON DEAJEON 스터디 후기

dev-jonghoonpark 2024. 4. 14. 12:28
📢 notice.

K-DEVCON Daejeon 브랜치는 대전, 세종을 중심으로 운영 중인 개발자 커뮤니티이며 온라인으로 IT 지식과 개발에 관련된 토론을 나누고,
오프라인 정기 스터디 모임(격주 토요일, 유료)이 진행되고 있습니다. IT업계에 종사하고 있거나 IT를 공부하고 있다면 누구나 함께할 수 있습니다. 자세한 내용은 아래 링크를 참고해 주세요.



K-DEVCON Daejeon
K-DEVCON Daejeon 정기 스터디 모임 신청 문의

 

안녕하세요 K-DEVCON(k-devcon.com) 입니다.

 

지난 4월 7일(토) K-DEVCON 대전 챕터에서는 오프라인 스터디가 진행되었습니다.

 

이번에 진행된 내용은 다음과 같았습니다.

종훈님 - 자바의 정석 (ch. 1-5)
자바를 기초부터 같이 알아나가 봅니다.
자바 기초, 변수, 연산자, 조건문과 반복문, 배열 에 대해서 다룹니다.

인혁님 - 이펙티브 자바
자바 책 중 유명한 "이펙티브 자바" 에서 이런 부분은 꼭 알았으면 좋겠다 싶은 부분들을 정리하여 공유드립니다.

정환님 - DDIA(데이터 중심 어플리케이션 설계) :
지난시간에 이어 분산시스템에서 어떻게 데이터를 처리하는지, 그리고 어떤 것들을 고려해야하는지 알아봅니다.

 


자바의 정석

이번 4월 부터 데브콘 대전에서는 자바 스터디를 진행하게 되었습니다. (종훈님 리드)

먼저 본격적으로 진행하기에 앞서 다양한 분들이 스터디에 참여하고 있기 때문에

자바를 모르는 분들도 참여하실 수 있도록

자바의 정석 책으로 자바의 기초부터 함께 스터디를 진행하고 있습니다.

 

이번주는 자바라는 언어의 기본적인 부분들을 다뤘습니다. (자바 기초, 변수, 연산자, 조건문과 반복문, 배열)

기존에 자바를 아시고 계시는 분들도 함께 참여할 수 있도록 최신 자바 내용들을 함께 포함하여 내용을 진행하였습니다.

 

이펙티브 자바

스터디 멤버 이신 인혁님께서 "이펙티브 자바" 를 읽어보시고 그 중 공유하고 싶으셨던 이야기를 정리하여 공유하여 주셨습니다.

회원들끼리 많은 이야기를 나누면서 진행되었습니다.

 

이 책에는 90개의 아이템을 설명해주는데요, 그 중 아래의 12 개의 아이템을 다뤄주셨습니다.

 

- 아이템 1. 생성자 대신 정적 팩터리 메서드를 고려하라

- 아이템 6. 불필요한 객체 생성을 피하라

- 아이템 7. 다 쓴 객체 참조를 해제하라

- 아이템 9. try-finally 보다는 try-with-resources 를 사용하라

- 아이템 16. public 클래스에서는 public 필드가 아닌 접근자 메서드를 사용하라

- 아이템 17. 변경 가능성을 최소화하라

- 아이템 20. 추상 클래스보다 인터페이스를 우선하라

- 아이템 21. 인터페이스는 구현하는 쪽을 생각해 설계하라

- 아이템 22. 인터페이스는 타입을 정의하는 용도로만 사용하라
- 아이템 28. 배열보다는 리스트를 사용하라
- 아이템 57. 지역변수의 범위를 최소화하라

- 아이템 60. 정확한 답이 필요하다면 float와 double은 피하라

 

지금 하고 있는 자바의 정석 스터디가 끝나면 그 이후에 다함께 봐도 좋을 것 같다는 생각이 듭니다.

 

데이터 중심 애플리케이션 설계 (DDIA)

스터디 멤버 이신 정환님께서 지난시간에 이어 "데이터 중심 애플리케이션 설계 (DDIA)" 에서 5장 복제 파트를 읽고 발표를 진행해주셨습니다.

 

지난 시간에는 단일 리더, 다중 리더 복제 방식에 대해서 공유를 해주었고, 이번 시간에는 리더리스(leaderless 방식에 대해서 내용을 정리하여 설명해주셨습니다.

 

리더리스 환경에서

- 노드가 다운되었을 때 어떻게 처리해야 하는지

- 정족수와 그 한계는 무엇인지
- 동시 쓰기를 어떻게 감지할 것이고 어떻게 처리할 수 있는지

에 대해서 간단하게 알아보았습니다.

 

정환님의 발표 후, 시니어 엔지니어 이신 성욱님께서 스터디원들이 궁금했던 부분에 대한 답변과 함께, 책에서는 없는 부분이나, 추가적으로 알아두면 좋을 부분들에 대해서도 설명해주셨습니다.

 

그 중 기억에 남는 부분을 이야기 해보자면, 왜 노드의 수를 일반적으로 홀수에 구성하는지에 대해서 질문을 해주시고, 그와 관련하여 PAXOS 알고리즘을 소개해주셨습니다.

- https://en.wikipedia.org/wiki/Paxos_(computer_science)

- https://www.scylladb.com/glossary/paxos-consensus-algorithm/

관심 있으신 분은 한 번 읽어보시면 좋을 것 같습니다.


 

K-DEVCON 대전 스터디에 참여하고 싶으신 분들은 언제든지 환영합니다.

 

저희는 단순히 진도를 나가는데 목적을 두는 것이 아니라 해당 주제에 대해 서로 공부해 온 것을 기반으로 이야기 하면서 스터디를 진행하고 있습니다. 모르는 부분은 질문하고, 자기가 알던 내용과 다르면 얼마든지 의견을 제시해도 좋습니다. 같이 더 좋은 것을 얻어가기 위해 함께 노력하고 있습니다.

 

서로서로 현업에서 있었던 일이나, 최근 있었던 이슈들에 대해서도 이야기 하고 있습니다.

 

오늘도 다들 파이팅입니다!