목록프로그래밍언어 (13)
STIKA
정렬 알고리즘 원소들을 번호순이나 일정한 규칙에 따라 열거하는 알고리즘이유컴퓨터에서 정렬을 수행하는 이유 중 가장 큰 이유로는 이진 탐색이 가능한 데이터를 만들기 위해서이다탐색할 데이터가 정렬되어 있지 않다면 순차 탐색만 사용할 수 있지만 데이터가 정렬되어 있다면 이진 탐색이라는 강력한 알고리즘을 사용할 수 있다이진 탐색 알고리즘은 최악의 경우라도 log n의 성능을 보임
콜백 함수(callback function) 콜백 함수(callback function)는 프로그래밍에서 특정 이벤트가 발생했을 때 호출되는 함수를 가리킨다. 콜백 함수는 다른 함수나 컴포넌트에 의해 호출되는 함수로서, 보통 이벤트 핸들러로 비동기적인 프로그래밍이나 이벤트 기반 프로그래밍에서 자주 사용된다. 이벤트 처리(Event Handling): 사용자가 버튼을 클릭하거나 다른 이벤트가 발생했을 때 특정 작업 수행비동기 작업(Asynchronous Operations): 비동기 작업이 완료되었을 때 실행되는 함수를 콜백으로 등록하여 작업이 끝날 때까지 대기하지 않고 다른 작업 수행타이머 및 인터벌(Timeouts and Intervals): 특정 시간 간격으로 실행되는 작업 수행C#에서 콜백 함수는 ..
람다식(Lambda Expression) 함수명을 선언하고 사용하는 것이 아닌 식별자 없이 실행가능한 함수입니다. 절차형 프로그래밍, 객체지향 프로그래밍과는 사뭇 다르게 함수의 구현과 호출만으로 프로그램을 만드는 방식인 함수형 프로그래밍에서 자주 사용 됩니다.
event, action, funcevent는 특정 상황,조건이 발생했을 때 이벤트 핸들러에게 알리는 매커니즘입니다. action은 반환타입이 void인 제네릭 델리게이트입니다. func은 반환타입이 void가 아니며, 매개변수를 가진 제네릭 델리게이트입니다.
델리게이트(Delegate) 델리게이트는 메서드를 전달하는 대리자이다.메서드를 참조해서 매개변수로 전달하거나 변수에 할당할 수 있다.메서드를 전달하고 싶을 때 델리게이트를 사용하면 되는데예를들어 어느 클래스의 클릭 이벤트를 발생시키는 기능과 다른 클래스에서 클릭이벤트를 처리하는 기능을 분리할 수 있다 delegate 매개변수와 반환형에 대한 정의 후, 동일한 매개변수와 반환형을 가진 메서드를 서로 호환해서 불러 쓸 수 있는 기능
제네릭 데이터 형식을 일반화하여 코드의 재사용성과 유연성을 향상해 주는 도구이다.제네릭을 사용하면 다양한 형식의 데이터를 처리하는 메서드와 클래스를 작성할 수 있으며 컴파일 시점에서 안정성을 보장해 준다.
struct와 class의 차이 C#에서는 struct를 C, C++ 호환을 위해 사용하고 단순한 값만을 저장할때는 struct가 더 효율적이다 struct 1. 값타입 2. 스택에 쌓인다 3. 상속이 불가능하다 4. 단순히 값을 저장한다 5. 메서드(함수)가 없다 class 1. 참조타입 2. 힙영역에 쌓인다 3. 상속이 가능하다 4. new연산자를 통해 객체를 생성, 할당을 해줘야 사용가능하다 5. 메서드(함수)가 있다
접근제한자의 종류와 차이 클래스 외부에서 내부로의 접근을 제한하기 위해 사용한다 public : 클래스 외부에서 클래스에 자유롭게 접근할 수 있다 private : 클래스 외부에서는 사용할 수 없고 클래스 내부에서는 접근이 가능하다 protected : 자식 클래스에서 접근할 수 있다 internal : 같은 어셈블리내에서는 접근 가능하다 protected internal : 같은 어셈블리와 다른 어셈블리의 상속받은 클래스 private protected : 같은 어셈블리와 같은 어셈블리 내의 상속받은 클래스
배열 , List, ArrayList, Dictionary 배열은 정적배열로 이름 하나에 같은 자료형 타입인 여러개의 변수를 관리하는 것 List는 배열과 같이 Data Type을 선언 한 뒤에 변수를 관리하며, 내부적으로 동적배열을 사용 ArrayList는 List와 거의 유사하게 배열의 크기가 변경되는 특징을 갖고 동작합니다. 하지만, Data Type을 선언하지 않으며, 서로 다른 타입의 값도 추가 할 수 있습니다. Dictionary는 key와 Value의 값을 세트로 다루는 배열 "연관 배열"이며, List와 다르게 Key값을 사용하여 Value 값을 얻을 수 있습니다. 어떤 데이터를 검색할 때 1의 시간복잡도를 가짐. 추가 List 제너릭 타입으로 박싱 언박싱이 필요없어 타입 안정성이 좋다. ..