[헝그리보더닷컴 이용안내]

휘팍 제설 소식에 들뜬 1人 입니다. ㅋ


맨날 눈팅만 하다 재미난(응???)게 하나 있어서 애기 할라구요..


전 년차좀 되는 프로그래머입니다..ㅋㅋ 도대체가 제머리론 이해 되지 않는게 있어서요.


여러 프로그래머님들 의견이 궁금합니다.


전 현재 모 업체에서 SM 업무를 하고 있습니다. 현재 서비스 중인 소스코드중에 이런코드가 잇네요?


.... 생략


if (true) {

    ... 생략

}

.... 생략


저런 코드를 쓰는 이유가 뭘까요?? 저코드를 써야 되는 이유가 있나요? 당췌 이해가 안되서리..  


가독성? 아님 뭐 퍼포먼스 향상? 비교하는거 자체가 성능저하원인중 하나일텐데..


생각없이 프로그램 짜는거 같기도 하고.-_-; 그냥 좀 웃겨서요..ㅋㅋ  나만 웃긴건가.


필드에서 저런코드를 사용하나요? 진짜 궁금해서 그래요.ㅋㅋ


뭐 암튼.. 시즌준비 잘 하시구요. 올해도 다들 안전보딩 하세요~!!



p.s 질문하면 기묻인가요?ㅋㅋ


엮인글 :

Dark.H

2012.10.18 20:11:07
*.161.143.22

일단 탑승 전에 개인적인 견해로는...
해당 코드가 첨엔 어떤 조건을 만족해야만 돌아가게 만들어졌다가 어떠한 이유로 해당 로직이 항상 돌아가도록 수정이 되어야 했겠죠.
누군가가 그 코드를 그렇게 수정한게 그 이후 아무런 리팩토링도 이루어지지 않고 지금까지 온 듯 하네요.

아무래도 처음 개발한 사람과 수정한 사람이 동일인이 아니어서 저런 코드가 남아있게 된 듯합니다. 이 기회에 리팩토링하세요.
.
.
.
자....이때 고민이 드실거에요. 음...지금 잘 돌아가는데, 내가 고쳤다 잘못되면 어떡하지? 이런 고민들.....의 결과가 지금 저 코드이지 싶네요.

only보딩

2012.10.18 20:11:39
*.169.144.32

테스트 용이 아닐까요?? 전체 주석처리 하기 귀찮아서 TRUE FALSE 이렇게 상황에 따라 바꾸는듯...보통은 Define을 많이 하지만...접..

세르난데

2012.10.18 20:14:23
*.223.17.184

아 졸업하고 다신 이프문 안볼줄알았는데...
망해써...

루키J

2012.10.18 20:17:12
*.196.247.197

제 생각에는 지역으로 묶기 위해서 처리한거 아닐까요? if(true){} 같은 문은 이미 TRUE 이기 때문에 컴파일 단계에서 그냥 {} 와 동일하게 처리 되게 생성되지 않나요?

조조맹덕

2012.10.18 20:59:43
*.223.20.245

첫분과 비슷항 생각입니다 일단 저 안의 코드는 다른 코드와는 틀린.. 항상 실행이 되면 안되는 코드등 조건이 걸려야하는... 혹은 걸릴수 있었던 코드일겁니다 저렇게 처리하는게 시작과 끝 주석하는거보다 깔끔하죠
profile

량희

2012.10.18 20:59:42
*.237.87.83

컴공과지만 컴퓨터언어따위..
profile

량희

2012.10.18 20:59:42
*.237.87.83

컴공과지만 컴퓨터언어따위..

&(왜?)

2012.10.18 20:44:08
*.246.77.11

어떤 시스템의 어떤 코드인지 모르겠지만...
루키J님이 밀씀해주신 내용에 대해서, C에서는 예전 시스템의 호환성을 위해 해당 코드를 사용하기도 합니다.
http://stackoverflow.com/questions/541705/is-iftrue-a-good-idea-in-c

덧. 이건 기묻으로 가는 버스죠? 저도 태워주세요~~~

저승사자™

2012.10.18 21:00:30
*.42.219.108

만약 사실이라면....








전 로또나 됐으면 좋겠네요;

chaos1

2012.10.18 22:05:34
*.117.252.90

헝글에서 stackoverflow.com 링크 주소를 보게 될줄이야...

--;;

DandyU

2012.10.18 22:14:58
*.72.79.45

확실히 알려면 false일 때, 동작하는 로직이 무슨 용도인지 알아야 될거 같구요.
음 java에서는 필요에 의해서 쓰기도 하죠. 테스트 용도라던지 뭐 그런.. -_-;
근데 직접 if문에 true를 명시하는 경우는 드물긴 하죠 -_-;

DandyU

2012.10.18 22:14:58
*.72.79.45

확실히 알려면 false일 때, 동작하는 로직이 무슨 용도인지 알아야 될거 같구요.
음 java에서는 필요에 의해서 쓰기도 하죠. 테스트 용도라던지 뭐 그런.. -_-;
근데 직접 if문에 true를 명시하는 경우는 드물긴 하죠 -_-;

메이의꿈

2012.10.18 22:18:38
*.94.97.6

void main(void)
{
}
......

RemyMartin

2012.10.18 22:59:37
*.230.142.12

단도직입적으로, 전혀 있어야할 이유가없어보입니다.. 윗분말씀처럼 테스트후 남은 정도랄까...

RemyMartin

2012.10.18 22:59:37
*.230.142.12

단도직입적으로, 전혀 있어야할 이유가없어보입니다.. 윗분말씀처럼 테스트후 남은 정도랄까...

pirogramer

2012.10.18 23:27:44
*.36.18.112

chaos1 님 말에 전적으로 동감...
구글링해야 볼수 있던 스택오버플로닷컴을 볼줄이야ㅋㅋ
링크 덕분에 공부 하나 했네요 ㅋ

습흐링

2012.10.19 00:48:04
*.111.106.210

그냥 테스트로 남은듯.....
오늘도 야근하고 왔는데 헝글에서도 코드를 볼줄이야.. ㅠㅠ

그라우스

2012.10.19 01:20:48
*.245.4.97

말그대로 트루값이였나봐여 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
function (){
}.....

JUNE_1017403

2012.10.19 08:37:12
*.137.38.215

테스트용이였던거 같은데요...

(테스트용으로 사용하다 지우지 않은듯..저도 저런식으로 작업한게 남은부분이 있긴하네요 ㅎ)

그런데 헝글에 프로그래머분들이 꽤 있으시네여;;

떡종이

2012.10.19 09:07:37
*.220.253.122

어이쿠야 의외로 개발자분들이 많으시네요..ㅎㅎ 소스코드 입니다.

public void processPRVDAY_EXPCT_PROCESS() throws Exception {
String strDEADLN_DAY = getInputActionBox().getString("strDEADLN_DAY");
String strDEADLN_CHK = getInputActionBox().getString("strDEADLN_CHK");
String strDEADLN_MONTH = strDEADLN_DAY.substring(0, 6) ;
String strDEADLN_BRAN_CD = "011" ;
Dataset ds = null;

String returnMessage = "";

int iRetval = 0 ;
ACTM0101Dao oDao = new ACTM0101Dao(getConnection(), getInputActionBox().getString(FixedParam.KEY_CALL_METHOD), getProcessID(), null );

Throwable throwable = new Throwable();

if (true) {
oDao.mPROCESS_DEADLN_TYPE1(strDEADLN_DAY, strDEADLN_CHK) ;
}


ds = oDao.mSelectDEADLN_BRAN(strDEADLN_BRAN_CD, strDEADLN_MONTH) ;
setRecordSet(FixedParam.KEY_RECORDSET, ds);
}

변수를 사용하는것도 아니고 ... 항상 실행되어야 할 구문이라면 굳이 if (true) 을 써야 했는지가 궁금해서요.ㅎㅎ


C 는 접해보지 않아서요... (C 코드에선 사용한다니.ㅋㅋㅋ~!)



답변 감사합니다. 좋은 하루 되세요~!!ㅋㅋ

그래이젠

2012.10.19 09:27:56
*.111.135.254

어익후~ 개발자들 많으시군요~ (일단 탑승이요)

엘리바스

2012.10.19 10:02:52
*.223.172.20

타실분 더 없으신가요~~ 오라이~~ 저두 개발자~~ 냐하~

전호석

2012.10.19 10:26:15
*.115.97.49

if문안의 코드가 exception이 발생할수 있기 때문에 if(true){...}로 감싼거 같네요.
public void processPRVDAY_EXPCT_PROCESS() throws Exception 여기서 throws Exception를 지워보시면
확실히 알수 있을듯합니다.

만약 oDao.mPROCESS_DEADLN_TYPE1(strDEADLN_DAY, strDEADLN_CHK) ; 이부분에서 exception이발생할수 있다면
if()문 대신 try catch로 감싸보세요~

심야너굴

2012.10.19 10:45:18
*.92.147.189

c99에서는 코드 중간에 변수선언이 가능하죠.
c89와 같은 legacy 시스템에서는 불가합니다.
따라서 compatibility를 위해 block 설정을 해주면 c89/c99 모두에서 동작이 가능합니다.

그런데 C에서는 이럴경우 굳이 if를 쓰지는 않죠.
Curly braces로 충분합니다.

if를 넣고 안넣고 어셈블리 코드에서 차이는 없습니다. (컴파일러 최적화)

http://pastebin.com/uV2TZJ4h
http://pastebin.com/V8ZmaBiP

위에서 주신 stackoverflow 링크를 보면 아래와 같은 comment가 나옵니다.
http://stackoverflow.com/questions/541705/is-iftrue-a-good-idea-in-c#comment354274_541725
C++에서 local scope를 훨씬 광범위하게 사용한답니다.
List of Articles
번호 제목 글쓴이 날짜 추천 수 조회 수
공지 [자유게시판 이용안내] [61] Rider 2017-03-14 43 219880
56402 야근.ㅡㅜ;//!! 아놔 [5] werr 2012-10-18   215
56401 퇴근하고 집에와보니 택배도착 ㅋ [16] 안녕하십시니끼 2012-10-18   585
56400 크루져 스케이트보드 타시는분~? [12] 우히히힣 2012-10-18   1219
56399 오늘 휘팍이 첫제설을~ [9] 량희 2012-10-18   554
56398 생각하지 않은 돈이 생긴다는데 [8] clous 2012-10-18   344
» 프로그래머 이신분들 보십니다~!! [24] 떡종이 2012-10-18   712
56396 이용안내 위반으로 비공개처리합니다 - rightfe file JEFF_ 2012-10-18   340
56395 헝글 컵흘 브레이커 님께.... [15] 에어울프 2012-10-18   379
56394 학학 보드라휑 던전 무사탈출... [16] 세르난데 2012-10-18   720
56393 신포닭강정에 맥주한잔 캬~~~"간호사와사랑에빠지다" 2탄은.. [49] 키커와사랑... 2012-10-18   1493
56392 휘팍 오늘 첫제설했는데 가고싶네요ㅠㅠㅠ [4] 꽃보더 2012-10-18   496
56391 오왕~ [32] 강몽냥 2012-10-18   598
56390 퇴근 30분전 ........ [10] 세르난데 2012-10-18   251
56389 다시 태어 났습니다 (__)ㅋ~ [29] 720도전 2012-10-18   732
56388 착한남자 [10] CoolPeace 2012-10-18   464
56387 딜이 안먹히네요 ㅠㅠ [31] 곽진호 2012-10-18   717
56386 자전거 구매...ㅋㅋ [10] 안녕하십시니끼 2012-10-18   397
56385 sp바인딩 [10] 사실난널 2012-10-18   785
56384 휘팍과 성우 벙개 마감이 코앞입니다! [9] 2012-10-18   399
56383 우왕 어느덧 4렙이예요~ㅋㅅㅋ;; [34] 타쿠 2012-10-18   265