프로퍼티의 get set
안녕하세요
Players의 PlayerDbId, Session의 프로퍼티는 {get; set;}으로 설정되었는데 ClientSession_PreGame의 AccountDbId는 {get; private set;}으로 설정되어있습니다.
AccountDbId는 이 클래스에서만 변경 가능함.. 이라고 설정해두는건 아마 오랜 경험이 있어야 될것 같습니다.
강사님은 보통 어떤 경우를 구분해서 프로퍼티를 설정하시는지 (대략적으로라도..) 궁금합니다~
답변 1
4
안녕하세요,
단순하게 생각해서 Session의 AccountDbId는 처음 한 번 세팅을 해주면
두 번 다시 바뀔 일이 없을테니 private로 막아놓긴 했지만,
그런 부분은 심오하게 고민할 부분은 아니고
이리저리 본인 스타일대로 고쳐도 무방합니다.
사실 저도 회사를 가기 이전에는 회사 코드는 뭔가
규격있는 스타일 및 노하우가 있을거라 생각했지만,
방대한 코드를 보면서 느낀건 (우선 이게 돌아가는게 신기하기도 하고)
100명의 작업자가 있으면 100명의 스타일이 뒤섞여 있기에
세세한 부분은 심각하게 고민할 필요가 없는 것 같습니다.
가령 가끔 질문들을 보면 [특정 함수는 왜 어떤 클래스에 넣었는지],
[전역 클래스, 싱글톤 등은 OOP에 어긋나니 사용하면 안되는거 아니냐] 등의 설계 질문을 종종 받는데
다른 소프트웨어와 다르게 게임은
워낙 사양 변화가 심하고 작업자가 많이 바뀌는 편이기도 해서,
이론적인 부분과 실제 작업하는 방식에는 많은 차이가 있는 것 같습니다.
결론 : 본인 편한대로 하고 잘 돌아가면 됩니다.
그리고 정말 그렇게 하다가 문제가 생기면
거기서 또 경험치를 얻는 부분도 생기니 미리 걱정할 필요가 전혀 없습니다.
마우스 이벤트 처리방법(오브젝트간 인터렉션)
0
623
1
RecvArgs_Completed에서 lock을 안하는 이유
0
517
1
Entity framework 질문드립니다.
0
576
2
json 직렬화
1
290
1
mmo 와 pvp
0
537
2
github로 프로젝트를 push, pull할 때 질문
1
530
1
Iocp 서버 관련 질문드립니다.
0
329
1
서버 관련 질문
0
398
1
DB 처리관련 질문이 있습니다
0
303
1
안녕하세요. 질문드립니다.
1
1511
2
이해한 것이 맞나 궁금합니다.
0
288
1
마이그레이션 파일이 이상합니다.
0
284
1
강의 마지막으로 질문 드립니다.
0
680
2
ItemDbId,구조 설계
0
265
1
MMO 서버 관리 질문 드립니다!
0
324
1
디비 정보 나누기
0
241
1
AccountDb 업데이트
0
309
1
콘솔창이 아니라 브라우저에서 실행
0
283
2
메모리 누수문제.
0
498
1
유니티에서 클라이언트 빌드후 실행하면 맵 로드가 안됩니다.
0
364
1
외부 네트워크에서도 접속해서 게임하기
1
339
1
유니티클라에서 패킷을 계속 보내지 않고 lockstep이나 추측항법으로 동기화를 할 수 있을까요?
0
597
1
서버 메모리와 DB 저장 관련 질문
0
370
1
JsonUtility.FromJson 관해서 질문있습니다.
0
279
1





