본문 바로가기

OOP

유니티와 C# 개념 정리_003_C# 언어의 특징과 기본 구조 이 글 부터 유니티에서 사용하는 C# 문법에 대해 정리한다. 주로 유니티와 관련한 내용을 정리할 것이다. 다루지 않은 내용은 카테고리 [프로그래밍 언어]에 있는 Kotlin(코틀린) 언어와 중복되므로 생략한다. C# 언어의 특징 1. Object-Oriented Programming 언어 C#의 가장 핵심적인 특징은 Object-Oriented Programming(OOP : 개체 지향 프로그래밍) 언어이다. OOP의 대표적인 언어는 Java, Python, C++, Ruby, C# 등이 있다. 이 개념은 Java에서 파생한 Kotlin(코틀린) 언어에서 알아보았기 때문에 생략한다.(코틀린 더파기_13) 참고로 Object(오브젝트)는 이전에 '객체'라고 해석했는데 '개체'라고 해야 한다는 주장이 있다... 더보기
C#_002_C Sharp 언어의 특징과 기본 구조 C# 언어의 특징 1. Object-Oriented Programming 언어 C#의 가장 핵심적인 특징은 Object-Oriented Programming(OOP : 개체 지향 프로그래밍) 언어이다. OOP의 대표적인 언어는 Java, Python, C++, Ruby, C# 등이 있다. 이 개념은 Java에서 파생한 Kotlin(코틀린) 언어에서 알아보았기 때문에 생략한다.(코틀린 더파기_13) 참고로 Object(오브젝트)는 이전에 '객체'라고 해석했는데 '개체'라고 해야 한다는 주장이 있다. 나는 그 주장이 더 설득력있게 들려서 지금부터는 Object를 개체라고 부르기로 했다. 2. Method 기반 Method(메서드; 방법)는 Function(펑션; 기능, 함수)와 같은 의미이다. OOP에서는 .. 더보기
유니티14_C#_07_클래스와 메서드 객체 지향 언어 (Object Oriented Programming language : OOP ) C#(씨샵)은 객체 지향 언어다. 즉, 프로그램을 짤 때 객체(Object ;오브젝트)를 만들고 사용하는 방향으로 코딩하겠다는 뜻이다. 그럼 객체는 무엇인가? 객체는 추상적인 개념이다. 쉽게 말하면 '생각으로 떠올려서 만들 수 있는 모든 것'이다. 머리 속 생각으로는 무엇이든 상상할 수 있듯이, 형태가 있는 사물(책, 구름)이든, 형태가 없는 개념(사랑, 행복)이든 무엇이든 객체가 될 수 있다. 그래서 객체를 만드는 이런 과정을 Abstraction( 추상적 개념 또는 추상화)라고 한다. 이 abstraction이라는 개념이 객체지향 언어의 출발점이자 원칙이다. 예를 들어 지금 롤플레잉 게임을 만들고 있다고.. 더보기
파편17_Object and companion object class(클래스)는 객체 지향 프로그래밍(Object Oriented Programming)의 개념에서 나온 것이다. class(클래스)는 독립적으로 실행하는 틀을 제공한다. 참고: class(클래스)와 object(오브젝트) : https://fiftiesstudy.tistory.com/62 class(클래스)는 변수와 함수를 가지고 있다. 그 변수와 함수로 object(객체)를 만들 수 있다. 이렇게 만든 객체를 instance(인스턴스)라고 한다. Object (오브젝트) 클래스에 객체를 여러 개 만들 수 있도록 허용하지만 만약 singleton(싱글톤)이 필요하다면 class 대신 키워드 object를 사용하여 선언할 수 있다. singleton은 instance를 한 개만 가지는 클래스이다. .. 더보기
쌩초보를 위한 기초_22_Class와 Object 클래스(clsss)와 오브젝트(object) 객체 지향 프로그래밍(Object Oriented Programming)은 함수형 프로그래밍과 함께 가장 강력한 프로그래밍 기법으로 자리 잡았다. 초창기에 사용하던 기법인 절차적 프로그래밍(Procedural Programming)은 코딩한 순서대로 실행하도록 만들어 졌는데 프로그램의 규모가 점점 커지고 복잡해지면서 새로운 프로그래밍 기법이 요구되었고 그 결과물로 탄생한 것이 객체지향 프로그래밍이다. 객체 지향이라는 말 그대로 객체라는걸 만들어 활용하면 큰 프로젝트를 구조적으로 나누거나 또는 분업해서 동시에 여러 명이 프로그래밍할 수 있으므로 효율적인 작업이 가능하다. 객체(object)를 만들기 위해서는 그것을 만들 수 있는 틀이 필요하다. 그 틀이 클래스(.. 더보기