C#은 객체지향언어로 각 데이터트를 모아 하나의 프로그램으로 만드는 방식이다.
C#의 특징은 변수의 종류를 미리 선언하기 때문에 잘못된 값을 입려하려 하면 번역 단계에서 잡아낸다. 단점으로는 변수 선언이 조금더 번거롭다.
C#코드는 중간언어로 컴파일된 뒤 JIT컴파일러가 실행 시점에 네이티브 코드로 바꿔준다.
또 C#은 .NET 위에서 실행이 돼 운영체제 기능을 쉽게 사용이 가능하고 윈도우 프로그램, 웹, 게임까지 다 가능하다 즉 혼자 다 만드는게 아니라 .NET이 많이 도와준다
OOP란 (Object-Oriented Programming)객체지향 프로그래밍으로 객체 중심으로 구성하는 방식을 말한다.
객체지향 구조로는 클래스, 객체, 메서드, 속성이 있다.
객체 지향의 4대 특징은
1. 캡슐화(Encapsulation) - 데이터를 보호하고 외부 접근을 제한하는 것(private, public)
2. 상속(Inheritance) - 기존 클래스를 물려받아 새로운 클래스를 만드는 것
3. 다양성(Polymorphism) - 같은 이름의 메서드가 상황에 따라 다르게 작동하는 것
4. 추상화(Abstraction) - 불필요한 정보는 숨기고 중요한 기능만 표현하는 것
정리하자면 객체지향 프로그래밍(OOP)은 데이터와 기능을 하나의 객체로 묶어 프로그램을 구성하는 방식이다. 클래스와 객체를 기반으로 하며, 캡슐화, 상속, 다형성, 추상화의 특징을 가진다. 이를 통해 코드의 재사용성과 유지보수성이 향상되며, 현실 세계를 반영한 구조적인 프로그램 설계가 가능하다.