본문 바로가기

전체 글

(40)
콜백 메서드 : 쉽고 재미있는 C# Programming 의 기본 콜백 메서드(callback method)는 일반적으로 함수 또는 메서드를 다른 함수에 전달하여 나중에 호출되도록 하는 프로그래밍 패턴입니다. 이는 비동기적인 상황이나 이벤트 기반 프로그래밍에서 자주 사용됩니다. 콜백 메서드는 델리게이트를 통해 구현됩니다. 비동기 프로그래밍과 이벤트 처리와 관련된 중요한 개념 중 하나입니다. 콜백은 일반적으로 다른 메서드가 작업을 완료했을 때 호출됩니다. 1. 개념 콜백 메소드는 한 함수가 다른 함수를 인자로 받아들이고, 나중에 해당 함수를 호출하는 패턴입니다. 이는 주로 비동기적인 작업이나 이벤트 처리와 관련이 있습니다. 예를 들어 특정 이벤트가 발생하면 지정된 함수를 호출하도록 설정할 수 있습니다. 2. 형식 C#에서 콜백 메서드를 사용하는 데에는 대부분 델리게이트(..
델리게이트 : 쉽고 재미있는 C# Programming 의 기본 1. 개념 '델리게이트 (Delegate ) : 대리자 (함수를 담는 상자)' 델리게이트는 다른 메서드를 참조하고 호출할 수 있는 형식으로, 실제로는 함수에 대한 참조를 보유하는 객체라고 생각할 수 있습니다. 대리자 (Delegate): 델리게이트는 다른 메서드에 대한 대리자 역할을 합니다. 즉, 델리게이트를 통해 메서드의 호출을 다른 객체에게 대리하거나 위임할 수 있습니다. 함수를 담는 상자: 델리게이트는 마치 함수를 담고 있는 상자와 같습니다. 델리게이트가 참조하는 메서드의 형식을 정의하고, 이 상자를 통해 메서드를 전달하거나 다른 곳에 저장할 수 있습니다. 콜백 함수: 델리게이트는 종종 콜백 함수를 구현하는 데 사용됩니다. 다른 메서드를 델리게이트로 전달하여 원하는 시점에 호출되도록 할 수 있습니다..
추상화 - 추상클래스와 인터페이스 : 쉽고 재미있는 C# Programming 의 기본 C#에서 추상화는 주로 추상 클래스와 인터페이스를 통해 구현됩니다. 1. 개념 추상 클래스 ( Abstract Class ) 추상 클래스는 하나 이상의 추상 멤버 (메서드, 속성 등)를 포함할 수 있는 클래스입니다. 추상 멤버는 본체가 없으며 파생 클래스(자식 클래스)에서 반드시 구현되어야 합니다. 일반적인 메서드나 속성도 포함할 수 있습니다. 정의되지 않은 불완전한 ( == 중괄호 { } 가 없는 ) 메서드 (추상 메서드)를 1개라도 포함하고 있는 클래스입니다. 구현은 반드시 파생 클래스(자식 클래스)에서 구현해야 합니다. 가상 메서드 (Virtual Method)와 비슷하지만 반드시 구현해야 하므로 virtual 키워드는 붙이지 않습니다. [요약] 추상 클래스는 하나 이상의 추상 멤버(abstract..
생성자와 접근지정자 : 쉽고 재미있는 C# Programming 의 기본 모든 변수는 선언이 되면 초기화 과정을 거칩니다. 객체도 본질적으로는 변수와 같습니다. 객체를 생성할 때 초기화 전용 메서드를 제공합니다. 그것이 바로 생성자(Constructor) 입니다. * 생성자의 이름은 클래스의 이름과 동일하다. 생성자는 클래스의 특별한 메서드로, 클래스를 초기화하고 객체를 생성하는 역할을 합니다. 생성자의 이름은 항상 해당 클래스의 이름과 동일합니다. 이것은 클래스를 특정하고 어떤 생성자가 호출되는지를 명확하게 하기 위한 규칙입니다. * 생성자는 반환타입이 없다. 생성자는 반환타입을 가질 수 없습니다. 다른 메서드와 달리, 생성자는 객체를 생성하고 초기화하는 역할을 수행하기 때문에 반환값이 필요하지 않습니다. 그러므로 생성자의 선언에서 반환 타입을 지정하지 않습니다. * 생성자..
가상 메서드와 다형성 : 쉽고 재미있는 C# Programming 의 기본 가상 메서드와 다형성은 밀접하게 연관된 개념이며, 주로 함께 다뤄집니다. 가상 메서드는 다형성을 구현하기 위한 중요한 도구로 사용됩니다. 다형성( Polymorphism, 多形性 )은 한 객체가 여러 형태를 가질 수 있는 능력을 나타내고, 가상( 假想 ) 메서드 (Virtual Method )는 이 다형성을 구현하기 위한 메커니즘 중 하나입니다. 자식 클래스에서 부모 클래스의 가상 메서드를 재정의함으로써, 같은 메서드를 호출해도 다양한 동작이 가능해집니다. 이 두 가지 개념을 이해하고 활용함으로써 유연하고 확장 가능한 코드를 작성하는데 도움이 됩니다. 1. 가상 메서드 ( Virtual Method ) 가상 메서드는 상속을 통해 자식 클래스에서 재정의될 수 있는 메서드입니다. 부모 클래스에서 virtua..
객체와 클래스,네임스페이스 : 쉽고 재미있는 C# Programming 의 기본 객체 ( Object ) 와 클래스 ( Class )는 객체지향프로그래밍 ( OOP ) 의 핵심 개념 중 하나입니다. 객체지향프로그래밍은 소프트웨어 개발을 위한 패러다임 중 하나로, 현실 세계의 개념을 프로그램에 모델링하고, 이러한 모델을 기반으로 프로그램을 구성하는 개념입니다. 객체와 클래스는 이를 실현하기 위한 중요한 도구로 사용됩니다. 1. 객체 ( Object ) 의 개념 ▶ 객체 ( Object ) : 현실 세계에 존재하거나 생각할 수 있는 것 중에서 구별 가능한 것을 의미합니다. ▶ 객체의 특징 : 상태(속성)와 행동(메서드)을 가집니다. 예) 자동차, 동물, 사람, 핸드폰 등은 객체의 예시입니다. 자동차의 상태(속성)은 색상, 속도, 연료량 등이 되며, 행동(메서드)은 주행, 정지, 엔진시동..
상속 : 쉽고 재미있는 C# Programming 의 기본 상속성은 객체지향 프로그래밍 (OOP)의 중요한 특징 중 하나입니다. 상속성은 코드의 재사용성을 증가시키고 클래스 간의 계층 구조를 형성하여 코드의 구조를 조직화하는 데 사용됩니다. 1. 개념 상속 (Inheritance)은 객체지향 프로그래밍에서 사용디는 중요한 개념으로, 기존 클래스의 특성을 새로운 클래스가 물려받아 재사용하는 것을 의미합니다. 상속을 통해 새로은 클래스는 기존 클래스의 멤버 (필드, 메서드, 속성 등)를 그대로 또는 일부 수정하여 사용할 수 있습니다. 이로 인해 코드의 재사용성이 증가하며, 계층구조를 형성하여 객체의 관계를 명확하게 표현할 수 있습니다. 2. 상속의 구조 상속은 클래스 간의 부모-자식 관계를 형성합니다. 기본적인 상속 구조는 다음과 같습니다. class ParentC..
객체지향프로그래밍 (OOP) - 캡슐화 : 쉽고 재미있는 C# Programming 의 기본 객체지향 프로그래밍(Object-Oriented Programming, OOP)은 소프트웨어를 개발하는 방법론 중 하나로, 현실 세계의 사물을 모델링하여 프로그램을 구성하는 개념입니다. 클래스를 기반으로 레고 조립하듯 하나씩 객체 ( Object )를 만들어가는 프로그래밍 방법을 '객체지향 프로그래밍 OOP'라고 합니다. '객체지향 프로그래밍'의 특징에는 객체의 형태를 감싸는 '캡슐화'와 부모 클래스의 특성을 복제하여 다른 자식 클래스로 복제하는 '상속성', 그리고 자식 클래스에서 부모 클래스의 행동을 재가공하는 '다형성'이 있습니다. 그중 캡슐화에 대해서 먼저 살펴보겠습니다. 1. 캡슐화 (Encapsulation) 캡슐화 (Encapsulation) 는 객체지향 프로그래밍의 하나로, 객체의 상태와 행..