일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 백준 1967번 트리의 지름 G4 자바
- append
- StringTokenizer
- 백준 8979번 올림픽 S5 자바
- 백준 1600번 말이 되고픈 원숭이
- 프로그래머스 java
- 서브모듈 yml
- 전위 중위 후위
- replace()
- 백준 11725번 트리의 부모 찾기
- StringBuilder
- 프로그래머스
- 백준 2589번 보물섬 G5
- map
- hash
- 백준 2206번 벽 부수고 이동하기 G3
- Stack
- 스프링 on-profile
- 백준 2660번 회장뽑기 G5
- 코틀린기초
- HashSet
- 포인트 컷
- toUpperCase
- 프로그래머스 자바
- 스프링 다중프로필
- Java
- 백준 1240번 노드사이의 거리
- kotlin
- dp
- HashMap
- Today
- Total
목록분류 전체보기 (141)
말하는 컴공감자의 텃밭
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/OkPVa/btsEif4t1C2/5oazNhiPumFgmxNO4P4r8K/img.png)
State와 Props ? - State 부모 컴포넌트에서 자녀 컴포터는로 데이터를 보내는게 아니라 해당 컴포넌트 내부에서 데이터를 전달하고자 할때 사용. ex) 검색창에서 글을 입력할때 글이 변하는것은 state를 변경시킨다. State는 변경가능하다. State가 변하면 re-render된다. state = { message : '', attachFile : undefined, openMenu : false, }; - Props 프로퍼티 Properties의 줄임말로 상속하는 부모 컴포넌트로부터 자녀 컴포넌트에 데이터 등을 전달하는 방법이다. 읽기 전용으로 자녀 컴포넌트에서는 변하지 않는다. 변경하고자 한다면 부모 컴포넌트에서 state를 변경시켜주어야 한다. A 부모 컴포넌트 state = { A ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bhlHo3/btsDQ5CtWnH/4Hke5G7LNnl0IxKdotXLr1/img.png)
오버로딩 동일한 이름에 매개 변수만 다른 여러 함수를 만드는 것을 함수의 오버로딩이라고 한다. 바로 예제로 정리해보자 예제 1 add 라는 이름의 함수에 하나는 string, 하나는 number이다. function add(a: any, b: any): any 를 통해 오버라이딩 해보자. function add(a: string, b: string): string; function add(a: number, b: number): number; function add(a: any, b: any): any { return a + b; } add("hello", "world"); add(1, 1); 만약 오버로딩되지 않은 값을 넣는다면? 예제 2 날짜를 만드는 Date 객체를 만드는 두가지를 오버로딩 하려한다..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/E715I/btsDNsZqgxI/vrv7C9DVIFIOTOvZ0s1bbk/img.png)
호출 시그니처 호출 시그니처란 함수의 매개변수와 반환 값의 타입을 모두 type으로 미리 선언하는 것이다. 장점은 아래와 같다. 오버로딩: TypeScript는 메서드 오버로딩을 지원하므로 각각 다른 매개 변수 유형을 사용하여 단일 함수에 대해 여러 호출 서명을 정의할 수 있다. 이를 통해 함수는 다양한 유형의 입력을 처리할 수 있어 함수 사용 방법에 유연성을 제공한다. 인터페이스 구현: 인터페이스를 사용하여 TypeScript에서 호출 시그니처를 정의하면 코드 전체에 특정 함수 형태를 적용할 수 있는 방법이다. 구조화되고 재사용 가능하며, 유연한 방법이 제공되어 유형 안전성, 가독성 및 유지 관리성이 향상된다. 또한 객체 지향 디자인 원칙에 잘 맞으며 외부 코드를 사용하여 테스트하고 작업하는 것이 보다..
타입 스크립트의 추가 제공 타입이 존재한다. 기존에 number, boolean, string, null 등등 익숙한 명칭의 타입은 알고있었으나 Tuple, Enum, Any, Void, Never, Union 같은 특수한 타입이 있어 정리한다. Tuple : 명시된 타입만 사용가능한 타입. 배열을 보다 특수한 형태로 사용할 수 있게해주고, 아이템 순서를 정해 명시된 타입만 사용 가능하게 한다. var empId: number = 1; var empName: string = "Steve"; // 튜플 타입의 변수 선언 var employee: [number, string] = [1, "Steve"]; var person: [number, string, boolean] = [1, "Steve", true]..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/woLaU/btsDARR2XPC/9ATB1JGAzqzDfgGOuXiaz0/img.png)
사고싶은 카드의 개수가 주어지고, 이 카드를 가장 비싸게 사는 방식이다. 어떻게보면 베낭문제 같다. 단순하게 작은 카드뭉치부터 구매하면서 최대값을 찾아주면 되는 문제다. 처음 문제를 볼때는 공약수를 따져서 해야하나.. 했는데 간단하게 풀리는 문제였다. HTML 삽입 미리보기할 수 없는 소스
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cbcSXd/btsDBs4xn6s/lMs1lTplcDhMOgCPFoMcsk/img.png)
GitHub Finder을 만드는 과제가 있어 진행하던 중 Git Oauth이 필요해서 사용법을 정리한다. OAuth application 등록하고 client_id 랑 client_secret 값을 알아내야했다. // 링크 register GitHub: Let’s build from here GitHub is where over 100 million developers shape the future of software, together. Contribute to the open source community, manage your Git repositories, review code like a pro, track bugs and fea... github.com 홈페이지 URL 이랑 콜백 URL을 작..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cLZYCj/btsDAgX2RIn/wiYyT8Px3wQ861ZdptOve1/img.jpg)
디자인 패턴? 소프트웨어 설계에서 재사용을 위한 목적으로 설계된 디자인으로 다양한 상황에서 문제를 해결하는 방법에 대한 설명, 또는 템플릿 이라고 할 수 있다. 싱글톤 싱글톤 패턴은 특정 클래스의 인스턴스를 1개만 생성하는 디자인 패턴이다. 생성자를 통해서 여러 번 호출이 되더라도 인스턴스를 새로 생성하지 않고 최초 호출 시에 만들어두었던 인스턴스를 재활용하는 패턴이다. 메모리 효율에 장점이 있는 디자인 패턴이다. 자바스크립트 예시 let instance; // 하나의 인스턴스만 존재하도록 로직 작성 class Counter { constructor() { // 이미 인스턴스가 존재하는경우 if (instance) { throw new Error("하나의 인스턴스만 생성 가능합니다"); } this.co..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/c2zy9S/btsDuRLdHSK/n5QKCaX56mJzqr75hibvyK/img.png)
~/Desktop/원하는폴더경로 $ git remote add -f origin https://github.com/khv9786/for_study_Algorithm.git 많은 사람들과 github를 사용할때 특정 폴더만 가져오고 싶을때가 종종 생겼다. sparseCheckout 기능을 정리하고자 한다. 참고 : https://git-scm.com/docs/git-sparse-checkout Git - git-sparse-checkout Documentation If your repository contains one or more submodules, then submodules are populated based on interactions with the git submodule command. S..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/qeetl/btsDuw7Tznl/36Eua9xNFF6uIRLxFsivsK/img.jpg)
단순 구현문제이다. 다만 어이없게 실수해서 1시간 반을 헤맸다... 열받넹 ^ 0, 데기 -> 1 큐로 사람의 위치를 구현해줬다. 물론 % 연산으로도 가능하다. HTML 삽입 미리보기할 수 없는 소스 % 연산으로 사람 확인 HTML 삽입 미리보기할 수 없는 소스
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cVxVIe/btsC4rrGfRM/BlyCdpWbh9N1bTIqxVuiHK/img.jpg)
잠깐 안쓴다고 그새 까먹었네.. 이미 스터디용 레파지토리가 있는 가정하에 정리합니다... 스터디 하시는분들 화이팅 ༼ つ ◕_◕ ༽つ 먼저 git의 간단한 흐름입니다. 작업 디렉토리(Working Directory): 여기서 파일을 생성, 편집, 삭제하는 등의 작업을 수행합니다. 이 단계에서의 변경 사항은 아직 Git에 의해 추적되지 않습니다. 준비 영역(Staging Area): 작업 디렉토리에서 변경한 파일 중 Git에 커밋하기를 원하는 파일을 선택하여 준비 영역에 추가합니다. 이는 git add 명령어로 수행됩니다. git add [파일명]을 사용하여 개별 파일을 추가하거나, git add . 를 사용하여 모든 변경 사항을 추가할 수 있습니다. 커밋(Commit): 준비 영역에 추가된 변경 사항을 ..