개발 프로젝트를 하고 느낀점

goodnux의 이미지

이번에 2달 짜리 개발 프로잭트에 들어가서 거의 막바지에 와있습니다
워낙 짧은 기간의 막장 개발을 참여했습니다
기존 업무를 파악하고 신규추가 기능을 개발하는일을 했습니다
jsp 책을 사서 며칠 들여다 보고 근데 코딩은 java로 하네요
java책은 안샀습니다
그냥 jsp책에 조금 있는 자바문법보고 인터넷보고 스크립트 언어 jsp만을 봤을때는 그냥 편하게 들어왔는데요
java 소스코드를 보니까 며칠동안 이해가 안되고 멍해있었습니다
지금은 소스를 보면 이해가 가고 코딩도 가능합니다
처음 프로잭트에 들어가서 과연 할수 있을까
java를 모르는데 할수 있을까 생각을 했습니다
업무파악을 하고 프로그램을 설계를 하기 시작했죠
이때는 정말 SE의 강점이 드러난다고 생각합니다
초급 프로그래머들이나 그냥 저냥 하시는분들은 어떻게 만들어야 할까 고민을 할때 제머리속에서는 지금 만들고 있는 아키가 그대로 머리속에 그려졌습니다
그리고 왜 jsp java를 써야 하나에 대해서도 알것같습니다
자원적인 측면에서 본다면 JVM은 1G 이상의 메모리는 컨트롤이 힘들어 집니다
예전에 하드웨어가 빈약하던 시절에는 JAVA를 써야 하는 이유가 있겠죠
하지만 요즘은 넘쳐나거 어떻게 자원들을 활용할수 있을까 그래서 가상화를 많이들 하고 있습니다
자원적인 측면에서는 책에나와 있는 적은 자원으로 많은 일을 처리할수 있다는 요즘에 맞지 않다고 생각합니다
또한가지 EJB를 들고 나오는데요
사실 EJB는 원격 시스템의 함수를 호출하고 결과를 받는것입니다
쉽게 말해 소켓으로도 그러한 기능들은 구현이 가능하고요
또한 EJB를 쓰는 이유중에 하나가 본사 지사의 개념으로 지사에서 본사에 자원을 콜해서 쓸수 있다는 강점을 드는데요
하지만 지사가 지방에 있어도 중앙집중적으로 구축이 되는곳이 많고 네트웍의 사정이 무척 좋아진 상황이구요 저부분도 아니라고 생각합니다
그럼에도 거의 대부분의 SI프로잭트들을 보면 왜 쓰는가 인데요
그것은 개발의 효율성 개발된 프로그램의 모듈화 이후 개발에 확장이 용이하게 한다는것에 있습니다
A라는 시스템이 있고 추가 기능이 필요해 B시스템에 구현하고
A시스템은 EJB를 통해서 B의 추가 기능을 호줄해서 쓴다는 것입니다
별로 대단한 개념들도 아닌데 책이고 문서에서는 말들을 왜 이렇게 어렵게 써놓고 그것을 광고하는지
이제 프로잭트가 끝나가고 계속 프리렌서를 할것인가 SE를 할것인가 기로에 서있네요
이제는 개발도 할만한것 같고 나름 재미도 있는것 같네요

jw8704의 이미지

http://kldp.org/node/116735 <- 이글에 제가 DCOM 을 꼭 활용해야만 하는 경우가 어떤것인가요? 에 관한 질문을 올렸습니다.
이글이 올라오기 전에 올린 글인데요 답변을 달아주신 분들이 설명을 잘 해주셨지만 그래도 궁금증이 완전히 해결되진 않았었습니다.
DCOM 을 공부하면서 궁금증이 생겨서 올린 질문이었는데 , 저또한 그당시 socket 프로그래밍으로도 직접하면 DCOM 과 같은 개념을 구현할수있는데
DCOM 을 쓰는 이유는 무엇인가? 왜 DCOM 이란 특별한 이름이 붙어있는것인가? 하는 질문을 갖게되었었죠..

예를들어 윈도우즈에 GUI 형식의 프로그램을 만들려면 WinAPI 를 사용해야한다. 왜? C언어로는 그런것을 구현할수없기 때문이다.
뭐 MFC 를 사용해서도 할수있지 않나요? 라는 말에는 MFC 도 WinAPI 를 래핑한것이다. 또 MFC 가 WinAPI 를 래핑하지않았다해도 윈도우즈를 만든 동일회사에서 만든것이기 때문에 GUI 형식의 프로그램을 만들려면 MFC 혹은 WinAPI 를 사용해야한다. <- 이것과 같은식으로 DCOM 을 꼭 사용해야만 하는 이유를 예를들어 알고싶어서 올린 글이었습니다.

그런데, 그때와 달리 지금은 DCOM 이 응용기술에 속하는것이라고, 응용기술을 나는 이미 여러개 경험하고있는데 왜 굳이 DCOM 에 대해서 걸렸던걸까?
하고 가끔씩 생각해보는 정도입니다.

아마도 DCOM 을 소켓으로 풀어쓰면 어떻게 되는가 하는 정도의 책이 있다면 참 좋긴하겠군요 ㅋㅋ

DCOM 을 읽을당시 EJB 가 무엇인가 에 대한것 정도는 알고있었습니다.

올리신 글을 읽으면서 "EJB는 원격 시스템의 함수를 호출하고 결과를 받는것입니다. 쉽게 말해 소켓으로도 그러한 기능들은 구현이 가능하고요" 이부분을 보고 저도 그렇게 생각했었지만 이 생각을 책들에서 명시적으로 일치하는 문장을 찾지못했었는데..
여기서 만나게되어 사실 님과 제가 일치는 하지만 이것이 우리모두 잘 이해하고있는건지 모두 틀린건지 그건 모르지만.. 그냥 ..아 내생각이 그렇게 틀린건 아니었나? 하는 마음에 이글을 적었습니다. (저와 같은 생각을 하신거로 제가 이해한건 맞죠?ㅋ)

본론에서는 벗어났지만.. 제가 관심있는 부분에 대한 글이 있어서 적었습니다.