스크립트 팁 - 가독성 좋게해주는 팁
뭐 가독성이라고하면 3개월전에 짠 소스를 다시 들여다봤을때 조금 더 쉽게 소스분석이 쉽게 가능하도록 코딩하는 것 이라고 보시면됩니다.
정말 몇가지만 유의하시면 들이는 노력에 비해 가독성을 높혀주는 코딩을 하실 수 있습니다.
대표적으로 가독성을 떨어뜨리는 대표적인 키워드는 for, while 등의 반복문과 if문이 있겠네요.
if문의 경우에는 중첩되면 중첩될수록 뎁스가 높아지므로 최대한 중첩if문을 피해주시는게 좋습니다.
가장 쉬운예를 들자면
if( 조건 ){
if ( 조건2 ){
}else{
}
}
해당 소스를 보시면 조건에 해당되면 조건2에대한 if 문을 실행하고 else문을 실행하죠, 위의 소스는 2뎁스입니다. 하지만 1뎁스로 바꿔보겠습니다.
if( ! 조건 )
return;
if(조건2){
}else{
}
위의 소스처럼 변경하시면 1뎁스의 if문으로 변경하실 수 있습니다. 뭐 이게 그렇게 가독성이 좋아지냐고 말씀하시면 if문 뎁스가 3~4가 되는 소스보단 if문 뎁스가 적을수록 소스분석이 쉽겠죠.
또한 for문같은경우에는 가독성을 떨어뜨릴 수도있지만 유연하게 코딩을 할 수 있게 도와주는 키워드이기도 합니다.
예를들면 대표적으로 궁사무기체크 같은경우는 대부분이 if || || || || if문에서 OR 조건으로 코딩되어있는 경우가 많습니다. 이럴경우에는
궁사무기가 추가되면 직접 if문마다 추가되야하기도 하며 나중에 어떤 아이템코드들이 추가되어있는지도 파악이 어렵습니다.
하지만 for과 배열을 이용하면 좀 더 쉽게 가능합니다. 편의상 자바스크립트로 작성해보겠습니다.
function isArrowWeapone(weaponeSid){
var arrowWeapones = [2414, 2455, 9999, 2305, 1999, 7575];
for( var i=0; i<arrowWeapones.length; i++ ){
if(arrowWeapones[i] == weaponeSid)
return true;
}
return false;
}
해당 함수는 무기번호를 넘겨받아서 배열이랑 비교해서 맞으면 true 를 반환하고 false를 반환합니다. 이처럼 공통으로 처리하면서 for문으로 처리한다면 for문을 모르더라도 배열에 아이템번호만 추가하면 되므로 메인개발자가 아니더라도 해당 컨텐츠를 추가할 수 있습니다.
이처럼 공통작업과 가독성 높히는 코딩 혹은 유연성을 높히는 코딩을 하시면 메인개발자의 부담도 줄어들 뿐만아니라 유지보수에도 굉장히 유용합니다.

우지냥 님의 최근 댓글
와.. 이거 없어서 블소 포기 했는데 ㄷㄷ 2023 11.15 오... 라그나로크 2023 07.11 파일이 2개라 4만 포인트인가보네요 ㄷㄷ 2023 06.30 오... 감사합니다! 2023 06.30 다 폐쇄형으로 운영해서 그렇죠 뭐 2023 04.18