inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

UserDataManager 클래스 hasSaveError 처리

해결됨

유니티 시스템 프로그래밍 Pt.1 - 상용 게임 구현을 위한 핵심 시스템 올인원 패키지

public void SaveUserData() { bool hasSaveError = false; for (int i = 0; i < UserDataList.Count; i++) { bool isSaveSuccess = UserDataList[i].SaveData(); if(!isSaveSuccess) { hasSaveError = true; } } if(!hasSaveError) { ExistsSavedData = true; PlayerPrefs.SetInt("ExistsSavedData", 1); PlayerPrefs.Save(); } } 여기로직에서 hasSaveError가 실패로 발생하면 개발자 입장에서는 어떻게 버그를 알 수 있을까요? 그리고 개발자는 어떻게 대처를 해야 될까요??

  • C#
  • unity
  • 객체지향
  • game-programming
Jorn 댓글 2 좋아요 0 조회수 69

제공해주신 자료에 스크립트들이 빠져있습니다

해결됨

유니티 시스템 프로그래밍 Pt.1 - 상용 게임 구현을 위한 핵심 시스템 올인원 패키지

Scripts폴더에 InGame폴더가 빈 폴더입니다 확인부탁드립니다

  • C#
  • unity
  • 객체지향
  • game-programming
carttman 댓글 2 좋아요 0 조회수 70

싱글턴패턴

해결됨

유니티 시스템 프로그래밍 Pt.1 - 상용 게임 구현을 위한 핵심 시스템 올인원 패키지

Init 함수에서 m_Instance가 null이 아니면 왜 gameobject를 Destroy하나요? OnDestroy 함수 호출되면 m_Instance 을 null로 만드는데 그럼 문제가 되지않은 객체도 m_Instance가 null이니 사용못하는거 아닌가요? using UnityEngine; public class SingletonBehaviour<T> : MonoBehaviour where T : SingletonBehaviour<T> { //씬 전환 시 삭제할지 여부 protected bool m_IsDestroyOnLoad = false; //이 클래스의 스태틱 인스턴스 변수 protected static T m_Instance; public static T Instance { get { return m_Instance; } } private void Awake() { Init(); } protected virtual void Init() { if(m_Instance == null) { m_Instance = (T)this; if(!m_IsDestroyOnLoad) { DontDestroyOnLoad(this); } } else { Destroy(gameObject); } } //삭제 시 실행되는 함수 protected virtual void OnDestroy() { Dispose(); } //삭제 시 추가로 처리해 주어야할 작업을 여기서 처리 protected virtual void Dispose() { m_Instance = null; } }

  • C#
  • unity
  • 객체지향
  • game-programming
Jorn 댓글 2 좋아요 0 조회수 73

Singleton 관련 질문입니다.

해결됨

C++로 만드는 게임 엔진 프레임워크 (소코반과 슈팅 게임으로 배우는 엔진 구조)

안녕하세요. 먼저는 기억하기 어려울 수도 있는 부분을 잘 정리하시고 전달해주셔서 감사합니다. 명쾌한 설명과 구조 정리 덕분에 명쾌하게 이해할 수 있는 것 같습니다. 구조와 테스트 면에서 제가 잘 몰라서 궁금한 부분에 대해 여쭤보고 싶습니다. Singleton 구현을 보다가 문득 생각이 드는 부분이 있었습니다. GameEngine을 만들 때 생성자를 public으로 만드셨는데 이 부분에서 API를 가져다 쓰는 입장을 생각하면 생성자를 private으로 만들고 Get만 공개하는 것이 더 안전하지 않았을까 하는 생각이 들었습니다. 두 번째로는 이런 전역 객체는 어떻게 테스트 하는가 입니다. 테스트도 마땅히 들어가야 할 것으로 알고 있는데 이 부분은 뒤에 나오겠지요?

  • c++
  • 객체지향
  • 아키텍처
  • 테스트
  • 안전성
HVNtest 댓글 2 좋아요 1 조회수 151

코드 자료

미해결

스프링 핵심 원리 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 강의 자바 코드 자료는 따로없을까요?

  • spring
  • 객체지향
여비 댓글 2 좋아요 0 조회수 108

질문있습니다

미해결

김영한의 실전 자바 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 수업을듣다가 헷갈리는부분이 있습니다. 참조형, 객체지향 과정 수업을 듣고나서부터 void를 써야할지 return값을받는것이 좋을지 헷갈립니다. 풀이과정을 보면서 따라해보고 다시 생각해보는데요 이러한 생각이 배우는과정이라고 생각해도되는건가요? 아니면 제대로 판단이 될정도로 공부하고 넘어가야되나요?

  • java
  • 객체지향
Choi 댓글 1 좋아요 0 조회수 83

1번 문제 질문입니다.

미해결

김영한의 실전 자바 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 이런식으로 풀어봤는데요 객체지향적으로 만들어진건지 확인부탁드립니다!

  • java
  • 객체지향
Choi 댓글 1 좋아요 0 조회수 73

음악플레이어 문제 중 코드질문

미해결

김영한의 실전 자바 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 음악 플레이어 끄기 코드중에 isOn = false; 이거는 왜쓰는지 잘이해가안돼서요 어차피 사용되지않아서 System.out.println("음악 플레이어를 종료합니다."); 만 으로도 결과가 같은데 써야하는 이유가있나요?

  • java
  • 객체지향
Choi 댓글 1 좋아요 0 조회수 67

문제와 풀이4 문제점

미해결

김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 현재 숫자로 입력 옵션을 처리하는 것은 문제가 있습니다. 만일, 실수로 문자를 입력 할 경우 에러가 발생하여 팅겨버리게 됩니다. 이것은 버그라고 판단 될 수 있습니다. 또한, "올바른 옵션을 선택해 주세요"를 처리하지 못하게 됩니다. 따라서 문자로 처리해야 아무런 문제가 없이 정상적으로 해당 프로그램이 작동합니다. 이점을 참고하여 주세요. package scanner.ex4; import java.util.Scanner; public class ScannerEx2 { public static void main(String[] args) { Scanner input = new Scanner( System.in ); int totalCost = 0; while (true){ System.out.print("1: 상품 입력, 2: 결재, 3: 프로그램 종료 : "); String option = input.nextLine(); if(option.equals("1")){ System.out.print("상품명을 입력하세요 : "); String name = input.nextLine(); System.out.print("상품의 가격을 입력하세요 : "); int price = input.nextInt(); System.out.print("구매 수량을 입력하세요 : "); int count = input.nextInt(); input.nextLine(); totalCost += price count; System.out.println("상품명:" + name + ", " + "가격:" + price + "원, " + "수량:" + count + ", " + "소계:" + (price count) + "원"); System.out.println("=================================================="); } else if (option.equals("2")) { System.out.println("총 비용 : " + totalCost + "원"); totalCost = 0; } else if (option.equals("3")) { System.out.println("프로그램을 종료합니다."); break; } else { System.out.println("올바른 옵션을 선택해 주세요."); } } } }

  • java
  • 객체지향
하나일 (해와별을품은아빠) 댓글 2 좋아요 0 조회수 118

문제와 풀이

미해결

김영한의 실전 자바 - 중급 1편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 여기에 질문 내용을 남겨주세요. 문제를 풀긴 풀었는데 이런 방법으로 해도 같은 의도로 했다고 볼 수 있나요? ImmutableMyDate package lang.immutable.test; public class ImmutableMyDate { private final int year; private final int month; private final int day; public ImmutableMyDate(int year, int month, int day) { this.year = year; this.month = month; this.day = day; } public int getYear() { return year; } public int getMonth() { return month; } public int getDay() { return day; } @Override public String toString() { return year + "-" + month + "-" + day; } } ImmutableMyDateMain package lang.immutable.test; public class ImmutableMyDateMain { static void main(String[] args) { ImmutableMyDate date1 = new ImmutableMyDate(2024,1,1); ImmutableMyDate date2 = date1; System.out.println("date1 = " + date1); System.out.println("date2 = " + date2); System.out.println("date1 -> 2025"); date1 = new ImmutableMyDate(2025,1,1); System.out.println("date1 = " +date1); System.out.println("date2 = " +date2); } }

  • java
  • 객체지향
집가고싶다 댓글 1 좋아요 0 조회수 69

문제풀이 시간마다 방향성

미해결

김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 입문단원 듣는 중입니다. 스캐너,배열 넘어가면서 부터 문제와 예제시간에 항상 먼저 주석으로 구조를 적고나서 코드를 입력하려고 하는데 구상해놨던 구조를 막상 코드로 타이핑 해보려고하니까 막힙니다. 머리가 안좋은건지.. 이게 정상인건지 ㅜㅜ 어떤식으로 문제를 해결하면좋을까요. 스캐너 이후로 혼자 문제를 완벽하게 풀어본적이 없네요. 그냥 단순히 강의 영상처럼 해보고 막히면 따라입력해보고 다지우고 입력해보고 넘어가는게 최선일까요?

  • java
  • 객체지향
정현수 댓글 2 좋아요 0 조회수 110

레이어드 아키텍처에서 도메인 중심 패키지 구조를 적용하거나 변화하는 시점이 있을까요?

해결됨

오브젝트 - 설계 원칙편

안녕하세요 조영호님, 강의 복습하며 설계의 깊이를 더해가고 있는 수강생입니다. 8~9장을 통해 상/하위 모듈의 패키지 배치 원리를 배우며 실무 적용에 대해 고민이 생겨 질문 남깁니다. 그동안 실무에서 레이어드 아키텍처를 주로 사용하며 서비스와 도메인 로직을 구분해 왔는데, 복습하다보니 그간 해왔던 물리적인 패키지 분리(인터페이스와 구현의 분리 등)를 엄격하게 적용하는 것이 자칫 오버 엔지니어링이 아니었을까 하는 생각이 들었습니다. # 프로젝트 패키지 구조 예시 Project - ServiceInterface - ServiceImplement - RepositoryInterface - RepositoryImplement - Controller - Model 최근에는 의식해서 도메인 모델을 만들어 보는데, 기존 레이어드 아키텍처의 패키지 구조 내에서는 '도메인의 응집도'와 '레이어의 규칙'이 충돌하는 지점 이 생겨 배치가 모호해지곤 합니다. 이에 두 가지 질문을 드리고 싶습니다. 1. 단순히 레이어드 아키텍처로 감당하기 힘들어지는, 즉 '도메인 중심의 패키지 구조'로 변화해야 하는 구체적인 징후나 시점 이 있을까요? 2. 모든 모듈에 엄격한 패키지 분리를 적용하기에는 비용이 부담된다고 생각되는데, 마치 절차지향과 객체지향 중 하나를 선택하듯, 패키지 수준의 격리를 우선적으로 적용하기 좋은 도메인 특성 이 있을까요? (예: 정책 복잡도가 높아 사이드 이펙트가 빈번한 곳, 혹은 외부 인프라 변경에 민감한 핵심 도메인 등) 최근에는 조영호님의 도서/강의 통해 배운 내용을 의식하면서 실무에 적용해보는데, 예전보다 일 하는게 즐거워진거 같습니다. 미리 답변 감사드립니다. 좋은 하루 되세요. 🙇🏻

  • 객체지향
  • 소프트웨어-테스트
  • 소프트웨어-설계
이진우 댓글 2 좋아요 1 조회수 116

LobbyUIController의 백키가 사라졌는데 왜그런건가요?

해결됨

유니티 시스템 프로그래밍 Pt.1 - 상용 게임 구현을 위한 핵심 시스템 올인원 패키지

갑자기 빽키가 안되서 코드를 봤더니 업적부터인지 언제부터인지 자료를 받은 코드에서 보니 코드가 사라졌는데 왜 그런가요? 없어도 되야하는건가요? private void Update() { HandleInput(); } private void HandleInput() { if (Input.GetKeyUp(KeyCode.Escape)) { AudioManager.Instance.PlaySFX(SFX.ui_button_click); var frontUI = UIManager.Instance.GetCurrentFrontUI(); if (frontUI) { frontUI.CloseUI(); } else { var uiData = new ConfirmUIData(); uiData.ConfirmType = ConfirmType.OK_CANCEL; uiData.TitleTxt = "Quit"; uiData.DescTxt = "Do you want to quit game?"; uiData.OKBtnTxt = "Quit"; uiData.CancelBtnTxt = "Cancel"; uiData.OnClickOKBtn = () => { Application.Quit(); }; UIManager.Instance.OpenUI<ConfirmUI>(uiData); } } }

  • C#
  • unity
  • 객체지향
  • game-programming
CodeKimbap 댓글 2 좋아요 0 조회수 96

무조건 타이틀 씬부터 시작해야하나요?

해결됨

유니티 시스템 프로그래밍 Pt.1 - 상용 게임 구현을 위한 핵심 시스템 올인원 패키지

게임을 테스트 및 개발할때마다 순차적으로 타이틀씬에서 시작하면 로딩도 기다려야되고 항상 씬도 계속 바꿔야되는 무제가 있는데 로비씬이나, 인게임 씬부터 시작하면 UIManager를 찾을 수 없다고 나오기도하고 다른에러들도 나오는데 이 부분에 대해서는 어떻게 처리하나요? 아니면 강사님이 올려주신 프레임워크는 플레이 하라면 타이틀 씬부터 하게만 설계가 되어있나요?

  • C#
  • unity
  • 객체지향
  • game-programming
CodeKimbap 댓글 1 좋아요 0 조회수 80

9장 상속 문제와 풀이 질문

미해결

김영한의 실전 자바 - 기본편

@Override public void print() { super.print(); System.out.println("- 저자: " + author + ", isbn:" + isbn); } 다름이 아니고 @Override를 하는 이유가 부모에서 사용하는 메서드를 자식에서 재사용을 위해서 사용하신다고 했는데 궁금한 게 강의 내용 중에 객체를 생성하고 메서드를 사용할 경우 먼저 자식을 보고 그다음에 없으면 부모를 보신다고 하셨는데 그러면 이미 자식에는 print가 있으니까 저렇게 super.print();를 붙이면 굳이 @Override를 안 붙여도 상관없지 않나요? 관례가 있어서 많은 개발자분들께서 붙인다고 하셨는데 저 경우에는 재사용이 아니고 바로 자식 쪽에서 메서드가 있으니까 굳이 부모까지는 갈 필요가 없지 않나요??

  • java
  • 객체지향
탕면이 댓글 1 좋아요 0 조회수 79

BaseUI, UIManager

해결됨

유니티 시스템 프로그래밍 Pt.1 - 상용 게임 구현을 위한 핵심 시스템 올인원 패키지

BaseUI, UIManager에 처리에 대한 구분이 제가 명확하게 이해가 잘안되고 헷갈려 질문드립니다. 1. BaseUI에서 처리하는 함수 및 기능에 대한 기준이 무엇인가? 2.UIManager에서 처리하는 함수 및 기능에 대한 기준이 무엇인가? OpenUI를 할때는 SetParent를 BaeUI안의 Init함수에서 하고 CloseUI를 할때는SetParent UIManager에서 하는데 어떤 기준이나 지향점으로 하신건가 궁금합니다. CloseUI에서도 부모의 설정을 매니저에서 해줬으니 OpenUI도 매니저에서 설정해주면 통일성이 있지 않을까? 그런데 강사님은 어떤기준으로 하셨을까 궁금합니다. var siblingIndex = UICanvasTrs.childCount; ui.Init(UICanvasTrs); ui.transform.SetParent(UICanvasTrs); // 이런식? ui.transform.SetSiblingIndex(siblingIndex); ui.gameObject.SetActive(true); ui.SetInfo(uiData); ui.ShowUI(); 마지막으로 코드가 이해가 잘 안되는게 BaseUI에서의 CloseUI함수에서는 UIManager.Instance.CloseUI(this); 호출하는데 BaseUI에서의 ShowUI는 매지저 호출에 처리가 없어서 이것도한 2개가 달라 많이 헷갈리네요. ㅠ 코드가 작성되는 방식은 여러가지겠지만 강사님의 코드의 작성의 의도와 목적을 잘 이해하고 싶어서 질문드립니다. ~

  • C#
  • unity
  • 객체지향
  • game-programming
CodeKimbap 댓글 3 좋아요 0 조회수 105

프로젝트 완성본 문의

해결됨

【2025年版】Unity×C#入門|2Dタワーディフェンスゲーム開発|クラッシュ・ロワイヤル風バトルシステムの作り方

안녕하세요 프로젝트 완성본 파일은 받는 곳이 어디있나요? 소스코드만 올라와 있길래 문의드립니다. 감사합니다.

  • C#
  • unity
  • 객체지향
  • 콘텐츠-제작
  • game-programming
qiulong Xin 댓글 2 좋아요 0 조회수 93

섹션 2 퀴즈 9번

미해결

김영한의 실전 자바 - 중급 1편

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 네 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 아니오 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 네 9번에 ==연산자와 equals 메서스 둘다 물리적 동일성 이라고 해야 맞는거아닌가요? 오버라이딩 되지 않은 기본 equals 는 ==으로 비교하고 논리적 동등성은 String 변수.equals 한정 아닌가요??

  • java
  • 객체지향
wxd8339 댓글 2 좋아요 0 조회수 64

질문 디스코드 관련

해결됨

일정 관리 앱 만들기 챌린지 - 3기

오티 강좌에 질문 디스코드가 있다고 하셨는데 링크 받을 수 있을까요??

  • 객체지향
  • 알고리즘
  • data-structure
LIMC 댓글 1 좋아요 0 조회수 77

강의 자료에 사소한 오타가 있습니다.

미해결

김영한의 실전 자바 - 기본편

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] '2. 기본형과 참조형.pdf' 파일 13페이지에 사소한 오타가 있습니다.

  • java
  • 객체지향
i2mi 댓글 2 좋아요 0 조회수 95

인기 태그

인프런 TOP Writers

주간 인기글