본문 바로가기

클래스

유니티와 C# 개념 정리_014_클래스_Class Class(클래스)는 개체지향 프로그래밍(OOP)에서 개체를 만드는데 필수적인 설계도와 같다. 클래스는 변수(필드)와 함수(메서드)의 결합체이다. 유니티로 게임을 만들때도 C#으로 만든 클래스는 개체의 특성과 기능을 구현하는 핵심적인 역할을 담당한다. 예를 들어 어떤 게임에서 이름과 체력, 점수를 가진 플레이어가 아이템을 수집한다고 하자. 게임에서 이런 특성들을 사용하기 위해서는 클래스에 변수(필드)를 정의한다. 또한 플레이어가 이동하기, 공격하기, 수집하기 등의 동작을 할 수 있게 하려면 함수(메서드)를 만들 수 있을 것이다. 1번줄: using namespace(네임스페이스)이름; 클래스 선언 위쪽에 작성하여 네임스페이스 안에 있는 클래스들을 사용할 수 있다. 3번줄: 클래스 선언과 MonoBehav.. 더보기
유니티17_C#_10_상속 객체 지향 언어의 Class(클래스)를 구성하는 핵심 요소 중 캡슐화에 이어서 이번에는 상속(Inheritance)에 대해 알아본다. 상속(Inheritance) 앞 글 '클래스'에서 유니티로 제작하는 스크립트는 자동으로 MonoBehaviour 클래스를 상속 받는다고 설명했다. 이 글에서 상속에 대해 좀 더 알아본다. 상속이란 클래스를 물려 받아 사용하는 것을 말한다. 어떤 클래스의 멤버(필드와 메서드)를 재사용하거나 수정해서 새 클래스를 만들 수 있다. 이때 물려 주는 상위 클래스를 Base Class (베이스 클래스) 또는 Parent Class(부모 클래스)라고 부르고, 물려 받는 하위 클래스를 Derived Class(파생 클래스) 또는 Child Class(자식 클래스) 라고 부른다. 자식 클.. 더보기
유니티14_C#_07_클래스와 메서드 객체 지향 언어 (Object Oriented Programming language : OOP ) C#(씨샵)은 객체 지향 언어다. 즉, 프로그램을 짤 때 객체(Object ;오브젝트)를 만들고 사용하는 방향으로 코딩하겠다는 뜻이다. 그럼 객체는 무엇인가? 객체는 추상적인 개념이다. 쉽게 말하면 '생각으로 떠올려서 만들 수 있는 모든 것'이다. 머리 속 생각으로는 무엇이든 상상할 수 있듯이, 형태가 있는 사물(책, 구름)이든, 형태가 없는 개념(사랑, 행복)이든 무엇이든 객체가 될 수 있다. 그래서 객체를 만드는 이런 과정을 Abstraction( 추상적 개념 또는 추상화)라고 한다. 이 abstraction이라는 개념이 객체지향 언어의 출발점이자 원칙이다. 예를 들어 지금 롤플레잉 게임을 만들고 있다고.. 더보기
코틀린 더파기_13_class_개념과 생성 앱 또는 프로그램도 업그레이드로 문제점을 수정하고 성능을 향상시키듯이, 프로그램 코드를 작성하는 기법도 보완과 필요성에 따라 지금까지 다양하게 발전되어 왔다. 처음 등장한 것은 Procedural Programming (절차적 프로그래밍) 기법이다. 지금도 간단한 앱을 만들거나 코딩 초보자인 경우는 대부분 이 기법을 사용하여 코딩한다고 할 수 있다. 이 기법은 기본적으로 작업을 어떤 과정으로 하고 어떻게 끝내야 하는 지에 대한 논리적 단계를 만드는 것이다. 즉, 프로그램을 procedure(프로시저) 단위로 작성한 후 procedure call(프로시저 호출)을 사용하는 개념으로 작동한다. procedure의 다른 이름은 routine(루틴) , function(함수)이다. 요약하면 절차적 프로그래밍 기.. 더보기
쌩초보를 위한 기초_22_Class와 Object 클래스(clsss)와 오브젝트(object) 객체 지향 프로그래밍(Object Oriented Programming)은 함수형 프로그래밍과 함께 가장 강력한 프로그래밍 기법으로 자리 잡았다. 초창기에 사용하던 기법인 절차적 프로그래밍(Procedural Programming)은 코딩한 순서대로 실행하도록 만들어 졌는데 프로그램의 규모가 점점 커지고 복잡해지면서 새로운 프로그래밍 기법이 요구되었고 그 결과물로 탄생한 것이 객체지향 프로그래밍이다. 객체 지향이라는 말 그대로 객체라는걸 만들어 활용하면 큰 프로젝트를 구조적으로 나누거나 또는 분업해서 동시에 여러 명이 프로그래밍할 수 있으므로 효율적인 작업이 가능하다. 객체(object)를 만들기 위해서는 그것을 만들 수 있는 틀이 필요하다. 그 틀이 클래스(.. 더보기