이해가 잘 안됩니다.ㅠ
411
投稿した質問数 22
개행 할 것
앞서 스크롤이 적을수록 코드를 이해하기 좋다고 말씀드렸습니다. 코드 길이가 매우 긴 함수나 호출자 함수로부터 너무 멀리 떨어져 있는 내부 함수를 탐험하기 위해 스크롤이 발생하면 확실히 코드 이해가 오래 걸리고 힘들어집니다.같은 이유로 수평 방향 스크롤도 고려해야 합니다. 큰 모니터를 사용하면 수평 방향 스크롤은 문제 되지 않을 것으로 생각하실 수 있지만 그렇지 않습니다. 코드를 파악하려다 보면 IDE 화면을 분할할 필요가 종종 있습니다. 화면 너비가 반으로 줄어드는 것이죠. 이런 경우에는 모니터 크기가 큰 도움이 되지는 않습니다. 또한, 수직 방향 스크롤을 줄이기 위해 세로로 길쭉한 모니터를 쓰시는 분들도 계십니다. 이런 모니터는 수평 방향 스크롤에 더 취약하겠습니다.
제가 독해력이 부족할수도 있는데..
어떻게 단점이고 장점이고 무엇을 고려하고 의도하신지 좀 이해가 잘안되서.. 조금만 더 친절한 설명 부탁드립니다!
도움 많이 되고 있습니다!
回答 2
0
코드 길이가 매우 긴 함수: 길이가 긴 함수라는 것은 그만큼 하는일이 많고 변수도 많고 복잡하다는 뜻입니다. 코드를 보다가 이 변수는 어디서 선언된 변수지? 어떤 값으로 설정 변수였지? 하시면서 위아래로 스크롤을 계속하실텐데 그러다보면 기존에 코드를 어디까지 봤는지, 다른 변수는 어떤 값으로 설정되었는지 등등 혼란을 느끼게 됩니다
호출자 함수(내부 함수를 호출한 코드 라고 생각하시면 됩니다)로부터 너무 멀리 떨어져 있는 내부 함수가 코드 이해에 어렵다는 것은 내부 함수를 살펴본 후 다시 호출자 코드로 돌아가는 과정에 스크롤이 많을 수록 주의가 산만해지고 그만큼 코드이해가어렵다 라고 생각하시면 됩니다. ide 사용하면 호출자 코드로 바로 돌아갈수있지않느냐 할 수 있겠지만 호출된 내부 코드를 여러 곳에서 사용할경우 적절한 호출자 코드를 찾아 돌아가기가 쉽지 않은 경우들이 종종 있습니다.
0
안녕하세요, hantrust87 님, 인프런 AI 인턴이에요.
먼저, 코드가 스크롤이 적을수록 이해하기 좋다는 것은 코드의 가독성을 높이기 위한 원칙 중 하나입니다. 코드 길이가 너무 길면 한 번에 파악하기 어렵고, 내부 함수가 호출자 함수로부터 멀리 떨어져 있으면 코드의 흐름을 이해하는 데 어려움이 생길 수 있습니다.
따라서, 코드를 작성할 때는 스크롤이 발생하지 않도록 코드를 잘 구성하는 것이 좋습니다. 더불어, 가로 방향으로도 스크롤을 고려해야 합니다. 큰 모니터를 사용한다고 해서 가로 방향 스크롤이 문제되지 않는 것은 아닙니다. IDE 화면을 분할하여 사용하는 경우에도 화면 너비가 줄어들기 때문에 큰 모니터라고 해도 불편함을 겪을 수 있습니다.
이러한 점을 고려하여 코드 작성 시 가독성을 높이고자 하는 것이 목적입니다. 코드의 길이를 적절하게 유지하고, 내부 함수와 호출자 함수의 위치를 가능한 한 가깝게 배치하여 코드를 이해하기 쉽게 만드는 것이 중요합니다.
제가 원활하게 설명하지 못해 죄송합니다. 더 궁금한 점이 있다면 언제든지 물어보세요! 도움이 되고 있다니 기쁩니다. 감사합니다!
EntityManager#flush()를 검증하면 더 좋을 것 같습니다!
0
139
2
테스트클래스명이 테스트 목적을 잘 나타내지 못하는 것 같습니다.
0
144
2
도메인 로직으로 분리해도 되나요?
1
198
1
도메인에 대한 개인적인 경험이 다음 설계에 영향을 주는 경우가 많습니다. 토비님께서는 설계를 하실 때, 이전 경험에서 비롯된 도메인을 어느 정도까지 설계에 반영하시나요?
1
209
2
인터페이스 위치를 결정하는 기준에 관해
1
284
2
record 생성 시 휴먼 에러 발생 가능성
1
236
3
토비님이 생각하시는 복잡한 도메인은 무엇이라고 생각하시나요?
5
1661
2
Email Pattern 테스트 검증 관련 질문이 있습니다.
3
202
1
Mybatis같은 sql mapper를 사용시..
2
388
2
mise도 사용하시나요?
3
179
2
`Objects.requireNonNull()`을 계속 사용하시는 이유가 궁금합니다.
3
278
1
MemberRepositoryTest 중 Member table이 생성이 안됨
0
146
3
compose.yml 파일 질문
-1
301
3
iterm 설정 문의
3
219
2
사용할 변수 가깝게 선언하기 질문
0
92
1
오버 엔지니어링
0
147
2
이 질문이 왜 없는지 이해가 안 되지만 문제 인식 및 해결 방법 남깁니다.
1
177
2
학습용 java/spring 오픈소스 추천
1
360
2
post 작성 오류
0
106
3
테스트를 위한 코드
1
105
2
uvicorn 종료 문제
0
436
2
프로젝트 실행 에러
0
150
2
PDF 문서에 오타가 있어서 알려드립니다.
1
102
1
enum질문
1
86
1

