라이브러리 vs API vs 프레임워크

컴파일된 응용 프로그램의 네이티브 코드가 저정되는 영역이다. 코드 영역의 명령어는 CPU에 의해 레지스터로 옮겨지고 해석되어 실행된다.전역 변수, 정적 변수 등 프로그램 전반적으로 사용될 수 있는 데이터가 저장되는 영역이다.응용프로그램이 실행되는 시점에 할당된다.객체,

값 형식의 데이터를 참조 형식으로 변환하는 것을 박싱이라고 하며, 그 반대를 언박싱이라고 한다.이에 대해 유의할 점 두가지가 있다.첫번째는 단순히 스택에서 힙으로의 값 복사가 박싱은 아니라는 것이다.클래스의 필드로 값 형식이 선언됐다고 생각해보자.객체는 힙 메모리에 할
params 키워드와 배열을 이용하여 선언한다.메서드에서 가변 인수 목록을 처리할 때 사용된다. 메서드를 호출 시 인수의 개수를 동적으로 결정할 수 있다. params 키워드 뒤에는 추가 매개 변수 사용 불가하다. params 매개 변수의 형식은 1차원 배열이어야 한다
객체가 생성될 때 생성자가 호출되고 소멸할 때는 종료자가 호출된다. 오버라이딩 상위 클래스에서 선언된 메소드를 하위 클래스에서 재정의 하는 것이다. 상위 클래스에서 오버라이딩할 메서드를 미리 virtual로 한정한다. 하위 클래스는 virtual메서드를 overr
컬렉션은 데이터를 호율적으로 저장, 검색, 조작할 수 있는 다양한 기능을 제공한다. 주요한 컬렉션 클래스들은 닷넷 프레임워크의 일부로 제공되며, System.Collections 및 System.Collections.Generic 네임스페이스에 정의되어 있다.C- 자료
Dlelegate는 컴파일 시점이 아닌 프로그램 구동 시에 실행된다.메소드를 참조할 수 있는 타입으로, 메소드의 인수로 전달할 수 있다.메소드와 동일한 시그니처를 가지며, 대리자 인스턴스를 호출하면 대리자에 연결된 메서드가 실행된다.“delegate” 타입을 선언하면

LINQ(Language Integrated Query)는 CLINQ를 사용하면 C데이터베이스, 컬렉션, XML 등 다양한 데이터 소스에서 데이터를 쿼리할 수 있으며, 다양한 연산자를 사용하여 쿼리 결과를 필터링, 정렬, 그룹화 등 다양하게 처리할 수 있다.
클로저(Closure)란, 외부 변수나 필드와 같은 '환경'을 저장하고 있는 함수이다. 람다식을 사용하는 경우 클로저로 처리된다.

실행파일의 데이터와 코드가 메모리에 적재된 인스턴스이다.word.exe가 실행파일이라면, 이 실행 파일을 실행한 것이 프로세스이다.프로세스란 메모리에 적재된 실행되는 프로그램을 말한다.운영체제가 CPU 시간을 할당하는 기본 단위이다.하나의 프로세스 내에서 동시에 여러
스레드 / 태스크와 프로세스 / Parallel 클래스 에서 멀티스레딩 환경에서 생기는 문제를 lock 키워드로 해결했다.추가로 lock 키워드에 대해 설명한다.데이터 일관성 보장: 여러 스레드가 동시에 데이터를 수정할 때 데이터의 일관성을 보장한다.경쟁 조건 방지: