Angular냐 React냐 그것이 문제로다... 최근 Angular를 배우고 규모가 작은 실무에 도입해서 사용해보고 있는중이다.Two-way data binding, directive, route, multi-platform support, modular, typescript 등 수 많은 기능(함정)과 Maintainer 가 Google 이라는 점에서 아무 의심없이 시작하였는데... Problem검색의 어려움Angular를 키워드로 검색하는경우 AngularJS에 대한 결과가 대부분이며, Angular 2로 검색을 해도 AngularJS에 관련된 결과가 많이 섞여있는 모습을 보여준다.Reference가 부족하다.Learning curve가 높은 프레임 워크 답게 관련 자료가 많을 것이라는 예상과는 달리..
IntroPython 3.6 부터 제공하는 os.scandir 기능 system call 과 win32의 기능을 토대로 만들었기 때문에 속도가 어마어마 하게 빠르다. (os.walk 보다 2배~20배 빠르다.) 필자도 빨라봐야 얼마나 빠르겠어 하고 사용해봤는데 결과는... 놀랍다.. 기존에 os.walk 혹은 os.walk기반의 listdir을 사용하여 기능을 구현한 부분이 있으면 빠르게 마이그레이션을 하는것을 추천한다.Snippet txt_files = [entry for entry in os.scandir(dir) if entry.name.endswith('txt')] #with extension dirs = [entry for entry in os.scandir(dir) if entry.is_dir..
Robocopy?Robocopy 혹은 "Robust File Copy"라고 불리며 현재 기본적으로 Windows에 포함되어있는 cmd utillity이다.파일 관련 기능들을 제공해주며(Copy, Move) 이에 따른 다양한 옵션들도 포함되어있기 때문에 대용량 파일 처리에 있어서 사용하기 편리하다. 기본적 GUI환경에서의 파일 처리도 굉장히 정교하게 되어있으나 여러가지 불필요한 기능들(calculate time, safety file processing...)이 함께 진행되기 때문에 속도는 느릴 수 밖에없다.이 때 Robocopy를 사용하면 좀 더 효율적으로 작업을 진행 할 수 있다.아래는 본인이 사용했었던 파일이동(복사X) 커맨드 예제이다.약 1TB정도의 데이터셋을 옮기는데 사용했으며 일반적인 방식으로(..
IntroKotlin으로 작업 중 문득 Sequence와 Iterator에 대한 구체적인 차이점에 대해 의문이 생겨서 포스팅.Sequence와 Iterator둘다 kotlin에서 제공하는 interface이며 많은 extension이 구현되어있다.다만 sequence의 경우 kotlin-stdlib에 포함되어있는 최상위 interface이며 iterator의 경우 kotlin.collections에 포함되어 구현되어져 있다. 다만, 대부분의 extension이 함께 사용되어지며 표면상으로는 큰 차이점을 확인 할 수 없다.Sequence vs Iterator앞서 언급했듯이 interface상에서의 차이는 크게 찾아볼수 없다.Kotlin Doc을 찾아본 결과 두 기능의 가장 큰 차이는 intermediate..
FileTreeWalkKotlin의 Sequence interface를 구현한 class이며 file traversal에 관련된 기능들을 제공한다. kotlin에서 제공하는 iterator, sequence관련 extension과 함께 사용하면 다양한 원하는기능들을 매우 쉽게 구현할수 있다. 기본적으로 File에대한 extension으로 walk(default : top-down), walkTopDown, walkBottomUp의 형태로 사용가능하다 당연히 DFS(깊이 우선 탐색)의 형태로 구현되어있다. Kotlin extension인 filter를 사용해서 구현한 간단한 예제 2가지를 구현해 보았으며 이외에도 손쉽게 원하는 기능을 구현할 수 있을 것이다. Example - root 폴더 내의 모든 디렉..
Introduction2015년도 부터 Kotlin 공부해야지 생각만하다가 시간이 없어(핑계...) 미루고 미루다 이제서야 시작 해보려한다.이미 Google 진영에서 Android에 대한 공식언어로 못밖았고 현존하는 Kotlin에 한계점들에 대한 개선이 이뤄지는데로 (Android Studio가 그랬듯이..) 점진적으로 Java 점유율을 차지 할 것으로 보여진다. 개인적으로 새로운 언어를 공부 할 때 해당언어의 기본문법에 대한 공부이후 책 한권 읽은 후 미니 프로젝트 구현 의 수순으로 하는것에 익숙해져있기에 이번에도 동일하게 진행하며 해당 내용을 정리할 예정이다.What is Kotlin?2011년 친애하는 Jetbrain 형아들이 짠 하고 공개한 언어이며 많은 내부 문법들이 스칼라를 닮아있는것으로 보아..
Explain.문제보기ApproachMerge sort, Heap sort를 활용하여 수를 정렬.본문에서는 Heap sort(MAX Heap)을 구현하여 Heap sort를 구현하였다.Code #include #include void swap(int arr[], int a, int b) { int temp = arr[a]; arr[a] = arr[b]; arr[b] = temp; } void heapfiy(int arr[], int n, int i) { int root = i; int left = i * 2 + 1; int right = i * 2 + 2; if (left < n && arr[root] < arr[left]) { root = left; } if (right < n && arr[root] ..
Explain입력된 int을 bit로 변환하여 출력해주는 코드.int 이외에도 다양한 type에 적용가능.1byte = 8bit 인점을 감안하여 반복문을 생성한뒤반복자(i)를 기준으로 mask생성 후 출력.Code #include #include typedef int TYPE; void display_bit(TYPE x); int main(void) { TYPE input; scanf("%d", &input); display_bit(input); } void display_bit(TYPE x) { int i; for (i = sizeof(x) * 8; i-- > 0;) { if (x & 1
Explain문제보기본 풀이에서는 위 문제에서 결과로 요청한 최소 검은 방의 수 뿐만 아니라 해당결과의 경로까지 출력한다.Approachdijkstra algorithm을 활용하여 풀이하였으며shorter path를 구하기위한 자료구조로써 priority queue를 구현.자세한 내용은 추후 정리.Code #include #include #include typedef struct { int x; int y; int px; int py; int value; } heapNode; typedef struct { heapNode* heap; int size; } PQ; void insert(heapNode aNode, heapNode* heap, int size) { int idx; heapNode tmp; i..
- Total
- Today
- Yesterday
- algorithm
- 도메인
- 비트
- syntax highlighting
- 안드로이드
- mysql
- Matrix
- 삼항연산자
- Android
- Kotlin
- DNS
- 비트연산자
- Bit
- mathjax
- highlightjs
- 비트마스크
- 수식
- Highlighter
- python
- 행렬
- robocopy
- Math
- C
- 알고리즘
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |