분류 전체보기
-
Flutter layoutFlutter 2022. 10. 11. 11:05
Flutter 레이아웃 메커니즘의 핵심은 위젯입니다. Flutter에서는 거의 모든 것이 위젯이고 심지어 레이아웃 모델도 위젯이죠. Flutter 앱 내에서 볼 수 있는 이미지, 아이콘, 글자 모두 위젯입니다. 하지만 row, column, grid 같이 볼 수 없는 위젯들도 있는데요. 이들은 보이는 위젯들을 제어하고, 제한하며, 정렬시켜줍니다. Container 자식 위젯들을 커스터마이징할 수 있는 위젯 클래스 여백, 간격, 테두리 또는 배경색을 추가하고 싶을 때 사용 Icon의 색상 - color 속성 폰트, 색상, 굵기 - Text.style 속성 Layout widgets Single-child layout widgets Align Align class - widgets library - Dart..
-
push vs concat vs for loopJavaScript 2022. 9. 16. 18:25
you're adding a few elements to a large array → push(...b) is very fast you're adding many elements to a large array → concat is slightly faster than a loop you're adding many elements to a small array → concat is much faster than a loop you're usually adding only a few elements to any size array → loops are about as fast as the limited methods for small additions, but will never throw an except..
-
[React Navigation v6] TS2339: Property '..' does not exist on type 'Readonly<{.. } | {.. }>'Troubleshooting 2022. 9. 13. 16:06
중첩된 네비게이터의 루트의 파라미터를 받아올 때 타입 에러가 발생했다. CompositeScreenProps를 잘못 사용한 줄로만 알고 여러가지 방법을 시도를 했으나,, 문제 원인은 한 네비게이터의 ParamList를 작성할 때 아래와 같이 작성한 탓이었다. export type ParamList = { profile: { writingNo: number } | { profileNo: number }; } 아래는 React Navigation 공식 문서 내의 Type checking with Typescript 중 해당 내용을 발췌해 온 것이다. Specifying undefined means that the route doesn't have params. A union type with undefine..
-
자료구조와 알고리즘, 시간복잡도/공간복잡도 (Big O)JavaScript 2022. 9. 13. 08:15
Big-O란? 알고리즘의 효율성을 표기해주는 표기법 시간 복잡도: 알고리즘의 시간 효율성 공간 복잡도: 알고리즘의 공간(메모리) 효율성 1. O(1) : 스택에서 Push, Pop 2. O(log n) : 이진트리 3. O(n) : for 문 4. O(n log n) : 퀵 정렬(quick sort), 병합정렬(merge sort), 힙 정렬(heap Sort) 5. O(n²): 이중 for 문, 삽입정렬(insertion sort), 거품정렬(bubble sort), 선택정렬(selection sort) 6. O(2ⁿ) : 피보나치 수열 참고: https://noahlogs.tistory.com/27 빅오 표기법 (big-O notation) 이란 컴퓨터 과학(Computer Science) 에서 알고..
-
Flutter와 DartFront-end 2022. 9. 6. 12:14
Dart 구글이 멀티 플랫폼 상에서 동작되도록 하는 앱을 위해 디자인된 프로그래밍 언어 C언어의 문법과 거의 같으며 Java, C#, Javascript와 같은 기능적 스트럭처를 추가한 언어 웹, 서버, 모바일 앱 개발이 가능한 확장성 있는 오픈 소스 프로그래밍 언어 제공 AOT를 통해 네이티브로 컴파일되는 C 방식의 구문을 사용하는 객체 지향 단일 상속 언어를 제공 자바스크립트로 변환(transcompile) 가능 인터페이스와 추상 클래스 지원 JS vs Dart 진입점 JS에는 진입점 역할을 하는 함수가 미리 정의되어 있지 않다. 직접 지정해서 사용한다. Dart에서는 최상단에 앱의 진입점인 main() 함수가 반드시 있어야 한다. 콘솔 출력 // Javascript console.log('Hello..
-
React Native의 작동 원리React-Native 2022. 9. 6. 11:55
Native Treads UI를 생성하는 부분 Android - Java/Kotlin iOS - Objective-C/Swift JS Thread JS 코드를 통해 비즈니스 로직들이 실행되고 뷰를 언제, 어떻게 표시할지 실행되는 부분 Bridge Native Threads(ex. 클라이언트)와 JS Thread(ex. 서버)가 소통하는 수단 각 부분에서 전달되는 정보는 JSONN object 형태로 변환되어 전달 병목현상이 가장 많이 생기는 부분 (= 앱 성능 향상을 위해서는 bridge를 건너는 횟수를 최소한으로 해야함) 앱 실행 과정 1. Native Threads 실행 -> Native Threads는 JS Thread를 실행시키고 JS Bundle을 로드한다. 2. JS Thread가 실행되면서 ..
-
Vim (ideaVim) 단축키 정리IDE 2022. 8. 29. 17:28
plugin 설치 Settings > Plugins > marketplace에서 vim 또는 ideavim 검색 - install 단축키 기본 이동 h : 왼쪽으로 이동 j : 아래쪽으로 이동 k : 위쪽으로 이동 l : 오른쪽으로 이동 빠른 이동 b : 앞 단어 w : 다음 단어 0 : 줄 처음으로 이동 $ : 줄 끝으로 이동 gg : 맨 처음으로 이동 G : 맨 마지막으로 이동 { : 문단 시작 } : 문단 끝 복사 & 붙여넣기 y : 복사 p : 붙여넣기 yy : 줄 복사 삭제 (vim에서는 삭제를 하면 vim 클립보드에 복사가 된다.) x : 커서에 해당하는 글자 삭제 dd : 줄 삭제 dw, db : 단어 삭제 (커서 위치가 다름) cw, cb : 단어 삭제하고 바로 편집 알면 편한것 u : 실..