[JavaScript] The Modern JavaScript Tutorial - (1) An Introduction to JavaScript
2021. 4. 2. 21:30
JavaScript/The Modern Tutorial JS
An Introduction to JavaScript JavaScript란? 자바스크립트에서는 프로그램을 스크립트라고 부른다. 이 스크립트는 웹 페이지의 HTML에 맞게 작성되었고, 페이지를 로딩할 때 자동으로 실행된다. 스크립트는 특별한 준비나 컴파일 과정 없이 일반 텍스트(plain text)처럼 제공되고, 실행된다. 자바스크립트는 브라우저에서만 아니라 서버, 나아가서는 자바스크립트 엔진이라고 불리는 프로그램이 있는 어떤 장치에서든 실행이 가능하다. 엔진 동작 과정 엔진(브라우저라면 내장 엔진)이 스크립트를 읽는다. (parse) 기계어로 스크립트를 변환한다. (compile) 머신이 코드를 실행한다. 기계어로 전환되었기 때문에 속도가 빠르다. 엔진은 프로세스 각 단계마다 최적화를 진행한다. 브라우저..
[C++] 모던 C++로 배우는 함수형 프로그래밍 - (1-3) 람다 표현식
2021. 4. 1. 22:30
C++/모던 C++로 배우는 함수형 프로그래밍
간단한 함수를 람다로 표현하기 람다 표현식: 함수의 익명 표기법. 함수형 프로그래밍에서 일급 함수(first class function)와 순수 함수(pure function)를 만들 때 유용하다. [...] (...) {...} [] - 캡처 목록(capturing list) 람다 표현식 바깥의 변수를 람다 본문에서 어떻게 접근하는지를 나타낸다. 람다 표현식의 시작을 나타낸다. 캡처 목록에 &를 사용하면 바깥 범위에 있는 변수를 참조로 캡처하고, =를 쓰면 값으로 캡처한다. () - 매개변수 목록(parameter list) {} - 본문 for_each( begin(vehicles), end(vehicles), [](const Vehicle &vehicle) { cout
[C++] 모던 C++로 배우는 함수형 프로그래밍 - (1-2) C++ 표준 라이브러리 구현 살펴보기
2021. 3. 31. 22:48
C++/모던 C++로 배우는 함수형 프로그래밍
컨테이너 안에 객체 배치하기 컨테이너: 다른 객체를 저장하고, 이 객체가 사용하는 메모리를 관리한다. std::array - 동일한 데이터 타입의 객체를 저장하고 선형으로 배치하는 순차 컨테이너 // 10개의 정수로 array를 초기화한다. std::array arr = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; // array의 각 요소를 출력한다. for (auto a : arr) std::cout
[C++] 모던 C++로 배우는 함수형 프로그래밍 - (1-1) 모던 C++의 새로운 기능 익히기
2021. 3. 30. 23:48
C++/모던 C++로 배우는 함수형 프로그래밍
Auto 키워드로 데이터 타입을 자동으로 정의하기 자동 지속 기간(Automatic Storage Duration): 변수가 해당 변수를 정의한 시점에서 생성되고, 코드 블록을 빠져나가면 파괴되는 것 C++11부터는 auto 키워드가 초기화에 선언된 변수의 실제 타입을 추론하기 위해 사용된다. C++14부터는 auto 키워드를 함수에 적용해 후행 반환 타입(Trailing Return Type)을 사용할 수 있다. auto a = 1; auto b = 1.0; auto c = a + b; auto d = { b, c }; std::cout
[TIL] 2021-01-04 ~ 2021-01-10
2021. 1. 10. 18:40
TIL(Today I Learned)
2021-01-04 UE4 github.com/Knabin/Today-I-Learned/blob/master/Unreal%20Engine%204/The%20Ultimate%20Game%20Developer%20Course/004_Editor-Overview.md Knabin/Today-I-Learned Contribute to Knabin/Today-I-Learned development by creating an account on GitHub. github.com 2021-01-05 UE4 github.com/Knabin/Today-I-Learned/blob/master/Unreal%20Engine%204/The%20Ultimate%20Game%20Developer%20Course/005_The-Le..
[TIL] 2021-01-01 ~ 2021-01-03
2021. 1. 3. 22:52
TIL(Today I Learned)
2021-01-01 수학 github.com/Knabin/Today-I-Learned/blob/master/Math/Linear%20Algebra/1-1_Systems-of-Linear-Equations.md Knabin/Today-I-Learned Contribute to Knabin/Today-I-Learned development by creating an account on GitHub. github.com 선형대수학 재미있음! 깃허브로 옮긴 첫날이라 많이 어려웠다. 마크다운은 이제 조금 익숙해졌는데, 깃허브 뷰어에서 지원 안 하는 문법이 있어서 어떻게 할까 하다가 그냥 이미지 첨부 방식으로 변경했다. 음... 뭔가 TIL 자동화하신 분도 보이고, 블로그 형식으로 가도 될 것 같긴 한데, 그렇게 ..
2020년 회고, 그리고 신년 목표
2021. 1. 1. 01:24
중얼중얼
매일같이 학교 다니던 때가 엊그제 같은데, 눈 깜빡할 사이에 졸업장을 받고 정말 바쁘고 치열하게 1년을 살아왔다. 2020년은 정말 열심히 살았고, 또 다사다난한 해였다고 생각한다. 취업 준비 기간도 짧진 않았고, 졸업과 취업 등 중대한 행사들이 많았던 것 같다. 맛있는 치킨🍗과 함께 새로운 해를 맞이하면서 좋았던 일들과 아쉬웠던 일들이 머릿속을 스쳐 지나간다. 그래서 한해를 정산하고, 새해 목표를 작성하면서 마음을 다잡아 보려고 한다. 2020년 회고 12월 말에 종강해서, 2월에 학교를 졸업했다. 한창 코로나가 시작될 때였어서, 졸업장을 받으러 가진 않았다. 동기들도 따로 가지 않는 듯해서 남은 사진도 없다. 이 점은 조금 아쉽기도 하다. 졸업 후에는 혼자 C++이랑 언리얼 엔진 공부를 조금씩 했다...
[TIL] 2020-12-22
2020. 12. 22. 23:47
TIL(Today I Learned)
Unreal Community 언리얼 엔진 포럼 forums.unrealengine.com/ Forum - Unreal Engine Forums Forum Description forums.unrealengine.com 언리얼 프로젝트 템플릿 일부 코드와 애셋이 포함되어 있으며, 이미 결합된 작은 프로젝트. 이를 통해서 어떤 식으로 프로그래밍했는지 그 방식을 살펴볼 수 있다. 프로젝트 세팅 블루프린트로 설정해도 C++ 클래스를 추가하고, C++로 변환할 수 있음. 뷰포트 이동 화살표를 잡은 상태에서 ESC 키를 누르면 바닥으로 내릴 수 있음! 이동(W), 회전(E), 스케일(R) 이동 스냅(격자 모양), 회전 스냅(각도 모양), 스케일 스냅(화살표)
[TIL] 2020-12-08
2020. 12. 8. 23:36
TIL(Today I Learned)
boost::filesystem::remove_all 오늘은 열심히 디버깅해서 오류 조건을 찾아냈다. 처음에는 파일이 너무 커서 바로 안 지워지는 줄 알았지만, 특정 폴더에서만 오류가 발생했다. 대소문자 구분도 의심이 갔지만, OS 단계에서 처리하는 거라서 내가 어떻게 할 수는 없을 것 같았다. (빡세게 비교하면 되는 거긴 한데... 굳이? 싶다...) 지우려고 하는 폴더와 이름이 같은 폴더가 로컬에 이미 존재할 때, 그리고 그 폴더가 비어 있지 않을 떄 remove로 삭제할 수 없는 에러가 발생했다. ERROR_DIR_NOT_EMPTY 폴더를 delete 처리해야 한다는 건 그 안에 있는 정보 또한 전부 지우는 것과 마찬가지이기 때문에 boost::filesystem::remove_all을 이용하여 폴..
[TIL] 2020-12-07
2020. 12. 7. 23:57
TIL(Today I Learned)
QFile 파일을 쓰거나 읽기 위한 인터페이스를 제공하는 클래스. 텍스트와 바이너리 파일, 리소스를 읽거나 쓸 수 있는 입출력 장치. QTextStream이나 QDataStream과 사용하면 좀 더 편리하게 사용할 수 있다. 일반적으로 생성자를 통해 파일 이름을 넘기지만, setFileName() 함수를 사용해 추후에 따로 설정해 줄 수도 있다. 운영체제에 상관없이 '\'가 아닌 '/'를 사용함에 유의한다! exists() 함수를 사용하여 파일이 있는지 체크할 수 있고, remove()로 파일을 지울 수 있다. open(), close(), flush() 일반적으로 데이터를 읽을 때 QDataStream이나 QTextStream을 사용하지만, QIODevice에 있는 read(), readLine(), ..
[TIL] 2020-12-05
2020. 12. 5. 23:36
TIL(Today I Learned)
Python 다운로드 www.python.org/downloads/windows Download Python The official home of the Python Programming Language www.python.org 변수 수 다루기 파이썬의 기본적인 수: 정수, 실수, 복소수 오늘 한 게 없어서 올리기 부끄럽다... ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 내일부터 다시 힘내 보는 걸로!
[TIL] 2020-12-04
2020. 12. 4. 23:47
TIL(Today I Learned)
CEF(Chrominum Embedded Framework) bitbucket.org/chromiumembedded/cef/src/master/ Bitbucket bitbucket.org REST API 리소스 상태에 대한 표현을 요청자에게 전송함, 주로 HTTP: JSON, HTML, XLT, 일반 텍스트 클라이언트, 서버 및 리소스 구성, 요청이 HTTP를 통해 관리되는 클라이언트-서버 아키텍처 stateless 커뮤니케이션: 요청할 때 클라이언트 정보가 저장되지 않고, 각 요청이 분리(연결되어 있지 않음) 클라이언트-서버 상호 작용을 간소화하는 캐시 가능 데이터 https://meetup.toast.com/posts/92 REST API 제대로 알고 사용하기 : TOAST Meetup REST AP..
[알고리즘 문제] 76. 이항계수(메모이제이션)
2020. 10. 27. 18:33
문제 풀이/알고리즘 문제풀이
코드 #include #include #include using namespace std; int dy[21][21]; int DFS(int n, int r) { if (dy[n][r] > 0) return dy[n][r]; if (r == 0 || n == r) return 1; else return dy[n][r] = DFS(n - 1, r) + DFS(n - 1, r - 1); } int main(void) { int n, r; cin >> n >> r; cout
[알고리즘 문제] 75. 최대 수입 스케쥴(priority_queue 응용문제)
2020. 10. 26. 22:26
문제 풀이/알고리즘 문제풀이
코드 #include #include #include using namespace std; struct Data { int money; int when; Data(int a, int b) : money(a), when(b) {} bool operator b.when; } }; int main(void) { int n, m, d, i, j, res = 0, max = -2147000000; vector T; priority_queue pQ; cin >> n; for (i = 0; i > m >> d; T.emplace_back(Data(m, d)); if (d > max) max = d; } sort(T.begin(), T.e..
[알고리즘 문제] 74. 최소힙(priority_queue : 우선순위 큐)
2020. 10. 25. 22:18
문제 풀이/알고리즘 문제풀이
코드 #include #include #include using namespace std; int main(void) { int input; priority_queue PQ; while (true) { cin >> input; if (input == -1) break; else if (input == 0) { if (PQ.empty()) cout
[알고리즘 문제] 73. 최대힙(priority_queue : 우선순위 큐)
2020. 10. 25. 21:53
문제 풀이/알고리즘 문제풀이
코드 #include #include #include using namespace std; int main(void) { int input; priority_queue PQ; while (true) { cin >> input; if (input == -1) break; else if (input == 0) { if (PQ.empty()) cout
[알고리즘 문제] 72. 공주 구하기(큐 자료구조로 해결)
2020. 10. 25. 21:41
문제 풀이/알고리즘 문제풀이
코드 #include #include #include using namespace std; int main(void) { int n, k, i; cin >> n >> k; queue Q; for (i = 1; i