일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 빌드
- 알고리즘 문제풀이
- Effective C#
- build
- Unity
- 독후감
- 일본음식
- 자유여행
- 해커랭크 문제풀이
- C#
- 해커랭크
- javascript
- 프로그래밍
- 개발
- 이펙티브 C#
- 코토리
- IOS
- HackerRank
- 방학여행
- 이펙티브 씨샵
- 알고리즘
- 유니티
- 책리뷰
- 서평
- Android
- 독서
- 책 정리
- 정렬
- 문제풀이
- 프로그래밍도서
- Today
- Total
목록전체 글 (49)
Console.Log
새벽 일찍 일어나 지하철을 타고 북한산국립공원으로 출발했다. 여름 산행이라 엄청 더울 줄 알았지만 아침에 출발하니 그리 덥지 않았다. 국립공원 스탬프를 받아야 했기에 북한산성지원센터에서 시작하여 백운대를 찍고 내려오는 루트로 정했다. 내려오는 길을 돌아오는 바람에 올라갈때보다 내려오는 시간이 더 길었던거 같다. ㅋㅋㅋ 백운대 정상가기 직전 무차별 큰 돌들과 계단들 덕분에 숨이 턱 끝까지 차올랐지만 포기하지 않고 올라가니 백운대가 나를 반겼다. 정상에서 바라본 경치는 너무 아름다웠고, 바람도 많이 불어서 너무너무 시원했다. 최근에 러브버그 때문에 시끄러웠던 산인데 7월이 되니 벌레 한마리 보이지 않았다. 사람도 없어서 금방 인증샷도 찍을 수 있었다! 아침에 왔을땐 탐방센터가 문을 열지 않아서 정상찍고 내려..
7월 2일 꼭두새벽에 일어나 태백산을 향해 갔다. 생각보다 엄청 멀었다. 휴게소도 한번 들리고 달리고 달려 10시쯤 도착할 수 있었다. 태백산을 가기 전, 태백산국립공원 사무소에서 무료로! 스탬프 투어 여권을 발급 받았다. 이 여권들은 산 버전이 있고 섬+바다 버전이 있다. 각 지점마다 사무소에서 받거나 국립공원의 경우 등산로 입구에서 받을 수 있다. 나는 이날 처음 발급 받아서 태백산에 도장을 찍었다 ㅎㅎ 태백산 등산루트는 정상까지 오르고 원점회귀하는 것이 아니라 오른편으로 쭉 돌아오는 루트를 선택했다. 천천히 오르기도 했고, 쉬엄쉬엄 올라가는데도 4시간 정도 나왔다. 중간에 계곡도 들러 발도 담군시간도 포함되어있다. 한가지 단점? 이라면 내려오는 길에 계단이 없어서 중간에 몇 번 미끌어질 뻔 했다. ..
책 소개 지인의 추천으로 읽은 첫 번째 한국 SF소설이다. 싱크홀 사고 이후 초능력을 얻게 된 사람들과 그 사실이 세상 바깥으로 나오지 않게 하려는 섹션, 그리고 초능력자들을 중심으로 생긴 비원이라는 조직까지 ‘윤서리' 라는 주인공을 통해 이야기가 빠르게 전개되며 놀랄만한 반전까지… 숨 쉬지 않고 읽은 소설이다. 세 가지 능력 소설에선 세 가지 능력이 존재한다. 모든 것을 부수는 파쇄자, 멈추는 정지자, 제자리에 돌려놓는 복원자.. 작가의 능력의 표현이나 서술 등이 너무나도 생생하게 다가왔다. 참신하고 재밌는 설정들도 많았지만 단순 우연히 일어난 일이 아니라 그럴싸한 원인이 있어서 더 몰입감 있게 보았다. 싱크홀 속 두 그룹 처참한 상황 속 정여준과 최주상의 그룹은 정반대의 정치를 이룬다. 정여준은 힘으..
문제 게임 개발을 하다보면 Android AAB 빌드 용량이 150mb를 넘기는 순간이 온다. 이 때부터 개발자는 AAB내 base파일과 리소스 파일을 분리하여 base파일을 150mb가 넘어가지 않도록 수정해야 한다. 해결 Play Asset Delivery 안드로이드에서는 이런 문제를 해결 하기 위해 PAD(Play Asset Delivery)를 지원한다. PAD는 구글플레이에서 지원하는 애셋 호스팅 서비스다. 이 서비스를 사용하면 따로 CDN을 쓰지 않아도 쉽고 간편하게 애셋을 올릴 수 있다. 전송 모드 PAD는 총 3가지의 전송 모드를 지원한다. install-time: 앱이 설치될때 같이 전송된 된다. google play의 앱 크기에 영향을 미친다. ( 최대 1GB ) fast-follow: ..
뒤끝에서 서버 API를 사용하는 방법 뒤끝에서 서버 API를 사용하는 방법은 총 3가지다. 동기호출 비동기호출 SendQueue(비동기) 호출 난이도가 가장 쉽고 직관적인건 1번이지만 서버 값을 받아올 때까지 게임이 멈추기에 그렇게 좋은 방법은 아니다. 그렇다면 비동기호출을 해야하는데, 보낸 순서대로 순서를 보장 받을 수 있는 SendQueue방식의 호출을 게임을 개발하며 주로 사용했다. Promise 패턴 Promise 패턴은 여러 비동기 함수들을 쉽게 관리할 수 있게 하는 패턴이다. Promise 객체는 처리에 대한 결과 상태를 반환하고, 작업의 종료시점을 알 수 있게 된다. Promise객체의 상태는 크게 3가지다. Pending - 작업이 완료되지 않은 상태. Resolved - 작업이 성공적으로..
변환하는 이유 유니티에서 Google Play Store에 올리기 위해서는 .aab 파일로 빌드해야한다. 하지만 .aab파일로는 스토어에 올리지 않는한 로컬 기기에 설치해서 테스트 해볼 수 없다. 따라서 .apk로 변환해주는 작업이 필요하다. 변환 하는 방법 아래 Github주소로 들어가서 알맞는 버전을 다운 받는다. 터미널이나 명령프롬포트 창(cmd) 을 이용하여 아래 명령어를 넣어준다. bundletool-all-1.8.0 부분과 AAB파일이름.aab 부분을 알맞게 수정해준다. java -jar "bundletool-all-1.8.0.jar" build-apks —bundle="AAB파일이름.aab" —output="universal.apks" —mode=universal 나온 universal.ap..
문제 float.Parse() 함수를 사용할 때 러시아, 스페인등 지역에서 파싱 에러가 난다. FormatException: Input string was not in a correct format. at System.Number.ParseSingle (System.String value, System.Globalization.NumberStyles options, System.Globalization.NumberFormatInfo numfmt) 원인 C#에는 사용자의 문화권에 따라 , 나 . 를 사이에 사용한다. 만약 사용자의 언어 환경이 다른 숫자 표기법을 사용하는 국가라면 string에서 float나 double로 파싱할때 특정 언어 환경에서만 에러가 난다. 해결 CultureInfo.Invaria..
오랜만에 다시 책을 들고 읽었다. 출퇴근 시간마다 핸드폰 사용을 줄이고 독서를 했는데 정말 시간 가는줄 모르고 읽었다. 독서하는 습관을 다시 잡아준 아주 고마운 책이다. 책의 줄거리 인생은 살아가면서 탐구하는 것이다 이 소설의 주인공 안진진, 하루를 가장 열심히 사시는 어머니와 집을 나간 채 돌아오지 않는 아버지 밑에서 매일같이 조폭 흉내만 내는 남동생을 하나 둔 주인공이다. 그냥저냥 살아가던 주인공은 좋아하는 취미 하나 없이 무미건조한 삶을 살아갔다. 올해 25살을 맞으면서 정신이 번쩍 든 주인공은 자신의 현재 삶을 고찰하며 앞으로 자신에게 조금 더 관심을 가지며 전 생애를 걸어서라도 인생을 탐구하며 살아가기로 한다. 어머니의 쌍둥이 이야기 어머니는 일란성 쌍둥이로 태어났다. 같은 날에 태어났고, 같은..
Unity로 게임을 만들다 보면 필연적으로 데이터와 로직이 결합된 상태로 개발하게 된다. 프로젝트가 커질수록 점점 코드는 복잡해지고, 데이터와 로직이 뒤섞여 더 이상 유지보수가 힘든 상황이 이르게 된다. 따라서 데이터(Model)와 로직(Controller)을 분리해주는 패턴으로부터 개발을 시작하는 게 좋다. MVC 패턴 MVC 패턴은 Model과 View, 그리고 둘을 잇는 Controller라는 요소가 들어있는 패턴이다. Model 게임의 데이터가 되는 요소 로직이 아닌 순수 데이터가 들어가야 함 Controller 게임의 핵심 로직들을 담당한다. Model들을 조작하고 업데이트된 Model들을 View에 통지해준다. View 게임 내 외적으로 보이는 모든 요소들이다. Controller에서 받은 데..
문제점 Xcode를 이용해 빌드를 할 때마다 더미 파일들이 어딘가에 생기게 되는데, 이를 지워주지 않을 경우, 용량이 점점 쌓이고 쌓여서 컴퓨터의 용량이 부족하게 됩니다. 해결방법 이 쓰레기 같은 파일들을 일정 주기마다 지워야 하는데, 지우는 경로는 아래의 경로로 가서, 안에 있는 파일들을 모조리 삭제 해주시면 됩니다. ( 경로 아래에 있는 파일들은 지워도 아무 영향을 주지 않습니다. ) Library/Developer/Xcode/Archives Library/Developer/Xcode/DerivedData private/var/folders/2d/../../com.apple.DeveloperTools/All/Xcode/EmbeddedAppDeltas ( .. ← 이건 유저마다 다른 경로입니다. )