일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 웅진씽크빅
- c++
- 게임개발
- 너비우선탐색
- 유니티
- 이분탐색
- 알고리즘
- 이득우
- BFS
- 운영체제
- 개발일지
- lower_bound
- 게임개발공모전
- 구현
- fsm
- DFS
- 프로그래머스
- 재귀
- unity
- 유한상태기계
- 백준
- 시리얼라이제이션
- upper_bound
- 안드로이드
- 언리얼
- 인프런
- c#
- binary_search
- unreal
- UI 자동화
- Today
- Total
목록Book (2)
초고교급 희망
Chapter 01 리팩터링이란? 겉으로 드러나는 코드의 기능(겉보기 동작)은 바꾸지 않으면서 내부 구조를 개선하는 방식으로 소프트웨어 시스템을 수정하는 과정이다. 예시 프로그램에서 발견한 수정할 부분 프로그램이 새로운 기능을 추가하기에 편한 구조가 아니라면, 먼저 기능을 추가하기 쉬운 형태로 리팩터링 하고나서 원하는 기능을 추가한다. 1)HTML로 출력하는 기능을 위한 복사본 로직을 변경할 일이 절대 없다면 상관없지만, 오래 사용할 프로그램이라면 중복 코드는 골칫거리가 된다. 2)연극 장르와 공연료 정책이 달라지는 변경사항 리팩터링이 필요한 이유는 바로 변경 때문이다. 다른 사람이 읽고 이해해야 할 일이 생겼는데로직을 파악하기 어렵다면 대책을 마련해야 한다. ‘디지털 시대의 연약한 자여, 그대 이름은 ..
1. 명령 패턴이란? 메서드 호출을 실체화(reify)한 것이다. 실체화는 어떤 개념을 변수에 저장하거나 함수에 전달할 수 있도록 데이터, 즉 객체로 바꿀 수 있다는 걸 의미한다. 여기에서 명령 패턴을 '메서드 호출을 실체화한 것'이라고 한 것은 함수 호출을 객체로 감쌌다는 의미다. 2. 입력키 변경 예시 모든 게임에는 X, Y, A, B 버튼등의 유저 입력을 읽는 코드가 있다. 간단하게 구현하면 다음과 같다. void InputHandler::handleInput() { if (isPressed(BUTTON_X)) jump(); else if (isPressed(BUTTON_Y)) fireGun(); else if (isPressed(BUTTON_A)) swapWeapon(); else if (isPr..