inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션

채팅 프로그램 - 서버1

어떤 기준으로 클래스를 나눠야 하는지 잘 모르겠습니다.

376

이승호
0

 학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요.


1. 강의 내용과 관련된 질문을 남겨주세요.
2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.
(자주 하는 질문 링크: https://bit.ly/3fX6ygx)
3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.
(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)

질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.
=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? 예
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예
3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예

[질문 내용]
이번 채팅 프로그램 만들기 하면서 느꼈습니다.

앞 수업에서 만든 v6 를 참고하면서 제가 만들었는데 요구사항대로 다 동작을 하긴합니다. 하지만 이번 영한님 강의를 들으면서 어떤기준으로 클래스를 나누어야하는지 감을 잘 못잡겠습니다. 제가 만든건 너무 하드코딩인거 같아요,,,

 

java 네트워크 객체지향

답변 1

1

y2gcoder

안녕하세요. 이승호님, 공식 서포터즈 y2gcoder입니다.

굉장히 어렵지만 저희 개발자들이 늘 해야 하는 고민을 질문으로 주셨다고 생각합니다!

저 또한 같은 고민을 했던 동료 개발자로서 답변을 드리고 싶습니다!

여러 훌륭하신 개발자분들께서 말씀하시는 것을 들어보면

변경하기 쉬운 코드, 읽기 좋은 코드, 트레이드 오프

를 공통적으로 많이 언급해주십니다.

저는 그래서 다른 것보다 이를 목표로 잡고 학습하려고 노력합니다 🙂

이를 위한 학습 방법으로는

  1. 이론: 책이나 좋은 코드에 대한 강의, 발표를 찾아봅니다. 굉장히 다방면으로 학습해야 할 필요가 있다고 생각합니다. 객체 지향, 테스트 코드 등의 개념적인 부분의 학습부터 사용하는 언어나 프레임워크, 컴퓨터나 네트워크에 대한 학습까지 두루 하시다 보면 좀 더 좋은 코드를 작성하는 것에 대한 인사이트가 생기실 거라 생각합니다.

  2. 실전: 일단 코딩을 많이 해보고 많이 변경해보는 연습이 필요합니다. 특히 개발자는 비용을 많이 생각해야 하는 직업이라고 생각합니다. 이상적으로 좋은 코드가 현재 우리 프로젝트에는 어울리지 않는 오버 엔지니어링 코드일 수 있습니다. 이런 부분은 이론에 더해 실전 경험을 많이 쌓는 것이 중요하다고 생각합니다.

끝으로 길게 보는 마음을 가지시는 게 중요하다고 생각합니다. 세상에는 영한님을 비롯해 저보다 잘하는 개발자 분들이 정말 많습니다. 그러한 분들의 코드나 설계 등을 볼 때마다 감탄할 때가 많습니다. 다만 그 분들과 비교하면서 제 실력에 대해서 의기소침하기 보다는 그러한 분들의 코드를 보면서 그 다음 순간의 제가 작성할 더 나아진 코드를 기대하시는 것을 저는 추천합니다 🙂

 

감사합니다.

노트 정리 프린트

0

4

0

방산 SW 개발자가 되기 위한 조언을 부탁드립니다!

1

70

1

JAVA로 백엔드 프로젝트

0

62

1

수강 기간 연장 문의 드립니다

0

117

1

26년1회 실기 합격할수 있을까??ㅠㅠ

0

174

1

자바 실무 단계

0

312

2

Desktop용 게임 개발에도 도움이 될까요?

0

201

1

진로가 큰 걱정입니다...

0

298

1

강의 추천 부탁드립니다.

0

354

1

공부 방향

0

318

1

수강 기간 연장 문의 드립니다

0

259

1

선생님 조언 부탁드립니다.

0

320

1