Microsoft MVP성태의 닷넷 이야기
.NET이 왜 성공할 수밖에 없는가? [링크 복사], [링크+제목 복사],
조회: 6194
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

왜 .NET이 성공할 수밖에 없는가?

뭐... 제목이야 거창하지만. 짧게 의견을 적어보고자 한다.
그 질문에 대한 대답은 "쉽다"일 뿐이다.

뭐 있겠는가? 쉬우니 성공할 수밖에 없다. 이 사례는 쉽게 C++과 자바, C++과 VB에서 찾아 볼 수 있다.

개발자는 어찌되었든 간에... 대부분은 대학교에서 공부했거나 뜻한 바 있어 "학원"에서 배출된 경우가 대부분일 것이다. 사실 "기업" 내부의 필요에 의해서 양성되는 경우도 적잖이 있는 것으로 안다.

현상은 단순하다. 100명이면... 그중에 C++을 배울 수 있는 역량을 가진 사람이 몇 명이나 될 것이라고 생각하는가? 상대적으로 자바는 어떠한가? 매우 쉽다. 그걸로 끝이다. 매우 쉬울 뿐이었다.

기업은 시스템을 구축해야 함에 있어, 어려운 C++을 사용할 수는 없는 노릇이다. 대학에서는 학생들에게 무조건 어려운 언어만을 목표로 삼을 수는 없다. 알고리즘이 중요할 뿐이며, 그에 대한 도구로 훌륭한 자바 언어가 있을 뿐이다. 학원에선... 결국 기업이 요구하는 인력을 배출하는 것이 학원이다. 당연히 자바 인원이 많을 수밖에 없다.

과거, Microsoft는 VC++밖에는 없었다.

VB는 왜 성공하지 못했는가? 라고 질문하실 분이 계실 것 같다. 그렇다... 자바만큼이나 VB도 매우 쉽다. 그럼에도 불구하고 VB는 자바를 누르지 못했다. 그 이유가 무엇인가?

간단하다... VB는 언어가 쉬웠을 뿐이지, 프로그램하기에 쉽지는 않았다. 일례로 암호화를 해야 하는 등의 문제에서는 어쩔 수 없이 VC++의 힘을 빌어야 했다. 하지만 그 모든 것을 자바에서는 SDK로 제공하고 있다. (사실, 자바를 누르진 못했지만 VB의 시장 점유율은 결코 낮은 것이 아니다. 그러한 성과를 거두는 데에 있어 가장 중요한 역할을 한 것은 단지 "쉽다"는 특징 뿐이다.)

명확하다... 자바는 쉬웠고... C/C++에 낙오한 사람들(이 말에 찔리는 사람들도 적지 않을 것이라 본다.)조차도 자바는 쉽게 다가설 수 있었다.

플랫폼 독립적이니... 하는 그런 형식적인 말은 변명에 불과하다. 아는 사람은 다 알지 않는가. 벤더 종속적이라는 말을 빼먹진 말자. 종속의 대상만 다를 뿐이다.

다시 물어보자. 왜 .NET이 성공할 수밖에 없는가?
이해 되는가? 이제 C/C++에 지친 사람들은 선택이 2개로 늘어났다. 예전에는 오직 "자바" 하나뿐이었다. 자바는 .NET이 나오기 전에는, "성장"할 수밖에 없었다.

자바와 .NET 중에 어느 것이 더 쉽냐는 것에 대해서는 우열을 가리기 힘들 정도이다. 이젠... 조직력과 단결력이 그 힘의 균형을 깰 수 있을 것이다. (국가 또는 대기업 차원에서의 제한을 MS에 명시적으로 가하지 않는 한.)

오픈 소스 진영으로 인한 의사 결정의 지지 부진, 그로 인한 각 벤더들의 무분별한 표준 확장이라는 부작용을 낳고 있는 "자바"와... 오직 하나의 목표를 가지고 질주하는 "MS"가 내놓은 ".NET"은... 어느 것이 승자가 될지는 필자로서는 너무나 예측하기 쉬운 문제일 뿐이다.

또한, 웹 서비스의 출현으로, 이기종간의 호출 장벽이 허물어지고 있다는 것은... Microsoft에게 날개를 달아준 효과와 같을 것이다.








[최초 등록일: ]
[최종 수정일: 6/27/2021]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-동일조건변경허락 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.

비밀번호

댓글 작성자
 




1  2  3  4  5  [6]  7  8 
NoWriterDateCnt.TitleFile(s)
69정성태10/27/20065672.NET : 1. Typed DataSet 에서의 ExcludeSchema 사용
68정성태1/27/20075732Vista : 2. Elevate through ShellExecute
67정성태10/22/20065558Vista : 1. Programmatically determine if an application requires elevation
66정성태9/22/20064835Tip/Trick: UpdateProgress Control and AJAX Activity Image Animations
65정성태9/15/20069913Tip/Trick: Enabling Back/Forward-Button Support for ASP.NET AJAX UpdatePanel
64정성태2/23/20074616Why are NameValueCollection lookups slower than Hashtable? [Kim Hamilton]
63정성태8/30/20064512WinFormResizer for .NET 2.0, v.2.0.0020.3 Released!
62정성태8/21/20064326Stylistic differences in using
61정성태8/5/20065153Detecting Information Card Support (CardSpace!) in a browser
60정성태7/22/20065300JonGallant WebControls v1.0 - ScrollableContainer
59정성태3/2/20066194.NET이 왜 성공할 수밖에 없는가?
58정성태10/5/20055385한국 MSDN - 홈지기가 번역한 MSDN Magazine 자료
57정성태5/5/20054759구구단 프로그램을 제외하고, 벤더종속적이지 않은 프로그래밍 언어가 있나요?
53정성태3/4/20056088[마소 연재 기사: 2004-05] 특집 X-Inernet : 닷넷 스마트 클라이언트 [4]파일 다운로드1
52정성태3/4/20056350[마소 연재 기사: 2004-04] 실전!강의실 - IE에서 닷넷 스마트 클라이언트 개발 3파일 다운로드1
51정성태3/4/20056729[마소 연재 기사: 2004-03] 실전!강의실 - IE에서 닷넷 스마트 클라이언트 개발 2파일 다운로드1
55정성태3/30/20056027    답변글 [추가] 기본 보안만으로 구현하는 스마트 클라이언트 이벤트 구현
50정성태3/4/20059445[마소 연재 기사: 2004-02] 실전!강의실 - IE에서 닷넷 스마트 클라이언트 개발 1 [3]파일 다운로드1
49정성태9/7/20068650RSA 공개키/개인키 암호화, DES 암호화, MD5 단방향 해시 암호화 클래스 (C#) 2002.09.25파일 다운로드1
48정성태7/17/20036660C# 으로 만든 Base64 인코딩/디코딩 클래스 (C#) 2002.09.24파일 다운로드1
47정성태7/17/20035427C# 으로 만든 DLL 을 Managed C++ 에서 이용하는 예제 (C#, Managed C++) 2002.08.01파일 다운로드1
46정성태7/17/20035781.NET으로 만든 COM+ 객체를 HTML에서 사용 (C#, COM+) 2002.06.10파일 다운로드1
45정성태7/17/20035847COM+ 객체 원격 접근예제 (VC 6.0, ATL, COM+) 2002.05.31파일 다운로드1
44정성태7/17/20035763Win32 API Hook (VC 6.0, ATL) 2002.05.12파일 다운로드1
54정성태3/21/20054925    답변글 [추가]: 최근 나온 소개된 관련 기사파일 다운로드2
43정성태7/17/20036785탐색기 Namespace Extension 컨테이너 (VC 6.0, ATL) 2002.03.24파일 다운로드1
1  2  3  4  5  [6]  7  8