CLR(Common Language Runtime, 공통 언어 런타임)은 마이크로 소프트 이니셔티브에서 제공하는 가상 머신의 구성요소입니다. .NEt Framework 언어로 개발된 프로그램 코드는 CIL로 알려진 공통 중간 언어(Common Intermediate Language, CIL)를 실행합니다. CIL은 바이트코드형태로 구성이 되어 있습니다. CLR를 설명할 때 가장 쉽게 예를 들 수 있는 개념이 Java의 JVM(Java Virtual Machine, 자바가상 머신)입니다. JVM은 자바로 개발된 소스코드를 컴파일 한 결과를 실행시키는 실행 환경입니다. CLR은 마이크로소프트에서 제공하는 가상 머신의 하나의 요소라고 보시면 됩니다. CLR의 기능은 아래의 그림을 통해서 명백히 이해할 수 있습..
이 글에서는 C#에서 구조적인 데이터를 표현하기 위한 클래스의 사용법을 설명하고, 오브젝트와 클래스의 차이에 대해서 알아보도록 하겠습니다. C# 클래스는 필드, 메소드와 public, private의 접근자를 통해서 캡슐화를 지원합니다. new 연산자는 클래스의 객체 생성에 사용이 됩니다. C#에서 레퍼런스 사용법 및 가비지 컬렉션의 역할에 대해서 설명을 할 것입니다. 또한 특정 인스턴스가 아닌 전체 클래스에서 적용이 가능한 정적 멤버에 대해서도 이야기 할 것입니다. C#에서 특정 상수를 사용하기 위한 Const와 readonly 또한 설명할 것입니다. 1. 구조적 데이터로사용 되는 클래스 언어에 내장되어 있는 기본 데이터 타입을 정의하고 있습니다. 정수형, 불리언과 같은 데이터 타입은 간단한 데이터를 ..
마이크로소프트 최신 프로그래밍 언어 : Visual C# 마이크로소프트 Visual C# .NET 은 마이크로소프트 .NET 기술 기반의 새로운 프로그래밍 언어로, 개발 시간과 비용을 줄여 빠르고 쉬운 개발이 가능하다고 주장을 하고 있습니다. 이 글에서는 C#에 대한 소개와 프로그래밍의 실제 모습에 대해서 이야기하도록 하겠습니다. 테스트 및 측정 기반의 C# 언어의 전체 기능을 모두 사용하기 위해서는 이 언어가 .NET Framework와 어떻게 연동이 되는지를 파악해야 합니다. 이 글에서는 C# 및 객체 지향적 접근에 대한 논의는 물론, 프로그래밍 하는 방법과 테스트 및 측정 어플리케이션 개발에 적합한 방법에 대해서 이야기할 것입니다. 1. The .NET Framework: 배경 지식 공용 언어 런타..
1. 개요 C#의 가장 중요한 요소는 완벽한 객체 지향 언어라는 점입니다. C#은 C++과 Java와 같이 객체지향 언어의 이점을 가지고 있으며, OOP 경험을 향상 시키는 몇가지 추가적인 요소가 있습니다. 객체지향 이외에도, C#은 소프트웨어 시스템 개발 시 쉽게 재사용할 수 있는 블랙 박스 엔티티의 개념을 가지고 있는 컴포넌트의 생성에 대한 기능이 디자인되었다는 점입니다. 이 글에서는 객체지향 언어가 무엇인지에 대한 큰 그림을 그릴 것입니다. 또한 객체, 클래스, 추상화, 캡슐화, 상속 및 다형성에 대해서 논할 것입니다. 이 내용에 대한 C#에 부분을 살펴볼 것입니다. 소프트웨어 재사용을 용이하게 하는 방식으로 객체 지향 프로그래밍의 생각을 확장할 수 있는 컴포넌트에 대한 소개와 함께 결론을 지을 것..
C#의 Foreach 문은 다른 반복문인 While, Do, For를 이용한 루프보다 더 다양하게 사용할 수 있습니다. Foreach 구문은 어떠한 Collection에 대해서도 최상의 반복 코드를 만들어 낼 수 있습니다. MSDN에 따르면 Foreach 구문은 아래와 같이 정의가 됩니다. foreach 문은 배열이나 System.Collections.IEnumerable 또는 System.Collections.Generic.IEnumerable 인터페이스를 구현하는 개체 컬렉션에 있는 각 요소에 대해 포함 문 그룹을 반복하여 실행합니다. foreach 문은 컬렉션을 반복 실행하여 원하는 정보를 얻는 용도로 사용할 수 있지만 예측할 수 없는 부작용을 방지하면서 소스 컬렉션의 항목을 추가하거나 제거하는 용..