All
[Gradle] Android Studio & Unity Gradle version
[Gradle] Android Studio & Unity Gradle version
2020.11.17Android Studio 일반적으로 사용되고 있는 빌드 환경인 Android Studio에서의 Gradle은 Android Studio는 Gradle을 기반으로 빌드한다. Android Studio에서는 Android를 위해 기능이 추가된 Android Gradle Plugin이라는 라이브러리를 사용한다. Android Gradle Plugin은 Gradle에 의존성을 가지기 때문에 서로 호환되는 버전을 사용해야 한다. Gradle version과 Android Gradle Plugin의 정의 Gradle version: gradle-wrapper.properties파일의 distributionUrl distributionUrl=https\://services.gradle.org/distribution..
[C++ 백준] 1712 손익분기점
[C++ 백준] 1712 손익분기점
2020.11.04블로그에 올리는 모든 문제 풀이는 깃허브에 올려져 있습니다. 문제 설명 A의 고정비용과 1대의 노트북을 생산하는데 드는 가변비용 B, 한대 판매했을 때의 가격 C가 주어졌을 때 손익분기점을 구하는 프로그램을 작성하시오. 손익분기점(Break-Even Point): 최초로 총 수입이 총비용보다 많아져 이익이 발생하는 지점 첫 번째 줄에 손익분기점을 출력. 손익분기점이 존재하지 않으면 -1 출력 풀이 전략 손익분기점이 존재하지 않는 상황에 대한 판별 포인트는 얼만큼 이익이 나서 기본비용을 메꾸느냐 이다. 이를 식으로 계산하면 기본비용/(판매비용-제작비용)이라고 할 수 있다. 손익분기점을 넘겨야 하기 때문에 +1 함 소스 코드 #include using namespace std; int main() { int..
[Mac] XCode에서 dSYM(디버그 심볼) Symbolicate 하는법
[Mac] XCode에서 dSYM(디버그 심볼) Symbolicate 하는법
2020.11.04IOS기기에서 앱 크래쉬 로그를 확인해야 했다. 첫 번째로 찾은 방법으로 Xcode에서 상단 탭 Window > Organizer > Archives의 오른쪽의 Download Debug Symbols을 다운하는 방법이 있다고 했는데, 이건 활성화가 안되어서 해보지 못했다. 결과적으로 문제가 발생한 Xcode > Window > Device and Simulators 내부의 crash 로그 우클릭 > re-symbolicate 해서 해결했다. crash 로그를 re-symbolicate 하기 위해서는 symbolicate전 다운로드한 크래쉬 파일과 라이브러리> Developer> Xcode> DerivedData> app> Build> Products> Release 내부의 dSYM파일과 앱, 그리고 P..
[Mac] 유니티 스크립트로 Xcode 설정하기
[Mac] 유니티 스크립트로 Xcode 설정하기
2020.10.18이용목적 XcodeAPI를 이용하여 빌드 후 Xcode 설정을 자동화하기 위해서 사용한다. 자동화 항목 빌드 설정 편집 프레임 워크의 추가 컴파일 플래그의 설정 info.plist 설정 PostProcessBuild(N) 빌드 후 호출되는 콜백 함수 유니티 내에 있는 특정파일(ex.특정 정보를 외부에서 수정할 수 있도록 빼놓은 데이터 텍스트)을 빌드 후에도 사라지지 않도록 한다. 0이 내부에서 쓰이는 order이므로 1 이상을 지정한다. ※ 이 스크립트 파일은 macOS에 설치된 유니티 에디터를 통해 실행되므로 반드시 Editor 폴더 아래에 두어야 한다. using System.Collections.Generic; using UnityEngine; using UnityEditor; using Unity..
한 달의 결과.
한 달의 결과.
2020.10.07드디어 찍었다!!! 롤 플레티넘!!!!ㅋㅋㅋㅋㅋ 만족할 만큼 찍었으니 이제 다시 시작 :)
[C# 8.0] 널 병합 할당자
[C# 8.0] 널 병합 할당자
2020.08.27널 병합 할당자 C# 8.0에서 null 병합 할당 연산자 ??= 가 도입되었다. ??= 연산자는 앞의 변수가 null 일 경우 뒤에 오는 피연산자의 값을 가져와 앞의 변수에 할당한다. 이때, 왼쪽 피연산자를 null이 아니라고 평가하면 ??= 연산자는 오른쪽 피연산자를 평가하지 않는다. 변경 전 if (list == null) { list = new List(); } 변경 후 static List AddData(List list, int? a, int? b) { // 널 병합 연산자 list ??= new List(); list.Add(a ??= 1); list.Add(b ??= 2); return list; } 널 병합 연산자와 널 병합 할당자는 다음과 같이 사용 할 수 있다. int? a = nul..
[C# 6.0] 널 조건 연산자 (Null-conditional operator)
[C# 6.0] 널 조건 연산자 (Null-conditional operator)
2020.08.27널 조건 연산자 (Null-conditional operator) C# 6.0 이상에서는 연산자 하나로 깔끔하게 해결할 수 있다. (= 널조건 연산자) ? 널 조건 연산자는 ? 앞에 있는 객체가 Null인지 체크해서 Null이면 그냥 Null을 리턴하고, 그렇지 않으면 ? 다음의 속성이나 메서드를 실행한다. 하나하나 if문으로 null체크를 할 필요가 없이 축약해서 사용할 수 있어지는 것이다. 문법적인 측면에서 ? 다음에 일반적으로 속성이나 메서드가 오기 때문에 ?. 와 같이 표현되지만, 만약 인덱서 혹은 배열 요소 등을 접근할 경우는 ?[] 와 같이 표현될 수도 있다. 예시 // rows가 NULL이면 cnt 도 NULL // rows가 NULL이 아니면 cnt는 실제 rows 갯수 int? cnt =..
[Mac] SVN 및 SvnX 설치
[Mac] SVN 및 SvnX 설치
2020.08.25SVN(Subversion)이란? 형상관리/소스 관리 툴이다. ※형상관리란 소스코드뿐 아니라 개발환경, 빌드 구조 등 전반적인 환경 전반적인 내역에 대한 관리 체계를 정의하고 있다. 즉, 하나의 서버에서 버전이나 소스를 쉽게 관리할 수 있게 도와주는 툴. 맥에서 설치는 homebrew를 이용하면 쉽다. homebrew를 설치 후, 터미널에서 brew install subversion 입력하면 설치 완료!! 하지만 저건 GUI가 없기 때문에 좀 더 편하고 직관적인 사용을 위해 SvnX도 깔기로 한다. 물론 다른 GUI툴들도 있기때문에 본인에게 맞는 것을 사용하면 된다. 명령어는 brew cask install svnx 이고, 만약 설치 후 안된다면 svnx의 세팅에 들어가서 svn바이너리 경로를 homeb..
[Mac] Homebrew와 Cask 설치 및 사용법
[Mac] Homebrew와 Cask 설치 및 사용법
2020.08.24Homebrew란? Homebrew를 통해 프로그램을 설치&삭제하고 관리할 수 있도록 편하게 만들어 둔 패키지 관리 시스템이다. 즉, Mac OS를 위한 패키지 관리자!! 맥을 처음에는 그냥 쓰다가 저번 OS 업데이트 및 포맷 이후에 homebrew를 사용하기 시작했는데, 사용하는 게 프로그램 관리가 쉽더라. 설치하려면 터미널을 키고 아래의 명령어를 넣어준다. /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)" 이후, Password 입력 창이 나오면 맥북 패스워드 입력 후 확인해주면 된다. ※ Password 입력 시 아무런 표시도 안뜨니 비밀번호 치고 엔터 누르면 된다. 설치가 ..
[C++ 백준] 10809 알파벳 찾기
[C++ 백준] 10809 알파벳 찾기
2020.08.23블로그에 올리는 모든 문제 풀이는 깃허브에 올려져 있습니다. 문제 설명 알파벳 소문자로만 이루어진 단어 S가 주어진다. 단어의 길이는 100을 넘지 않으며, 알파벳 소문자로만 이루어져 있다. 각각의 알파벳에 대해서, 단어에 포함되어 있는 경우에는 처음 등장하는 위치를, 포함되어 있지 않은 경우에는 -1을 출력하는 프로그램을 작성하시오. 풀이 전략 알파벳은 모두 소문자로 이루어져 있기에 a의 아스키코드 값을 기준으로 잡은 뒤 계산했다. 입력값을 아스키코드로 바꿔 해당 문자가 몇 번째의 알파벳인지 확인했다. 입력값-기준값 = a-z에서 해당 문자의 위치 string에서 해당 문자의 인덱스 값이 결과의 값이 되게 구현했다. 소스 코드 #include #include using namespace std; int..
[C++ 백준] 10989 수 정렬하기 3
[C++ 백준] 10989 수 정렬하기 3
2020.07.26블로그에 올리는 모든 문제 풀이는 깃허브에 올려져 있습니다. 문제 설명 N(1 n; int arr[ 10001 ] = { 0 }; for ( int i = 0; i > x; arr[ x ] += 1; } for ( int i = 0; i < 10001; i++ ) { if ( arr[ i ] == 0 ) continue; for ( int j = 0; j < arr[ i ]; j++ ) { cout
[C++ 백준] 2751 수 정렬하기 2
[C++ 백준] 2751 수 정렬하기 2
2020.07.22블로그에 올리는 모든 문제 풀이는 깃허브에 올려져 있습니다. 문제 설명 첫째 줄에 수의 개수 N(1 n; vector vec; for ( int i = 0; i > x; vec.push_back( x ); } sort( vec.begin(), vec.end() ); for ( int x : vec ) { cout