티스토리 뷰
C# 언어
1995년에 Java가 나오자 MS에서도 썬 마이크로시스템즈와 라이센스를 맺은 뒤 독자적인 Java 확장 언어 비주얼 J++를 만들었다. 그런데 썬에서 개발한 JVM에 MS가 임의로 부가 기능을 추가하면서 썬과 특허권 소송이 걸리는 바람에, MS의 비주얼 스튜디오에서 비주얼 J 시리즈와 MS VM(MS 버추얼머신)을 사용할 수 없게 되었다. 하지만 Java라는 언어 자체가 매력적인 언어이고 MS 역시 이를 버릴 수 없다고 생각한 것인지, 1999년부터 개발에 착수하고 2000년에 .NET 프로젝트와 함께 C#이라는 이름으로 새로운 언어를 발표한다. C# 2.0 까지는 ECMA 및 ISO 두 곳 모두에 표준이 등재되어 있으나, 이후 버전은 C# 5.0만이 ECMA 표준이 등재되어 있다. 현재 C#의 시장 점유율은 높은 편이고, 언어의 완성도도 현존하는 언어 중 가장 괜찮다는 평이 많다. C++는 생산성이 너무 떨어지고, Java의 경우 여러가지로 제약이 많아 아쉬운 점을 C#이 덜어주고 있다는 것. 코드기어(구 볼랜드)에서 Delphi와 C++Builder를 개발하여 유명해진 Anders Hejlsberg를 영입해 만들었는지라 컴포넌트 개발 환경이 우수하다. 엄청난 생산성을 자랑하던 델파이와 개발환경이 거의 유사하기 때문에 델파이의 개발자들은 거의 C# 개발자로 넘어갔다. 비주얼 스튜디오 6의 비주얼 베이직과 델파이/C++ Builder/C#을 비교해 보면 서로 간에 안드로메다 급으로 차이가 난다. 뿐만 아니라 GUI를 만들 때도 C#(윈폼)이 월등히 편리하다. 윈도우즈 개발자들이 UI 작업 이야기 할 때 뭔가 이슈가 있다면 C# 개발자들은 그걸 아주 쉽게 생각한다. 하지만 C++, 특히 MFC 개발자들은... 사실 MFC의 경우 단순히 Win32 API의 래핑수준을 넘지 못하지만, C#의 UI 컴포넌트는 근본 설계부터 컴포넌트 구조를 위해 설계되었으니 당연한 부분이다. MS사의 개발 도구에서 C#을 강력히 밀어줬는데도 불구하고 2005년 이전까지만 해도 C#의 점유율이 크게 낮았다. 전문가들에게는 C++, 초보자들에게는 VB 6.0에게 밀렸기 때문이다. 하지만 2010년 이후로는 C++의 점유율이 서서히 낮아지고 있는 반면 C#의 점유율은 크게 높아졌다. C#은 강력한 reflection 구조를 갖고 있기 때문에 인텔리센스(자동완성)를 언어 차원에서 지원하므로, 비주얼 스튜디오 2002~2005 버전을 써 본 사람은 C#과 C++의 인텔리센스 기능이 얼마나 차이가 났는지 기억할 것이다. 언어적 특성으로 따지면 경쟁관계에 있는 언어는 Java라고 할 수 있는데, 처음 만들어질 때부터 Java를 많이 참고했으며 Java의 태생적 문제를 모두 해결하고 유용한 기능을 더한 형태이기 때문에 C#이 월등하다고 볼 수 있다. 하지만 이것이 시장성으로 이어지지는 않고 있는데, 많은 솔루션들이 웹으로 컨버전되고 있는 시대적 특성 때문에 웹이 아닌 데스크톱 애플리케이션 분야의 시장이 줄어들고 있기 때문이다. C#도 ASP.NET이라는 웹 언어가 있기는 하지만, JSP나 PHP 등에 크게 밀리는 상황으로 점유율이 매우 낮다. 특히 .NET Core가 나오기 전까지는 서버 OS가 많은 로열티를 발생시키는 MS Windows로 제한되었다는 점이 낮은 점유율에 크게 일조하였다. 하드웨어 제어나 공장 등 웹으로의 전환이 불가능에 가까운 환경에서는 어느 정도 경쟁력이 있긴 하지만, 닷넷 프레임워크 자체가 워낙 거대한 탓에 잘 선택되지 않는다. 그래도 최근에는 그러한 장비들의 환경 역시 성능이 많이 올라와서 부담이 덜어지고 있다는 것이 그나마 희망이긴 한데, 이쪽은 워낙 이전 버전이 유지되는 특성이 강하다 보니 C++와의 경쟁이 쉽지 않다. 2019년에 열린 'MS Build2019' 컨퍼런스에서 MS가 흥미로운 계획을 발표했는데, 2020년 안으로 Mono가 흡수된 .NET 5 버전을 출시할 예정이고, 이는 .NET 프레임워크가 아닌 .NET Core를 기반으로 할 것이라는 내용이다. 이는 윈도우 전용이었던 WinForms/WPF 등의 GUI 프레임워크가 타 운영체제에서도 사용이 가능해진다는 의미이며, 윈도우/macOS/리눅스/안드로이드/iOS/ASP.NET 등 수많은 환경을 대상으로 한 애플리케이션을 하나의 .NET으로 개발할 수 있게 될 것이다. Java와의 상호운용성도 지원할 예정이라고 한다. 웹 애플리케이션 개발용으로는 ASP.NET을 밀어주고 있다. 이는 Java의 JSP에 대응되는 것으로, 기본적인 사항은 거의 비슷하다. 기업에서 주로 쓰고 있으나, 윈도우 서버(인터넷 정보 서비스)를 비롯한 각종 라이선스 비용 문제 등으로 JSP만큼 크게 활성화되지 못했다. 2014년의 .NET 오픈소스화 이후, macOS와 리눅스에서도 돌아가는 오픈소스 구현체인 ASP.NET Core가 등장했지만 그리 흥하지는 못하고 있다. JSP를 주로 쓰는 곳은 비교적 보수적인 SI나 관공서, 대기업 등이어서 ASP.NET으로 넘어갈 의향이 없고, 최신 기술에 민감한 회사들은 쉽고 간편하게 웹 애플리케이션을 만들 수 있는 Express나 Django, Ruby on Rails 등으로 넘어갔기 때문이다.
'개발언어' 카테고리의 다른 글
전자정부표준프레임워크(eGovFramework) 설치 (3.9 버전 기준) (0) | 2021.02.02 |
---|---|
eGovFramework 의 개발역사와 간략한 특징 (0) | 2021.01.23 |
PostgreSQL의 시작 (0) | 2021.01.17 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 임영웅 콘서트#2023 임영웅#임영웅 투어 콘서트#임영웅#임영웅 서울 콘서트#임영웅 콘서트 예매#인터파크티켓
- 3월 공모주#3월 공모일정#유일로보틱스#공구우먼#세아메카닉스#보로노이#지투파워#3월IPO일정
- 임영웅#임영웅 콘서트#임영웅 인천 콘서트#임영웅 콘서트 예매#예스24 콘서트예매#영웅시대#송도 컨벤시아 찾아가기
- 수소차관련주#수소차#수소차주가전망#일진하이솔루스#두산중공업#두산퓨어셀#효성중공업#코오롱인더#상아프론테크
- ChatGPT 관련주#챗지피티 관련주#코난테크놀로지#셀바스AI#데이타솔루션#솔트룩스#ChatGPT
- 대한민국vs브라질#국가대표 평가전#손흥민 평가전#평가전 중계일정#평가전 보기#국가대표 축구 평가전#쿠팡플레이 축구#TV조선 축구
- 정치 테마주#정치 관련주#총선 관련주#
- 블랙핑크 서울 콘서트#블랙핑크 콘서트 예매#인터파크
- 국가대표 축구#월드컵 최종예선#레바논전#축구 중계방송
- 신라젠#신라젠 거래재개#신라젠 엠투엔#엠투엔#신라젠 기심위#1월18일
- 범한퓨얼셀#범한퓨얼셀 공모#범한퓨얼셀 청약#6월 공모주 #공모주 청약
- 이낙연 관련주#이낙연 테마주#이낙연 총선#남선알미늄#남화토건#삼부토건#남성#부국철강#시너지이노베이션#정치테마주#총선테마주#한동훈 관련주
- 얀센백신#얀센 백신 예약#백신 예약방법#얀센 부작용#백신 효과 비교
- 임영웅 콘서트#임영웅 서울콘서트#임영웅#영웅시대#yes24 임영웅#예스24 티켓예매#임영웅 티켓예매
- 블랙핑크 콘서트#블랙핑크#BLACKPINK#BLACKPINK WOLRD TOUR
- 나래나노텍#나래나노텍 IPO#나래나노텍 공모주#나래나노텍 청약#1월 IPO
- 올영세일#올리브영 세일#올영 11월세일#올리브영 연말세일#올리브영#올리브영 12월 세일#올영 블랙플라이데이
- 임영웅콘서트#임영웅#임영웅 대구#임영웅 콘서트 예매#임영웅 콘서트 예매 방법#예스24 임영웅#대구 엑스코
- ChatGPT#챗지피티#ChatGPT란#챗지피티의 기능#ChatGPT 기능
- 올영세일#올리브영#올리브영 세일#6월 올영세일
- 알리코제약#알리코제약 무상증자#무상증자
- 올영세일#올리브영 9월세일#올리브영 세일#올리브영 앱#올리비영 온라인몰#올리브영 100대특가
- 이스타항공 본입찰#이스타항공#이스타항공 하림#이스타항공 쌍방울
- 현대중공업#현대중공업 공모주#현대중공업 청약#현대중공업 IPO#현대중공업 주관사
- 아셈스#아셈스 IPO#아셈스 공모주#아셈스 청약#1월 청약
- 임영웅 콘서트#임영웅 부산 콘서트#임영웅 투어#임영웅 2023 콘서트#임영웅 부산
- WBC중계#WBC일정#2023 월드베이스볼클래식#국가대표 야구전#한일전#WBC
- 루이비통#루이비통 나이키#나이키 루이비통#리이비통&나이키#나이키 에어포스1#버질 아블로#나이키 한정판
- 삼쩜삼#삼쩜삼 환급#삼쩜삼 종합소득세 신고#삼쩜삼 숨은환급액 찾기#
- 총선테마주#한동훈 관련주#한동훈 테마주#한동훈 출마#한동훈
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
글 보관함