본문 바로가기

연구하기/Computer Engineering30

MS 의 C# 코딩이 익숙해지면서 - 1 자바와 비교하면서 몇 가지 알게 된 점이 있어 적는다.. 1) 자료구조의 동기화 기능이 한 클래스에 대한 래퍼 형식으로 구현되어 있다. 자바의 경우 Hashtable 은 액세스 시 동기화 지원, Hashset 이나 Hashmap 의 경우는 액세스 시 동기화를 지원하지 않는 형태로 분리되어 있다. 물론 이것은 기능적으로 분류한 것이 아니라, 초기에 자료구조에 동기화가 필요할 것이라고 생각되어 걸어 두었다가, 실질적으로 코딩시에 자료구조 클래스의 동기화가 별 의미가 없고, 그렇다고 놔두자니 퍼포먼스가 저하되는 현상이 발생하여 1.2 부터 새로이 등장한 자료구조에서는 '니가 알아서 해라' 라고 하면서 동기화를 지원하지 않는 자료구조들이 탄생한 것이다. .NET 에서는 각 자료구조들이 래퍼 클래스를 따로 가지고.. 2005. 2. 23.
MS VS .NET C# vs Sun Java SE 5 나는 작년 10월까지만 해도 자바 프로그래머였고 그 때까지만 해도 MS 의 솔루션들은 가깝고도 먼 존재였다. MS 환경이라고는 2000-2001년 Visual Basic 6.0 으로 이것저것 툴만을 만져본 것이 고작이었고, 그것도 쓸만한 툴을 만들어내지는 못했다. (그나마 남은 소스도 지금은 구동조차 하지 않는다) 뭐 자바 경력도 사실 그렇게 긴 것은 아니다. 2001년 말부터 시작해서 고작 3년간의 실무경험을 쌓았고, 그 동안 나온 상업적 물건이라면 Eternal Dream 이라는, 국내에서는 베타서비스까지, 대만에서는 겨우 유료화를 넘어선 게임을 개발한 것 뿐이니까. 하지만 코더로서 지금 즉 2005년 1월 중반까지 C# 을 코딩해 보면서 Java 와 비교해 이것저것 재미있는 차이점을 느끼게 되었다... 2005. 1. 18.
Java 2 Standard Edition 5.0 간단한 사용 소감 J2SE 5.0 은 아시는 분이라면 익히 아시겠지만, 이전에 자바의 스탠다드 에디션 1.5 버전으로 개발되던 바로 그것이다. J2SE 1.4 가 자바의 전반적인 속도 향상과 시스템에 대한 더욱 직접적인 접근을 가능하게 하는 방향으로 발전되었다면, 이번 5.0 은 기존에 불편하게 사용되었던 문법적인 부분과 그에 따라 프로그램 구동 시 발생하는 퍼포먼스 코스트를 개량하는 방향으로 이루어졌다. 일단 그런 부분에 대한 세세한 이야기는 나중에 하도록 하고, 실제적으로 기존에 작성했던 Eternal Dream 의 클라이언트 어플리케이션을 돌려본 결과는 다음과 같다. 1. 어플리케이션의 Launching Speed 는 이야기와는 달리 그다지 빨라지지 않았다. 물론 Eternal Dream 의 경우 Launching .. 2004. 11. 12.
반응형