디자인패턴 첫번째 - 초보자를 위한 싱글톤

  Рет қаралды 21,872

오늘코딩

오늘코딩

2 жыл бұрын

초보자를 위한 싱글톤 영상입니다.
유니티에 사용하는 형태로 한줄한줄 설명하면서 천천히 진행하였습니다.
초보자를 대상으로 쉽게 설명하려다보니,
다소 비유적인 표현을 사용했기에 정석과는 다소 다를 수 있습니다.
정확한 것을 목표로 하기 보다는 쉬운 것을 목표로 했습니다.
쉽게 접근해야 어렵다는 관념이 무너지고
쉽게 느끼게 되면 그 후에 이론적인 상세한 공부를 해도 된다고 생각하기 때문입니다.
부족한 영상이지만 도움이 되길 바랍니다.
-----------------------------------------------------------------------------------------------------------------------
저도 아직 모르는 게 많고 부족한 부분이 많기 때문에
저 역시 공부한다는 생각으로 찾아보고 조사하면서 영상을 만들고 있습니다.
틀린 부분이나 보충할 부분이 있다면 댓글로 남겨주시면 감사하겠습니다.
문의 및 이메일 : devtodaycoding@gmail.com

Пікірлер: 37
@오늘코딩
@오늘코딩 2 жыл бұрын
00:00 intro 00:36 서론 - 사용 예시 01:57 싱글톤의 첫번째 특징 02:28 싱글톤의 두번째 특징 03:16 싱글톤의 세번째 특징 05:05 코드 작성 시작 08:42 싱글톤의 문제점 09:08 코드 완성 후 마무리 리뷰 10:08 실제 플레이 테스트 11:22 수 많은 매니저들을 관리하는 방법들 12:32 제네릭 형태의 싱글톤 구현
@namespace_
@namespace_ Жыл бұрын
진짜 쉽고 자세하게 설명해주시네 진짜 이해가 쏙쏙 됩니다 감사합니다
@user-dv2dn8oq9u
@user-dv2dn8oq9u 2 жыл бұрын
자세하게 설명해 주셔서 한번에 이해했네요! 감사합니다!
@seongminjeon7243
@seongminjeon7243 2 жыл бұрын
항상 감사합니다.
@user-nb5zl6rl8l
@user-nb5zl6rl8l 2 жыл бұрын
싱글톤에 대해서 어려웠었는데 오늘코딩님 영상보고 조금은 이해하게 되었습니다! 감사합니다!
@user-rm7cw8qv7b
@user-rm7cw8qv7b Жыл бұрын
설명 너무 좋네요 감사드려요
@aidenji9028
@aidenji9028 11 ай бұрын
감사합니다!!!! 싱글톤에 대해 너무 쉽게 잘 이해하게 되었어요~
@edyfrelliah2485
@edyfrelliah2485 Жыл бұрын
좋은 영상 감사합니다. 다른 패턴영상도 기대되네요
@hoyakim4280
@hoyakim4280 Жыл бұрын
싱글톤은 조심해야 한다고 배웠습니다. 다른 디자인 패턴과 달리 싱글톤은 "철회"가 어렵습니다. 오브젝트가 하나여야 하는지 오브젝트가 담고 있는 "데이터"가 하나여야 하는지 잘 생각해서 트랜젝션을 대신 사용해야 할 수도 있습니다. 그리고 싱글톤은 멀티프로세스 환경에서 의도한 바와 다르게 동작하기 때문에 그것도 조심해야 합니다. 저는 그래서 데이터가 유일해야 하면 DB(Redis같은 좀 덜 무거운거) 쓰고 데이터와 함께 행동까지 유일해야 하면(디바이스 드라이버 등) 싱글톤을 씁니다.
@user-vj2sh1kc1x
@user-vj2sh1kc1x 10 ай бұрын
디펜던시 가 좀 더 있냐 없냐 차이고 DB 쓰는게 결국 싱글턴 쓰는거지. 내가 코드로 구현해서 메모리에 올려두나 남이 만든 redis 메모리 올려두나 그게 그거. 멀티 프로세스가 아니라 멀티 스레드 말하는 것 같은데 .net의 Lazy나 c++ call_once 같이 언어 차원에서 지원되는 기능 있으니 별 힘 안 들이고도 초기화 가능함.
@user-ur2fl6hw7j
@user-ur2fl6hw7j 4 ай бұрын
​@@user-vj2sh1kc1x이젠 머가 상황따라 좋고 나쁜지 몰겟네요
@user-eo2uj9uk7x
@user-eo2uj9uk7x 2 жыл бұрын
와 깔끔한 설명이네요
@Gyokujin
@Gyokujin Жыл бұрын
제네릭을 싱글톤에 접목시키는건 모르고 있었는데 이번 기회에 배웠습니다 영상 감사합니다
@flaticonbanana8314
@flaticonbanana8314 Жыл бұрын
와 두고두고 봐야겠네요. 목소리도 너무 멋있으세요~~~
@gim-ori
@gim-ori Жыл бұрын
씬 전환시 데이터 유지에 대한 방법을 찾다가 흘러왔습니다. 유익한 강의 감사합니다!
@llllIIIIlllIIIlll
@llllIIIIlllIIIlll Жыл бұрын
설명이 좋네요~ ㅎㅎ
@user-oy3xz4fr7h
@user-oy3xz4fr7h Жыл бұрын
좋은 영상
@zihasoo
@zihasoo Жыл бұрын
전 개발자가 심각한 싱글톤 중독이라 고치는데 애먹었었는데 확실히 코드 짜는거 자체는 편한건 있더라구요...
@user-kv4ty5kq9k
@user-kv4ty5kq9k 10 ай бұрын
안녕하세요! 도움이 많이 되었습니다. 감사합니다. ( _ _)
@user-pq4fe8wd1d
@user-pq4fe8wd1d 2 жыл бұрын
좋은 영상 잘 봤습니다. 제너릭 부분 하실때 궁금한게 있습니다. 이미 instance가 존재하면 새로 생긴 싱글톤 오브젝트는 Destroy로 삭제하는 로직은 없어도 되는건가요?
@오늘코딩
@오늘코딩 2 жыл бұрын
좋은 댓글 너무 감사합니다! 사실 destroy로 파괴하는 로직은, 싱글톤자체를 인위적으로 생성하는 경우에 오류 발생을 방지하기 위한 예외처리를 위해서 필요합니다. 그런데 영상처럼 처음 씬에 전부 생성해놓고 끌고가는 경우라면 굳이 생성파괴를 할 일이 없어서 제가 빼먹은것같네요 ㅠ 그렇지만 프로젝트가 규모가 커지고 훗날 어떤 변형이 이뤄질지 모른다면 말씀하신 destroy처리를 해주는게 더 좋은 코딩이라고 생각합니다! 감사합니다.
@user-sl6yv2uh2v
@user-sl6yv2uh2v Жыл бұрын
재밌어요
@shk3593
@shk3593 2 жыл бұрын
오늘도 잘 배웠습니다. 많은 도움이 되었습니다~ 전에도 알아듣기 좋았지만 이번 영상은 설명하시는 톤이 더 안정적이고 체계적이 되신 것 같습니다. 감사합니다~
@오늘코딩
@오늘코딩 2 жыл бұрын
잘 찍어보려고 조금씩 더 준비하고 있습니다. 알아봐주셔서 기쁘네요 ㅎㅎ 앞으로 더 깔끔하게 준비해보겠습니다 감사합니다
@Wind_mill
@Wind_mill Жыл бұрын
좋은 영상 감사합니다! 해당 영상을 따라하다가 아래와 같은 문구가 갑자기 등장했는데요. 아직 부족한 실력이라. 어디서 발생하는지 몰라서요... 조언을 부탁드려도 될까요? [Adaptive Performance] No Provider was configured for use. Make sure you added at least one Provider in the Adaptive Performance Settings.
@오늘코딩
@오늘코딩 Жыл бұрын
Adaptive Performance 관련된 설정이 잘못되어있는것 같네요. 패키지매니저에서 Adaptive Performance 찾아서 삭제하시거나, 아니면 올바르게 세팅해주면 될 것 같습니다. 유니티 Adaptive Performance라고 구글에 검색하셔서 공식문서 확인해보시길 바랍니다.
@Wind_mill
@Wind_mill Жыл бұрын
@@오늘코딩 잘몰라서, 모두 삭제하고 다시 만들었더니 잘됩니다! 감사합니다!
@tetras699
@tetras699 Жыл бұрын
저여태까지 존속성을 종속성으로 알고있었어요 ㅋㅋㅋㅋㅋㅋ
@user-ve2ni8bb6c
@user-ve2ni8bb6c 9 ай бұрын
private static DataManager instance; 선언 후 get을 쓰는 것과 public static DataManager Instance;의 차이가 뭔가요?
@cumptll795
@cumptll795 Жыл бұрын
아 유니티가 게임만들때 쓰나보군요,,,
@mayilagann3833
@mayilagann3833 Жыл бұрын
무지성 싱글톤 멈춰!!!!!!!
@GO0Es
@GO0Es 10 ай бұрын
뭐라하노..
@user-ok9lo3jd5d
@user-ok9lo3jd5d Жыл бұрын
난 왜 하나도 이해가 안될까..
@abcd99999f
@abcd99999f Жыл бұрын
근데 그냥 public쓰지 뭐하러 private 씀? 그거 보안 의미 ㅈ도 없는데
@user-dh5fn7se3b
@user-dh5fn7se3b 11 ай бұрын
꼭 보안의 의미로 쓰는건 아니라서용....
@reasure3
@reasure3 7 ай бұрын
외부에서 instance을 직접 바꾸는걸 방지하는 역할도 있습니다.
@sorryseori471
@sorryseori471 Жыл бұрын
유튜브 잘 보고 있습니다! 15:25에서 부모오브젝트가 있거나 최상위에 뭔가 존재한다면 이라고 설명하시는데 그럼 or이 들어가야하나요? 그리고 제네릭을 사용할 때, Destroy를 추가해준다면 private void Awake() { if (instance == null) { // 씬 전환이 되어도 유지되도록 // 부모가 있거나 최상위에 뭔가 있다면 if (transform.parent != null || transform.root != null) { DontDestroyOnLoad(this.transform.root.gameObject); } else { DontDestroyOnLoad(this.gameObject); } } else { Destory(this.gameObject); } } 이렇게 해도 될까요?
초보자를 위한 에셋번들 - 개념 설명 및 기본 구현
14:05
객체지향 디자인패턴 1
16:56
얄팍한 코딩사전
Рет қаралды 82 М.
Iron Chin ✅ Isaih made this look too easy
00:13
Power Slap
Рет қаралды 36 МЛН
Женская драка в Кызылорде
00:53
AIRAN
Рет қаралды 488 М.
39kgのガリガリが踊る絵文字ダンス/39kg boney emoji dance#dance #ダンス #にんげんっていいな
00:16
💀Skeleton Ninja🥷【にんげんっていいなチャンネル】
Рет қаралды 8 МЛН
디자인패턴의 탄생과 유행 그리고 현재
3:11
오늘코딩
Рет қаралды 11 М.
대부분이 잘못 사용하는 Text Mesh Pro 재대로 알아보기! (꿀팁 대방출👀)
20:06
NK Studio의 유니티 스페셜 테크닉
Рет қаралды 1,8 М.
Developers Compete To Create The Worst UIs
11:10
노마드 코더 Nomad Coders
Рет қаралды 79 М.
[10분 테코톡] 아서의 싱글턴 패턴과 정적 클래스
10:36
I Can't Believe I Did Not Know This (ft. Observer Pattern)
5:16
노마드 코더 Nomad Coders
Рет қаралды 23 М.
[유니티] Rigidbody로 캐릭터 움직임 구현
34:27
오늘코딩
Рет қаралды 26 М.