목록분류 전체보기 (80)
dev_eun
var block안에 변수를 선언해도 어느곳에서나 사용할 수 있게 된다. 이제는 사용하지 말 것! let을 사용하자! hoisting var 예약어를 이용하여 변수를 선언할 경우 발생한다. 어디에 선언했는지에 상관없이 항상 제일 위로 선언을 끌어올려준다. let mutable 변수를 선언할 때 사용한다. const immutable 데이터 타입을 선언할 때 사용한다. 장점 1. security 2. thread safety : 스레드가 변수에 동시에 접근해서 변경하는 것을 방지 3. reduce human mistakes Variable types 타입이 다이나믹하게 결정된다. number Infinity : 무한대 -Infinity : -무한대 NaN : not a number BigInt 123n s..
html에서 script를 포함할 때 1. 안에 있는 경우 브라우저가 html 파싱을 할 때 blocking 된 후 js파일을 로드한다. 단점 : 만약 파일이 클 경우 웹페이지가 보이지 않을 수 있다. 2. 맨 끝에 있는 경우 파싱이 모두 끝난 후 js 파일을 로드한다. 단점 : 웹사이트가 js에 의존적일 경우(서버 데이터 받아옴, UI 꾸미기 등) fetching하기까지 오래걸릴 수 있다. 3. async js 파일을 병렬로 로드하고 blocking이 되지 않고 파싱을 계속한다. 단점 - 파싱이 끝나기도 전에 js파일이 fetching이 되면 js에서 조작해야 할 DOM 요소가 정의되지 않을 수 있다. - js를 실행할 때 파싱이 blocking이 될 수 있다. - 스크립트가 정의된 순서되로 실행되는 ..
1. Material Theme - 테마 정하기 2. Marterial Icon Theme - 아이콘 테마, 아이콘이 조금 더 생동감 있게 바뀜 3. Preitter - Code formatter - 코드 포멧팅 - ctrl + , 눌러서 setting 창으로 이동 4. Bracket Pari Colorizer - 괄호마다 코드에 색깔을 다르게 줌 5. Indent-rainbow - 들여쓰기 된 부분을 레인보우컬로로 하이라이트 표시 - 코드 읽을 때 도와줌 6. Auto Rename Tag - 앞에 태그를 바꾸면 뒤에 태그를 자동으로 바꿔줌 7. CSS Peek - html에서 css를 금방 찾게해줌 - html에서 커맨드나 컨트롤키를 누른 상태로 클릭하면 정의된 css파일로 이동하게 해줌. 8. HTM..
이번에 제 9회 K-HACKATHON 공모전에 참가하게 되었다. 나는 이제까지 여러 공모전과 해커톤에 참여를 했었고, 그 때마다 아이디어 회의를 진행했었다. 이번에도 어김없이 아이디어 회의를 진행하려는 참에 K-HACKATHON 공모전 예선에서 제공되는 디자인씽킹 교육을 받게 되었다. 이전에도 디자인씽킹에 대한 교육은 조금 받아본 적이 있었지만, 교육 시간이 충분하지 않거나 현장 멘토가 오히려 토론을 방해하는 점때문에 나에게 체화되지 않았었다. 하지만 이번 강의는 팀이 해결해야 할 직접적인 문제가 있고, 영상을 본 후 우리가 단계를 직접 밟으며 실천해야 하고, 혹여 방향이 조금 틀어지더라도 개입하는 멘토가 없기 때문에 팀이 힘을 합쳐 직접 해결해야 했다. 이러한 점이 디자인씽킹의 각 단계에서 나를 더 몰..
유닛테스트 하는 방법 참조 Microsoft.VisualStudio.TestTools.CppUnitTestFramework API - Visual Studio 이 문서에서는 Microsoft 기본 단위 테스트 프레임워크를 기반으로 C++ 단위 테스트를 작성하는 데 사용할 수 있는 CppUnitTestFramework 멤버에 대해 설명합니다. docs.microsoft.com 1. 솔루션에 '기본 단위 테스트 프로젝트' 추가하기 2. 테스트프로젝트의 참조에서 참조 추가를 눌러 테스트할 프로젝트 추가하기 3. 테스트.cpp에 테스할 함수가 있는 파일 include 4. 테스트 함수 작성 결과를 테스트 탐색기에서 확인할 수 있다. 창이 안보인다면 테스트 옵션에서 탐색기 누르거나 Ctrl + E, T 단축키 자..
html, js, css를 코딩을 하다보면 웹을 왔다갔다하면서 새로고침을 하는 게 굉장히 번거로웠다. 찾아보다가 알게된 좋은 vscode 익스텐션이 있다. vscode를 실행 후 익스텐션에서 Live Server 를 검색한다. 설치를 한 후 코드 창에서 우클릭을 하면 Open with Live Server와 Stop Live Server가 생겼다. Open with Live Server를 클릭하면 로컬 웹이 하나 열린다. 이제 코드를 한 번 수정해보자. 그럼 라이브로 웹에 적용이 된다. 새로고침 계속 안해줘도 된다!
루트 노드부터 순회 while (stack.length != 0) { let [current, parent] = stack.pop(); visited[current] = true; for (let child of nodeList[current]) { if (!visited[child]){ // 수행할 일 stack.push([child, current]); } } } 리프 노드부터 순회 while (stack.length != 0) { let [current, parent] = stack.pop(); if (visited[current]) { // 수행할 task continue; } stack.push([current, parent]); visited[current] = true; for (let ch..
코딩테스트 연습 - 모두 0으로 만들기 각 점에 가중치가 부여된 트리가 주어집니다. 당신은 다음 연산을 통하여, 이 트리의 모든 점들의 가중치를 0으로 만들고자 합니다. 임의의 연결된 두 점을 골라서 한쪽은 1 증가시키고, 다른 한 programmers.co.kr 트리이기 때문에 어떠한 노드를 골라도 루트노드가 될 수 있다. 리프 노드부터 시작해서 bottom-up으로 루트까지 올라가면 되겠다고 생각했었다. 그러려면 부모 노드가 누구인지 알아야 하는데, 그렇게 할 필요가 없었다. 자식 노드의 순서가 중요하지 않기 때문에 자식 노드의 수만 세고 있으면 되었던 것. 그래서 리프 노드부터 시작해서 자신과 각 부모 노드의 weight를 수정하는 방식으로 진행했다. 루트(0번 노드)에서 시작하는 dfs, bfs로..