C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
분야별 포럼
C++빌더
델파이
파이어몽키
C/C++
프리파스칼
파이어버드
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

자유게시판
세상 살아가는 이야기들을 나누는 사랑방입니다.
[6794] 모두들 저와 닷넷에 대한 생각이 다르군요^^
Dante H [h64d5791] 1262 읽음    2003-02-13 11:23
안녕하세요 단테입니다.

뭐 요즘따라 닷넷에 대한 자료가 많이 올라오는데 닷넷에 대한 제 생각을 말씀드리죠.

워낙에 말주변이 없어서 잘 정리는 못하겠지만 많은분들이 오해하고 있는 부분이 있습니다.

그 부분들을 차례대로 정리해보려고 합니다.

1. .NET = C#

이 부분은 절대 잘못된 부분입니다. 닷넷을 설치하면 VB.NET, VB.NET, C#.NET등이

설치됩니다. (^^;;) 아 위에 말은 농담이고 일단 C#에 대해서 MS가 미는 정책은 틀림없는

사실입니다. 하지만 .NET에서 최고의 개발환경은 C#이다. 라는 말은 동의할 수 없네요.

이 부분은 MS도 그렇게 생각하고 있을겁니다.

일단 제 생각은 이렇습니다. VB만큼 쉽고 VC의 강력함을 가진 새로운 언어를 만들어 낼려다

만들어 낸것이 C#입니다. 이러한 상황이다 보니 C#을 사장시키지 않기 위해서는 C#을 많이

홍보하고 새로운 사용자를 많이 받아들여야 하는 상황이 되는거죠. (자바쪽과 일이 틀어진것도

많은 자리를 차지했을겁니다.) 그래서 이번 버전에서는 상당히 C#쪽을 홍보하고 많은 지원을

하게되는 일은 당연한겁니다. 결론은 MS가 C#의 사용자를 모으기 위함이지 C++외 기타 개발시장을

없애고 줄이기 위해 C#만을 홍보한다는건 아니라는 겁니다.

2. .NET에서는 VC++ 의 지원이 엄청 줄었다?

이 부분 역시 틀린 부분입니다. MS 홍보자료를 자세히 보셨으면 아시겠지만 이번에 VC는 .NET

이라는 새로운 환경을 지원하기 위해서 MC++ (Managed C++)이라는 새로운 개념을 도입했습니다.

C#등은 닷넷 전용 프로그래밍만이 가능하지만 MC++의 경우는 기존의 C++과 새로운 닷넷개념을

무리없이 혼용해서 사용할수 있으므로 차라리 강력해졌다면 훨씬 강력해 졌다고 할 수 있습니다.

홍보자료 귀퉁이에 보면 적혀있지만 C#이 .NET을 대표하는 언어라면 MC++은 .NET환경의 칼이다.

라는 의미의 글이 있습니다. 그만큼 코어적인 면이 많다는 이야기죠.

3. .NET은 과연 실제로 활용 가치가 있을까.

이 부분은 아직 거론하기에 굉장히 민감한 부분입니다. 아직 다른 OS 버전의 .NET 프레임워크가

나오지 않은 상황에서 미리 거론하기는 그렇지만, 일단 자바와 같은 정도의 지원을 할 수 있다면

뭐 그리 나쁠것 같지는 않습니다.

4. MS는 전문 프로그래머들이 설자리를 없앤다.

아래의 글을 보면 4일만에 초딩이 쇼핑몰을 짠다는 글이 있습니다. 그 글이 뭐 토를 다는건 아니

지만 원래 빌게이츠가 Basic 출신이라서 그런지는 모르겠지만 쉬운 개발툴은 하나쯤은 항상 만들어

놓습니다. 하지만 그 개발이 쉬운 툴로 개발하면 우리가 원하는 진짜 성능이 날 수 있을지..

제 대답은 NO 입니다. 절대 그럴수가 없습니다. 제 생각에는 MS는 모든 프로그래머들을 전문가에서

일반가 즉 스페셜리스트에서 제너럴 리스트로 바꾼다는 생각은 없는것으로 저는 생각하고 있습니다.

제 생각은 프로그래머의 구분을 주려는것 같습니다. 예전 소프트웨어 공학 시간인가여, 이런 내용

이 있죠. 프로그래머의 종류를 많이 들어주는 것인데 앗 막상 쓸려니 용어가 잘 기억이.. 학교

다닌지 꽤 지나서... 여하튼 거기에 보면 "시스템 프로그래머", "어플리케이션 프로그래머" 등으로

프로그래머를 구분하고 있습니다. (아.. 용어가 제대로 맞는지는 모르겠습니다. ㅠ.ㅠ)

그중 시스템 프로그래머의 경우는 항상 코어적인 면을 어플리케이션 프로그래머는 그 위의 단계를

개발하는것으로 정의하고 있는데 제 생각에 MS역시 그 생각과 마찬가지라고 생각합니다.

예를 들면 제가 항상 개발하는 서버 프로그래밍쪽을 보겠습니다. 특이하게 .NET에서는 모든 LIB를

공유하다보니 VB, C#, VC 모든 환경에서 IOCP를 사용할 수 있더군요.. MS쪽도 도움말에 상당히

강점을 두고 써 놓고... 하지만 실제적인 개발에 들어가니 그게 아니더군요.. 서버 개발을 해 보신

분들은 아시겠지만 IOCP를 구현하는 자체가 서버를 개발하는건 아닙니다. 패킷에 따른 처리의

최적화.. 그게 바로 서버 프로그래밍의 진짜입니다. 그런데.. VB에서는 포인터가 없어 String 연산

으로 패킷처리를 해야하고, C#에서도 역시 포인터가 없으니 스트링 연산 아님 특이한 방법을

쓰더군요.. 뭐 자세히 거론하지는 않겠지만 클래스를 시리얼 라이즈 시켜 보냅니다.^^;; 근데

잼있는건 C# 특성상 시리얼 라이즈 시켜 보내면 다른 Winsock이라 Win32 기반과 사이즈가 다르게

되더군요.. 일단은 제가 아는한은 통신 불가 입니다. 그러니 결국에는 MC++쪽으로 돌아올수 밖에

없습니다. 즉 프로그래밍은 아무리 쉬워져도 코어적인 부분을 만드는 프로그래밍 작업은 결코

쉬워질 수 없다는거죠^^;; 그러니 MS의 방침이 누구나 할 수 있는 프로그래밍 이라는건 좀 이상

한것 같습니다. 그렇게 쉽게 프로그래밍을 할 수 있는 환경을 누군가는 만들어 주어야 하니까요.

자신이 그런 단순 프로그래머가 되고 싶지 않다면 그런 환경을 제공하는 프로그래머가 되면 되는

것이 해결책이 되는셈인가여..(앗 너무 논란의 여지가 많은 말을 남겨 버렸군요)



여하튼 대충 정리하면 .NET환경이라는것이 우리는 아는것 처럼 그렇게 나쁘고 후진것은 아니라는

겁니다. 일단 .NET으로 프로젝트도 진행해 보시고 심도있게 확인후 .NET을 욕하더라도 욕하는

것이 올바른 자세가 아닐까.. 하는 생각이 듭니다.


긴글 읽어주셔서 감사합니다.ㅋㅋㅋ

그럼 이만
김석찬 [kalsman]   2003-02-14 18:01 X
긴글이라뇨 님의 오랜 경험과 지식에서 오는 진한 육수같은 글이었습니다...

+ -

관련 글 리스트
6794 모두들 저와 닷넷에 대한 생각이 다르군요^^ Dante H 1262 2003/02/13
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.