ACABERRY와 함께하는 프로그래밍 공부 가비지 컬렉터 이부분을 물어본다면 보통 '이 슈레기수집자가 언제 호출되며 어떻게 동작되는지 설명해보시오' 라고 묻게됩니다. 가비지컬렉터 동작관련은 면접 단골이니, 자신만의 답변을 만들어 보세요〃 :: GC 동작 발생 시기GC는 특정 조건(힙의 사용 가능한 영역이 특정 수준 이하로 줄어든다든가 등등)을 만족하는 상황이 되면 현재 수행중인 쓰레드(thread)들을 모두 중단시키고 GC 쓰레드를 활성화(평소에는 아무런 작업 없이 잠들어 있는 쓰레드이다)한다. 그림으로 설명된 꿀잼원리. http://grayt.tistory.com/115 가비지 컬렉터 Welcome to GC world. http://www.simpleisbest.net/post/2011/04/01/R..
ACABERRY와 함께하는 프로그래밍 공부 동적배칭 정적배칭 스태틱배칭 다이나믹배칭 정적 배칭에는 메모리와 스토리지가 많이 사용되고 동적 배칭에는 CPU 리소스가 많이 사용됩니다. 지원여부 관련 : 다 지원하지만 다이나믹 배칭은 HDRP에서 지원하지 않습니다. 사용예 : 유니티 게임 엔진에서의 드로우콜이란? / Draw Call in Unity Game Engine? http://rapapa.net/?p=2472 동적(Dynamic) 배칭 / 정적(Static) 배칭 https://docs.unity3d.com/kr/current/Manual/DrawCallBatching.html ―――― ACABERRY's STUDY ―――― ACABERRY's STUDY ―――― ACABERRY's STUDY ―――..
ACABERRY와 함께하는 프로그래밍 공부 스크립트 라이프 사이클 플로우차트(Script Lifecycle Flowchart) 꼭 외워서 대답하실 수 있기를...!! Reset -> Awake -> OnEnable -> Start -> FixedUpdate -> ( yield WaitForFixedUpdate ) -> - physics update - OnTrigger -> OnCollision -> OnMouse -> Update -> ---------------------------------------------------------------------------------------------- yield null / yield WaitForSeconds / yield WWW / yield St..
ACABERRY와 함께하는 프로그래밍 공부 리팩토링 ( 나쁜냄새 / BadSmell / 배드스멜 ) 리팩토링 - 나쁜냄새 - BadSmell - [3] 코드속 나쁜 냄새 https://wikidocs.net/597 Refactoring - 나쁜 냄새(Bad Smell) https://nesoy.github.io/articles/2018-05/Refactoring-BadSmell 중복된 코드(Duplicated Code)한 곳 이상에서 중복된 코드 구조가 나타난다면, 그것을 합쳐서 프로그램을 개선할 수 있다. 긴 메소드(Long Method) 최대한 파라미터와 임시변수를 제거하고 그것도 힘들다면 Object를 생성하자. 거대한 클래스(Large Class) 많은 인스턴스 변수를 갖는 경우, 중복된 코드가 ..
ACABERRY와 함께하는 프로그래밍 공부 결합도 / 응집도 결합도 응집도 http://colomy.tistory.com/123 결합도는 낮게, 응집도는 높게. 결합도 - 모듈간 상호 의존하는 정도를 나타냄- 독립적인 모듈이 되기 위해서 각 모듈간 결합도가 약해야 하며 의존하는 모듈이 적어야 함 응집도 - 정보 은닉 개념을 확장한 것으로 모듈안의 요소들이 서로 관련되어 있는 정도, 즉 모듈이 독립적인 기능으로 정의되어 있는 정도를 나타냄 - 모듈의 내부 요소에는 특정 작업을 수행하기 위한 명령어, 명령어 모임, 호출문 등이 있음 - 독립적 모듈이 되기 위해 각 모듈의 응집도가 강해야함 모듈간 의존도가 약해야 독립적으로 모듈이 작동함을 뜻하고, 이어지는 의미로 다른곳에서 필요없는, 모듈에서만 필요한 요소가..
잡공부를 해야한다고 생각해요. JOB STUDY라고 포장은 했지만, 사실 감각적으로 알고있는 부분이 대다수. 면접시 자신을 100% 어필하려면 무엇보다도 '용어적'으로 정립할 필요가 있어요. ※ 면접자의 대답을 면접관이 해석하는 친절한 면접관도 있지만, 어쨌든 논리정연하게 단어로 풀어나가는게 점수따기엔 좋을 것 ※ 너무 질서정연하게 대답해도 '말만 잘하는사람인가?'에 대한 선입견을 줄 수 있으므로 경험담에 비추어 풀어낼 수 있어야한다는 것 정보/프로그래밍 갤러리 4년동안 일하면서 배운점 몇가지 정리 출처: http://yeogue.tistory.com/528?category=665004 [여그의 블로그] 배려와 꼼꼼함. 붙임성을 가지고 적극적으로 개선하려는 리더의 역량을 보이는건 인생 모든부분에서 적용 ..
ACABERRY와 함께하는 프로그래밍 공부 유니티 최적화 팁 유니티 최적화 팁 http://cafe.naver.com/unity1thdeveloper/7 반드시 외우세요!! 이해하고 사용하기만 하면 될 것 같은데 왜 외워야 할까요? 면접관이 물어보면 정확히 대답해야합니다. 제가 면접관이라면 '어떤일을 어떻게 했는지'에 대해 신나게 물어보겠지만,대부분 면접관 분들도 질문만을 우선 준비하고 답변자의 답변대해 깊게 질문하면서 이어가기때문에 면접관에 대한 배려도 필요합니다. '이미 다 해봤던 것들' 도 정확한 키워드로 대답해야 하지요. 면접자의 가치를 보여줄 수 있는 것은 정확한 답변! :) ―――― ACABERRY's STUDY ―――― ACABERRY's STUDY ―――― ACABERRY's STUDY ―..
ACABERRY와 함께하는 프로그래밍 공부 C++과 C#의 차이점? [001] 테스트 기법 - 화이트 박스 테스트, 블랙 박스 테스트 https://m.blog.naver.com/PostView.nhn?blogId=vongvera&logNo=220470622265&proxyReferer=https%3A%2F%2Fwww.google.com%2F 9장 정확하게만들기 http://www.parkjonghyuk.net/lecture/2017-2nd-lecture/computational/CT09.pdf 옛날기준 테스팅 기법 - 페이퍼요약 - 게임 테스팅 기법의 개요 by Redavidhttp://grapevine9700.tistory.com/33 [NDC14] (공개용)게임 QA에 적용할 수 있는 테스팅 기법과..
ACABERRY와 함께하는 프로그래밍 공부 스트링필드??? 면접시 스트링과 스트링필드의 차이점을 말하시오. 라는 문제가 있었는데, 찾아봐도 없었다... 정답은 이렇다. 스트링은 메모리가 정해져있지 않지만, 스트링필드는 미리 길이를 정해두고 사용하는 것. C++이었다면 위같은 느낌일 것이고 C#에서 스트링필드가 존재한다면 제네릭 느낌일 것이다.StringBuilder는 string + string(낭패) 대신 사용하는 것으로 자주 썼었지만, 비슷한 의미로 존재한다면 사용시 이니셜라이징을 한 뒤, 그 안에서만 사용하는 것이 될 듯. 스트링버퍼도 찾아서 참조하면 좋을 것 같네요 ;) 또는 문자배열일 가능성도 있습니다. [C++] String과 char 배열 비교 http://mk28.tistory.com/en..
ACABERRY와 함께하는 프로그래밍 공부 박싱 언박싱 박싱 : 밸류타입 -> 레퍼런스타입 언박싱 : 레퍼런스타입 -> 밸류타입 E게 왜 나쁜가.IL2CPP같은 컴파일러는 좀 더 “공격적”이어서 실행해야 할 코드는 생성하고 실행할 필요가 없는 코드는 생성하지 않는다. [C#] 박싱(Boxing)과 언박싱(Unboxing)http://guslabview.tistory.com/67 [C#&.Net] 15. 박싱&언박싱 http://www.hoons.net/Board/cshaptip/Content/46232 IL2CPP 최적화 : 박싱(Boxing) 피하기https://blogs.unity3d.com/kr/2016/08/11/il2cpp-optimizations-avoid-boxing/ㄴ값 형식 객체에 절대 ..