[개발] IT 개발자의 잡설 - 주저리 주저리 #2
1. 하드코딩.
딱딱한 코딩을 말한다.라고 하면 철퇴로 처 맞아야 될것 같고 ㅎㅎㅎ 구냥 소스 안에다가 상수값을 박아서 쓰는 것을 말하게 되는데...  이런 느낌이다.
String helloKr = "안녕하세요.";
이런 데이터값을 코드에 박아서 쓰게 되면 변경을 할때 마다 수정과 배포를 해야해서 시간과 비용이 많이 든다. 반면에 소스를 분석하기에는 편한 구조가 된다. 눈으로 바로 보이니까.
그래서 이런 딱딱한 코딩을 배제하기 위해서 상수값들을 모아놓는 소스 파일을 하나 따로 만든다던가 별도의 텍스트 파일을 만들기도 하고 디비 테이블을 만들기도 한다. 아예 os 레벨의 환경 변수를 쓸수도 있고. 보통 소스에서는 이런식으로 부르게 되는데...
String helloKr = config.get("helloKr");
분석 난이도는 기하급수적으로 올라가게 된다. 개발자에게 실제 설정 파일이나 디비에 접근이 어려운 상황이라면 더 그렇다. 개발자에게 운영서버의 설정에 접근하거나 파일,디비 접근 통제가 없는 경우는 많지 않을테니까.
난 중용(中庸)이라는 말을 좋아하는데 세상 만사에 모두 적용된다고 생각한다. 하드코딩도 마찬가지다. 지나치거나 모자라지 아니하고 한쪽으로 치우치지도 아니하도록(사전 뜻 ㅎㅎ)  코드에 적던가 다른 방식을 사용하면 될것 같다.
사실 굉장히 애매한 말인데 상황에 따라서 다르게 써야한다는 것이다. 그 판단은 경험과 직관, 예감 등 개인적 판단에 의존하는 경우가 많게 되다보니 알아서 잘 써야 된다고 본다. 무...물론 코드리뷰를 해서 고수에게 좋은 피드백을 받을 수 있는 좋은 환경이라면... 어떨지 모르겠지만 난 직관적인 하드코딩과 디비를 통한 저장을 좋아하는 편이다. 파...파일은 싫다. 파일로 할거면 차라리 소스에 넣는 것이 낫다라고 보는 편이다.
가독성까지 겁나 떨어지는 xml을 극도로 싫어하는 이유다. 자바를 쓰게되면 스프링을 만나게 되고 스프링을 만나면 필연적으로 xml을 쓰게 되는데 설정 방법이 복잡하고 수정을 하고나면 서비스를 재시작해야하는 등 불편한 점이 한두가지가 아니다. 테스트와 운영 설정파일이 다르니 형상관리가 애매해지는 경우도 있고.
2. 실전은 다르다.
많은 개발자분들이 한번씩 보다가 실소를 머금는 짤이 바로 이것이다. 지난번 뻘소리를 쓴 개발자의 잡설에서도 테스트 중요성을 여러번 이야기 했었는데 저 짤을 보면 단박에 이해가 된다.
우리의 테스터님들께선 아주 정교하게 테스트를 해주시지만 그만큼 우리 프로그램 테스트에 아주 최적화 되신 분들이라 아주 빈틈이 많은 프로그램도 잘 써주신다. 반면... 우리 클라께서는... 예상치 못한 움직임으로 항상 우리를 당황케 하시는 능력이 있으시다.
다양한 테스터가 있어야겠지만 그래서 해당 프로그램의 비지니스를 모르고 프로그램 특성까지 모르는 테스터께서 예상치 못한 버그 발견으로 한번씩 홈런을 쳐주신다. 메뉴얼화된 테스터/자동화된 도구보다 더.
3. 프로젝트.
우리 개발자들이 보면 또 한번 씁슬하게 웃게 되는 짤이 있다. 물론 모든 프로젝트가 이렇지는 않겠지만 대다수가 이렇게 돌아가는 모습이 있다라고 생각해서 일거다.
또 있다.
나 또한 '그래도 사랑해'를 외치며 살아가고 있는 것 같은데. 많은 이해관계자들 덕분이라고 생각한다. 예전에 아는분께 들었는데 모 고객사에서는 저녁 8시에 회의를 마치고 내일 아침 8시에 결과물을 보자는 곳도 있었다고 한다. 최근 개발자들의 입지가 올라갔다라고 하지만 극소수의 능력자분들을 빼면 글쎄...
내가 한국 IT 프로젝트를 논하고 비전을 제시한다go? 그것도 글쎄... 하지만 개발자들끼리 모여 공감하고 얘기할 수 있는 공간이 여기 아니겠는가. 오늘 이런 버그를 만났다. 진상 고객사를 만났다. 정도의 얘기를 하고 공감할 수 있는 공감의 글들도 많았으면 좋겠다. 최근엔 @asinayo님의 개발일기를 재밌게 보고 있다. sibba 프로젝트 파이팅. ( 시빠라고 읽나요? )
그럼 System.exit(0); - 난 자바니까.




저는 컴퓨터 관련해서는 문외한에 가까운데요
두번째 사진 실전은 다르다를 보면서 개발자들의 어려움이 조금은 이해가 되는것 같습니다
감사합니다
이건 비단 개발자만의 일은 아니겠지요. ^^
What a fantastic work you are doing? CHEER @nhj12311
고생많으십니다 ㅠㅠ
고생이랄것읏 ㅜㅜ
하악.. 하악... 이런 짤들 너무 기분 좋아여... (침)
여... 역쉬 호.. 혼모농~
딱딱한 코딩을 말한다. 이부분에서 오옷 그렇군이라고 생각한 1인ㅎㅎ
nhj12311님 즐거운 저녁시간되세요^^
ㅋㅋㅋㅋㅋㅋ
개발은 20, 디버깅(테스팅, 검증)이 80이죠...요샌 피드백루프가 짧아져서 더 힘든거 같아요. 전 그래서.. 좀 더 깊숙히.. 들어가 버리긴 했는데.. 이쪽도 마찬가지입니다. ㅋㅋ 암튼 검증은 중요하죠.. 이건 AI가 아무리 좋아져도 또 다른 관점에서 사람이 필요한 일이다 보니.. ㅎㅎㅎ 이 분야는 개발자보다 좀 더 오래 살아남을 듯하네요..
예 저도 20~30이 개발이죠. 피드백 주기까지 빠르다면... 혹시 동시에 여러건 하시는것 아닙니까? ㅎㅎ
엎친데 덮친격... ㅜㅡㅜ
ㅎㅎ 제가 프로그래머가 아니기 때문에 잘은 모르겠지만.... 먼가 요구사항이랑 나중에 나오는게 차이가 큰것인가 봅니다....ㅠㅠ쉬운일이 아니네요... 그래도 먼가 돌아가도록 창조를 한다는 것이...
헛 저는 파일로 뽑아내는게 좋습니다.. ㅎㅎㅎ 물론 이쁘게 뽑아내지않으면 지옥을 ...
그리고 저번 글도 그렇지만글 내용들이 핵공감을 일으키네요 ㅋㅋㅋ
그리고 ㅠㅠ 재미있게 봐주신다니 정말 감사합니다. 개발 관련이라 지만 딱딱한 코드보다는 여러가지 상황이나 드립을 쳐서 누구나 재미있게 읽어줬으면 하는 마음에 code를 제거 했는데... 요새 kr-dev 태그에 맞는 내용인가... 고민 많이 하고 있었거든요. 덕분에 큰 힘이 됩니다. 정말 @감사해 요 ㅠㅠ
그리고저도
시빠라고 읽습니다. 작업하다가 많이 부르죠 ㅎㅎreturn vote.full; (요새는 ts로 하고 있으니..)
취향과 상황에 맞게하는거져 ㅎㅎ 먼가 아시나요님의 일기를 보며 공감이 많이 되어서일겁니다. ㅎㅎ
addReward(nhj12311,asinayo.fullVote);
return thank u.!
오~~ 아시나요님~ 글 좋네요~~ 저도 지금 개발하는거 관련해서~ 조금의 코딩 내용과 넋두리 포스팅을 계획해 봐야겠습니다~ ㅎㅎ
nhj12311님은 요즘 개발 근황은 어떠신가요?? ㅎㅎ 회사일말고요!! ㅋ
최근 뮤트 리스트를 보여주는 기능을 만들고 싶은데 api가 없어서 고심중입니다. ㅎㅎ 스팀디비 같은게 아니면 안되려나요 ㅜㅜ