분류 전체보기(158)
-
면접질문/ 생성자, 접근제한자, static에 대해 설명해주세요
질문 : 생성자에 대해 간단하게 설명해주세요- 생성자는 클래스의 객체가 생성될 때 호출되는 특수한 메서드입니다. 주로 객체의 초기화 작업에 사용되며, 클래스 이름과 동일한 이름을 가집니다. 반환값이 없고, 오버로딩을 통해 매개변수를 다르게 설정할 수 있습니다. 질문 : 접근제한자란 무엇이며, 각각 어떤 차이가 있는지 비교해서 설명해주세요.- 접근 제한자는 클래스나 멤버의 접근 범위를 제어하기 위해 사용하는 키워드입니다. 코드의 캡슐화를 유지하고, 외부에서 불필요하거나 잘못된 접근을 방지하기 위해 사용됩니다 질문 : static 한정자에 대해 설명해주세요.- static 한정자는 클래스나 멤버가 클래스의 인스턴스와 관계없이 직접 접근할 수 있도록 선언할 때 사용하는 키워드입니다. 즉, 객체를 생성하지 않아..
2024.12.05 -
면접 질문 / 객체란 무엇인가요? 클래스와 어떤 연관이 있나요?
질문 : 객체란 무엇인가요? 클래스와 어떤 연관이 있나요?객체란 무엇인가요?- 객체란 클래스의 인스턴스라고 말한다. - 객체지향 프로그래밍에서 객체는 변수, 함수, 자료 구조의 조합이 될 수 있는데, 특히 객체지향 프로그래밍에서 클래스를 기반으로 한 변수를 클래스의 인스턴스라고 합니다.클래스와 어떤 연관이 있나요?- 객체지향 프로그래밍에서 클래스는 멤버 변수와 메서드를 가지는 객체를 만들기 위한 확장이 가능한 코드 양식입니다.- 클래스는 객체를 만들기 위한 설계도 입니다. 클래스는 속성(필드)과 행동(메서드)을 정의하며, 이를 기반으로 여러 객체를 생성할 수 있습니다.
2024.12.04 -
Inspector 창을 활용한 아이템 관리(JSON으로 데이터 저장)
실제 게임을 만들기 전에 임시방편으로 아이템 데이터를 넣는 기능을 넣을려고 한다. 그래서 찾은 방법이 인스펙터창에서 JSON정보를 저장하는 방법이 있어서 그거를 사용해 보겠다.코드데이터 입력하는 코드[System.Serializable]public class ItemInstance{ public int id; //서버에서 발급해주는 아이템 아이디 public int itemId; //기획 데이터에 있는 아이템 아이디 public int count; public int enhance; //강화 횟수}[System.Serializable]public class ItemInstanceData //인스펙터창에 정보 표기하기 위해서 사용된 클래스{ ..
2024.12.03 -
Newtonsoft.Json 라이브러리를 사용하면 JSON역직렬화 List로 변환
ItemInstance타입으로 아이템의 정보를 저장하고 그거에 대한 정보를 JSON파일로 관리를 할려고 하는데 꺼내올때 List타입으로 꺼내오고 싶어서 사용한 방법이 하나의 클래스를 만들어서 거기에 ItemInstance타입의 List를 담는 변수를 만들어서 해당 클래스를 JSON타입으로 저장하고 불러와서 해당변수의 값을 내가 원하는곳의 값에 저장을 하는 식으로 했는데 이렇게 작성하는것보다 더 좋은 방법이 있다고 하셔서 찾아봤다.사용 예시 코드public List Parse(string FileName){ TextAsset jsonFile = Resources.Load(FileName); if (jsonFile == null) { Debug.LogError($"파일 {File..
2024.12.02 -
JSON을 제네릭으로 가져오는 방법
Unity에서 데이터를 저장하거나 불러오는 경우에 JSON형식을 많이 사용한다. 그런데 여기에 데이터 타입에 국한되지 않고 제니릭을 활용하면 더욱 유연하고 재사용 가능한 코드를 작성할 수 있다.제네릭을 사용하는 이유1. 코드 재사용성: 동일한 로직을 여러 타입에 대해 반복해서 작성할 필요가 없다.2. 유연성: 특정 데이터 타입에 국한되지 않고, 다양한 클래스나 구조체에도 적용할 수 있다.3. 타입 안전성: 컴파일 시 타입을 검증하므로, 런타임 오류를 줄이고 더 안전한 코드를 작성할 수 있다.코드public void SaveData(T data){ string json = JsonUtility.ToJson(data); File.WriteAllText(savePath + $"/{typeof(T)...
2024.11.29 -
UGS(유니티 구글시트)로 데이터 관리하는 방법/ 스크립트에서 데이터 추가하는것 이어서 작성할 것
데이터관리로 유니티 구글 시트(Unity Google Sheets)를 선택한 이유Unity에서의 구글 시트를 선택한 이유는 게임 데이터 관리와 실시간 수정이 간편하다는 장점때문에 선택을 하게 됐다.구글 시트를 Unity에서 사용하는 이유실시간 수정 및 관리 편의성- UGS는 Unity 에디터와 직접 연동되어 별도의 툴 없이Unity 내부에서 데이터를 실시간으로 확인하고 수정 가능하다.- 개발자뿐만 아니라 비개발자(디자이너, 기획자)도 UGS 대시보드에서 데이터를 쉽게 수정할 수 있어서 직관적인 UI와 관리 편. 의성이 실무에서 큰 장점으로 뽑힌다.MySQL, PostgreSQL, MongoDB 등은 데이터를 수정하려면 DB 쿼리를 작성하거나, 별도의 관리 툴을 통해 접근해야 한다Unity..
2024.11.28