매우 아끼는 학교 후배이자, 개인적으로 존경해마지 않는 신영진 님이 괜찮은 글을 또 하나 썼더군요
(왜 항상 이런 좋은 글을 쓰냐...같은 블로거 입장에서 부끄럽다 ㅠ.ㅠ)
이에 대한 글은 개발자의 시간을 갉아먹는 함정들 을 확인하시면 됩니다.(이 글을 읽으시려면
읽고 오시는게 좋을 겁니다 ^^:)
여기서 3가지 함정에 대한 얘기가 나오는데, 공감이 가는 구석도...이건....생각이 조금
다르다는 생각도 들기도 하더군요
먼저 첫번째, 설계의 함정에 대해... 그렇습니다. 실제로 개발하다보면, 설계라는 것이 그렇게
흘러갈 수 밖에 없습니다. 그래서 설계는 많은 삽질을 경험한 아키텍트들이 맡는 것이겠지요.
신영진 님의 성급한 설계 라는 용어 선택도 이를 반영하는 것이겠지요.
최근에 TDD, BDD 를 보면서 신입 개발자들이 관심을 가져야 할 것은 오히려 이것이 아닌가 하는
생각을 합니다. 설계 능력이 조금 부족하다면, 오히려 이런 방법들이 설계 능력이 키우는 데에
효과적이 아닐까요?
최근 Ruby 4차 세미나에 갔을 때, 강규영님의 말씀 중에 하나가 생각이 납니다.
정확한 말은 기억이 안납니다만, 대략 요지는...
컴파일이 느린 예전에는 견고한 설계와 그에 대한 테크닉과 원칙, 방법들이 많이 중요했었다.
하지만 요즘처럼 컴파일이 빠른 때에는 오히려 그것은 Legacy 가 되어가고 있다. 그래서 새로운 개발 방법을 관심을 가져야 하는 것이 아닌가....
였습니다. 저도 이 말에는 무척 공감합니다. 물론 학교에서 가르치는 그러한 설계, 설계에 쓰이는 DFD나 UML이나 산출물들이 중요하지 않은 것도 아니고, 결코 필요없다는 것도 아닙니다. 하지만 실제 개발이라는 것은 그림 그리듯이 개발하는 것이고 개발자들에게 필요한 것은 이런 새로운 Agile 적인 방법들입니다.
특히나 신입 개발자들이 관심을 가져하는 것일 뿐이죠. 하지만 실제로 컴공을 졸업한 개발자들은 새로운 방법에 대한 아무런 관심이 없다가(학교에서 하는 것도 버거웠다가...정답이겠지요.), 회사에 와서는 생소한 기술들을 습득하기 바쁩니다. 이런 방법들에 대해 생각해보는 자체가 힘들다는 생각은 합니다만..이 글을 보는 신입 개발자들이라면 이런 개발 방법론에 대한 적용을 고려해보는 것도 좋은 방법이라는 생각을 합니다.
그리고 두번째 재사용... 재사용의 레벨에 대한 강조가 없었다는 것이...강의의 단점이 될 수도 있을 겁니다.
영진님의 말에 공감하는데, 여기에 하나 더 붙이고 싶군요. 제 글과 김창준님의 글 이 도움이 좀 될 수 있지 않을까 싶습니다.
마지막으로 세번째, 호환성. 이것에 대해서는 어떤 면에서는 동감이 가고, 어떤 면에서는 아니다. 이것에 대한 저의 생각은 회사마다 다르다가 정답입니다. 제가 다녔던 회사는 멀티 플랫폼 회사였습니다. 처음에는 A라는 OS와 B라는 컴파일러에서 개발되었습니다만...시간이 흘러 흘러 다른 플랫폼, 다른 컴파일러에서 올릴 필요가 여러 차례 생깁니다. 저도 처음에는 절대 없을 것이라 생각하고 호환성을 생각하지 않고 개발했었습니다만...그 함정에 빠져 나중에 무지 고생한 적이 있었습니다. 외교부 프로젝트 였는데, 결론적으로, 삽질 만땅이었습니다 ㅠ.ㅠ
메모리 할당, 라이브러리의 dynamic loading의 이상 동작 ...stack 의 크기 제약 등...정말 여러가지가 괴롭혔지요.
여튼 그래서 영진님의 말에 한가지 덧붙이고 싶습니다. 회사가 한 플랫폼과 한 컴파일러를 사용하고, 바뀔 필요가 없겠다 싶으면, 호환성에 대한 것을 나중을 위해라고 생각하셔도 무리가 없습니다. 하지만 회사가 멀티 플랫폼에 대한 고려가 있겠다 싶으면 신입이라 하더라도 충분히 고민을 하고, 회사 내의 선배 개발자와 충분히 논의를 할 것을 권해드립니다.
'개발자로의 생각' 카테고리의 다른 글
| 사이냅 문제 풀이 공개...(대단한 소스 아님 ^^) (6) | 2007/09/19 |
|---|---|
| 코드를 쓰는 것과 영어와의 관계에 대한 글...괜찮네요. (4) | 2007/09/17 |
| 신입 개발자들에 대한 함정들에 관한 생각 (2) | 2007/09/12 |
| Synap 문제 한번 풀어보고 있습니다. (8) | 2007/09/09 |
| 인터넷 뱅킹 메모리 해킹...그거까지 했어야 하나...ㅡㅡ; (19) | 2007/08/27 |
| 28일 SOA, Web 2.0 세미나를 다녀오면서... (7) | 2007/07/31 |
이올린에 북마크하기
이올린에 추천하기