디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

if - else 가 점점 늘어나는 이유

아놔콘다갤로그로 이동합니다. 2012.03.09 15:08:32
조회 128 추천 0 댓글 1

가장 대표적인 예를 꼽자면 시스템의 <상태 관리>가 제대로 안되는 경우에 if else if 가 덕지덕지 붙는 경우가 많음.


예를 들어서 파일 다운로드 같은 경우에 일단 tcp 접속을 시도하고 기다리고 접속이 되고 http 헤더를 읽고 데이터를 수신하고....

이런 일련의 과정들이 사실은 전부 상태가 계속해서 변하는거임.

중간에 사용자가 일시 중지 버튼을 눌렀어, 그래서 다운받는거 중단했는데 서버에서 연결을 끊어버렸어. 그래서 다시 다운을 받아야 하네?

이거 어케함?

이미 받아놓은거 있는데 그냥 버림? 아까운데? 혹시 서버에서 이어받기를 지원하는지 봐야하고 지원 안해주면 별 수 없이 다시 다운로드, 이어받기 지원하면 그 지점부터 보내달라고 요청 날리고...

이게 전부다 상태 전이의 반복임. 파일 하나 받을때까지 계속해서 변함.


상태 관리를 제대로 안하면 어쩔 수 없이 if else if 벌리고 전혀 예상치 못한 상태를 발견 하면 else if 안에다가 다시 if 만들어서 새로 발견된 상태를 처리할 로직을 우겨넣어야 함..

근데 사람이 신이 아닌 이상 이걸 막을 수는 없음. 전혀 예상치 못한 상태가 시스템 개발 외적인 이유로 추가되기도 함.

하지만 이걸 빨리 감지하는게 실력이 아닐까 함..

이거 이대로 두면 코드가 점점 복잡해지겠구나.. 싶어지면 시스템 상태를 추상화해서 최대한 모듈 내에서 이리저리 분기가 갈라지는걸 막아야함.

그래야 테스트하기도 편하고 버그 나올때 고치기도 쉬움.

if else if 가 하나도 없다는건 말이 안되지만 디버그 하는데 여기저기 클래스가 클래스를 호출하고 모듈이 모듈을 호출할때마다 계속해서 if else if 에 걸리면 그거는 문제가 있는거임.

추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 뛰어난 운동 신경으로 남자와 싸워도 이길 것 같은 여자 스타는? 운영자 25/11/24 - -
이슈 [디시人터뷰] 충무로가 주목하는 신예, '세계의 주인' 서수빈 운영자 25/11/24 - -
AD 대학생 필수템! What's in my Bag 운영자 25/11/21 - -
306528 디비 질문한거 자세히 풀으면 [18] SFCFS갤로그로 이동합니다. 12.03.09 134 0
306526 데이터베이스하는 사람있어??? [8] SFCFS갤로그로 이동합니다. 12.03.09 130 0
306523 PHP 배우려는데 사전지식이나 연계해서 하면 좋을만 한거 있어? 형들? [1] Lowforce갤로그로 이동합니다. 12.03.09 54 0
306521 아아 갑자기 땡긴다 조공 짤을 풀겠다 뒤는 알아서 조심 서현빠돌이갤로그로 이동합니다. 12.03.09 108 0
306519 인터넷창을 여러개 띄워놓았을 때 빨리 전환하는 법 아는 횽 있어?ㅜ [3] 흰색까마귀(118.33) 12.03.09 64 0
306518 이야 너무 야햇! ㅇㅇㅎ(117.111) 12.03.09 57 0
306517 방통위에 천리안 신고했음. iljeomobolt갤로그로 이동합니다. 12.03.09 75 0
306516 프갤횽들은 군대 어떻게갓음? [9] ㅇㅇ(121.66) 12.03.09 69 0
306514 시스템프로그래밍책추천점 중간점검갤로그로 이동합니다. 12.03.09 82 0
306512 조공을 올리옵니다. [1] 맙이갤로그로 이동합니다. 12.03.09 109 0
306511 GPIO에 대해서 질문좀 할께요 [1] (218.209) 12.03.09 59 0
306510 facebook 너무 짜증나 ㅠ.ㅠ [4] iljeomobolt갤로그로 이동합니다. 12.03.09 90 0
if - else 가 점점 늘어나는 이유 [1] 아놔콘다갤로그로 이동합니다. 12.03.09 128 0
306508 2의 보수 덧셈 질문좀 해도되? [13] 맙이갤로그로 이동합니다. 12.03.09 186 0
306504 내가 2개월만에 그만둔 회사... [6] 아놔콘다갤로그로 이동합니다. 12.03.09 261 0
306503 cuda많이 씀? [6] 그딴건없구염'ㅡ'갤로그로 이동합니다. 12.03.09 106 0
306502 Hotmail 계정 사용중지 누르면 분당살람갤로그로 이동합니다. 12.03.09 43 0
306501 우리회사는.. 적이되고싶은가갤로그로 이동합니다. 12.03.09 35 0
306499 방통위에 한국ms를 신고했음 [1] 분당살람갤로그로 이동합니다. 12.03.09 78 0
306498 정전인 프갤을 덕짤로 정화! System32갤로그로 이동합니다. 12.03.09 71 0
306496 컴공 들어온 애들 중에 1학년 때 실망하는 애들 많지 않냐?? [1] 서현빠돌이갤로그로 이동합니다. 12.03.09 138 0
306495 프갤횽들.. 쿼리 짤때.. [7] 적이되고싶은가갤로그로 이동합니다. 12.03.09 114 0
306492 퇴근의 정석 [1] 서현빠돌이갤로그로 이동합니다. 12.03.09 55 0
306491 퇴근 테크 트리 [4] ㅇㅇ(14.48) 12.03.09 83 0
306490 오늘부터 개발자들은 칼퇴근을 명령한다!!!!!!!!!!! 서현빠돌이갤로그로 이동합니다. 12.03.09 50 0
306489 윗놈들 눈치 보며 퇴근을 힘겨워 하지 마라 [3] 서현빠돌이갤로그로 이동합니다. 12.03.09 107 0
306488 퇴근하겠습니다? 퇴근해보겠습니다? 그딴게 어딨냐? [4] iljeomobolt갤로그로 이동합니다. 12.03.09 92 0
306487 시스템프로그래밍책뭐가좋나요? 중간점검갤로그로 이동합니다. 12.03.09 38 0
306486 왜 우리나라는 퇴근할 때 눈치를 보는가?? [3] 서현빠돌이갤로그로 이동합니다. 12.03.09 93 0
306485 형님들, JAVA에서 키보드없이 키보드 눌린효과를 주고 싶은데요... [6] 로히블랑코(211.221) 12.03.09 97 0
306484 JSP에 소스 다 때려박으면 말야 [3] 야요이갤로그로 이동합니다. 12.03.09 69 0
306483 강간을 해보겠습니다. [1] 야요이갤로그로 이동합니다. 12.03.09 81 0
306482 '퇴근해보겠습니다' 는 정확한 표현이다. [2] 바보플머(218.155) 12.03.09 542 1
306478 자바 웹 프 독학으로 가능? [9] ㅁㅌ(121.124) 12.03.09 193 0
306476 엄마가 칼을 사온게 미스테리 ㄷㄷㄷㄷ 서현빠돌이갤로그로 이동합니다. 12.03.09 33 0
306474 크롬에서 자바스크립트 처리 속도 [1] 공돌이대장갤로그로 이동합니다. 12.03.09 61 0
306473 바보플머의 파서강좌. [1] 바보플머(218.155) 12.03.09 106 0
306472 학교에서 프로세싱이란걸 배웟슴 [1] 강원도(1.177) 12.03.09 66 0
306471 횽들 C 매크로 뭐뭐 있지? [3] 생물학(211.234) 12.03.09 69 0
306470 내일은 금요일 [1] 생물학(211.234) 12.03.09 38 0
306469 즐거운 금요일 [2] 알렉산더갤로그로 이동합니다. 12.03.09 52 0
306467 전에 파서 짠다고 한거 건드리고 있는데 [2] 땡칠도사갤로그로 이동합니다. 12.03.09 101 0
306466 나도 샀따. [2] Gromit갤로그로 이동합니다. 12.03.09 79 0
306465 출근해보겠습니다 [1] 신입(115.23) 12.03.09 58 0
306463 정보처리기사가 있으면 뭐가 좋나요? [7] (61.81) 12.03.09 231 0
306462 도스와 윈도우의 차이점?? [2] 변질된면상갤로그로 이동합니다. 12.03.09 73 0
306460 증명 할수 있나? [3] 전원버튼갤로그로 이동합니다. 12.03.09 87 0
306459 안드로이드 초보인데 [1] cyber갤로그로 이동합니다. 12.03.09 75 0
306458 음... 이런 마사지 기구도 있네... SODMaster갤로그로 이동합니다. 12.03.09 86 0
306457 이상은없는데 오류가 뜨네 이거좀 ㅋ [13] 마실나감갤로그로 이동합니다. 12.03.09 113 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

디시미디어

디시이슈

1/2