tpdus4159의 등록된 링크

 tpdus4159로 등록된 네이버 블로그 포스트 수는 29건입니다.

자바스크립트로 계산기 만들기 (feat. 제로초님) [내부링크]

코딩을 시작하면 국룰(?)인 계산기를 제로초님의 강의를 보면서 만들어보았습니다. 순서도 첫번째 순서도 첫번째 순서도 계산기를 생각했을 때 처음 만들어 낸 순서도이다. 비동기식으로 순서도를 구성하는게 익숙하지 않아 동기식 순서도가 만들어졌다. 두번째 순서도 두번째 순서도 두번째 순서도는 비동기식으로 순서도를 만들었습니다. HTML 코드 <input readonly id="operator"> <input readonly type="number" id="result"> <div class="row"> <button id="num-7">7</button> <button id="num-8">8</button> <button id="num-9">9</button> <button id="plus">+</button> </div> <div class="row"> <button id="num-4">4</button> <button id="num-5">5</button> <button id="num-

[린치핀] 당신은 린치핀인가요? [내부링크]

린치핀 - 세스 고딘 래퍼 스윙스가 추천해준 책이기도 하다. 우아한 테크코스가 끝나면서 우울해 하고 있었는데, 멘토이신 포비가 추천해주신 책을 읽어보기로 다짐하고 읽게 되었다. '나는 조직에서 무엇일까' 에 대해 생각하시는 분들에게 추천드리고 싶은 책입니다. 린치핀이란 ? 이 책에서는 린치핀을 조직에서 대체할 수 없는 사람이라고 말하고 있습니다. 일의 능력에서 뛰어난게 아닌 사람과의 커뮤니케이션 능력, 업무 기획과 프로젝트 진행 능력을 키워 일을 하는 사람입니다. 린치핀이 되는 길은 쉽지 않습니다. 책에서 도마뱀뇌라고 일컫는 뇌의 한 부분에서 제자리에 머무르도록, 톱니바퀴가 되도록 나를 조종하고 있습니다. 그 뇌를 이겨내도록 '난 할수있다' 라고 생각하며 나아가야합니다. 우리는 살아가면서 톱니바퀴처럼 살아간다. 나라는 톱니바퀴가 없어지면 다른 톱니바퀴로 채워진다. 내가 톱니바퀴가 아닌 린치핀으로 살려면 어떻게 해야할까? 이 책에 대한 생각 이 책을 읽고 생각해보니 나는 살아가면서 톱

우아한테크코스 5기 4주차 회고 [내부링크]

4주차 미션은 다리 건너기 게임이다. 코수타에서 코치님들이 3주차 미션보다 쉽다고 하셨는데, 어려워서 정말 멘붕이었다 ㅋㅋㅋ 코치님들이 미리 생성해둔 클래스에 코드를 입력해서 사용하는 것이었다. 작성된 코드를 이해하는데에만 많은 시간을 썼던 것 같다. 주말에 일을 가야해, 더 마음이 조급했던 것 같다. 메서드 라인 10줄을 넘지 않도록 해라 3주차에서는 메서드 라인 제한이 15줄이었다. 4주차 미션에서 10줄으로 줄으니, 5줄이 소중하게 느껴졌다. 일단 처음엔 스파게티 코드를 작성했는데 10줄이 넘었다. 라인 수를 줄여야하는데, 중괄호를 라인수에 포함할지 안할지 생각하면서 치졸해지기 시작했다 결론적으로는 10줄 이내로 모든 메서드를 작성했고, 기능별로 메서드를 분리했다. 기능별로 메서드를 정리하면서, 다른 메서드로 변수를 보내는 법을 몰라 불필요한 코드가 작성되었을 것 같아 걱정스럽다. 4주차도 끝났으니 모듈에서 다른 메서드로 변수를 전달하는 법에 대해서 공부를 해봐야겠다. 예외 케

우아한 테크코스 5기 3주차 회고 [내부링크]

3주차 미션은 로또 게임 이었다. 3주차 끝나고 4주차 미션을 빨리 끝내야겠다는 생각에 회고록 작성을 놓쳤지만 지금이라도 기록해 부족한점을 채우고 잊지 않게 기록해두어야겠다. 한 함수가 한가지 일을 하게 한다. (메서드 15라인 제한) 한 함수(메서드)가 한가지 일만 담당하도록 코드를 작성했다. 이렇게 하는 이유는 코드의 재사용성 때문이다. 그리고 이렇게 여러개의 메서드를 생성해서 프로그램을 구조화 할 수 있다. 메서드의 길이는 5~10줄 정도가 적당하다고 한다. 15줄 제한으로는 쉽게 작성했지만 10줄 이내로 작성하려고하면 쉽지 않을 것 같다. 계속 노력해서 10줄 이내로 메서드를 작성하는 클린 코더가 되어야겠다. 내가 만든 코드를 검증하는 테스트 코드를 작성한다. 이번에 프리코스를 하면서 테스트코드를 처음 접해봤다. 처음에는 이게 뭔가 생각했지만 계속 기능을 구현하면 할수록 유용했다. 한번 테스트 코드를 작성하면 프로그램을 수정했을 때 테스트 코드를 건드리지 않고 테스트를 해볼

우아한테크코스 5기 프리코스 2주차 회고 [내부링크]

2주차 미션은 숫자 야구 게임이었다. 이전 1주차 미션은 간단한 문제들을 여러개 풀었다면, 이번에는 한 문제를 푸는 미션이었다. 1주차는 새로운 환경에 적응하느라 어영부영 시간이 지나버렸지만 2주차 미션부터는 회고로 느낀점이나 아쉬웠던 점을 작성해보려한다. 예기치 못한 이유로 테스트에 실패함 테스트 코드로 테스트를 성공하고, 미션 제출을 하니 "예기치 못한 이유로 테스트에 실패함"이라는 문구가 떴다. 테스트 코드에서는 성공해서 이상했다. 새벽까지 문제를 찾으려해도 찾지 못해 한숨자고 일어나서 다시 확인해보았다. 아침에 일어나 슬랙을 보니 PR을 마감하고 다시 PR을 하면 테스트에 성공한다는 말이 있어서 해봐도 계속 실패했다. 문제를 찾아가면서 코드 리팩토링을 진행했더니 갑자기 테스트가 성공되었다. 그 이유를 확인해보니 readLine으로 입력을 시작해놓고 close를 안해서 오류가 발생했었다. 허무한 이유로 시간을 많이 허비했지만, 다음번엔 close도 잊지 않고 작성해야한다는걸 깨

[JavaScript] 콜백 이란? [내부링크]

Callback - 어떠한 이벤트에 의해 호출되는 함수 (나중에 호출할 함수) called at the back 코드들은 현재의 코드가 로딩이 종료되기도 전에 다음 코드로 넘어가버리기 때문에 에러가 발생하는 경우가 있다. 이러한 이유 때문에 콜백 함수로 비동기적 처리가 필요하다. 하지만 꼬리에 꼬리를 무는 비동기 처리가 많아지면 코드가 복잡해지고 콜백 지옥에 빠지게 된다. 이와 같은 콜백 지옥을 해결하기 위해 Promise를 사용할 수 있다. Promise - 제작 코드와 소비 코드를 연결해주는 자바스크립트 객체, 시간이 얼마나 걸리든 상관없이 약속한 결과를 만들어내는 제작 코드가 준비 되었을 때, 모든 소비 코드가 결과를 사용할 수 있도록 해준다. let promise = new Promise(function(resolve, reject){ // 제작 코드 }); executor는 promise의 상태를 둥 중 하나로 변화 시킵니다. * promise는 성공 또는 실패만 합니다.

[CodeUp Java] 1402 : 거꾸로 출력하기 3 [내부링크]

문제 url : 거꾸로 출력하기 3 (codeup.kr) 두 수를 거꾸로 출력하기.. 세 수를 거꾸로 출력하기... 이런 문제들은 쉽게 풀 수 있었다. 이번에는 데이터의 개수가 n개가 들어오고, n개의 데이터를 거꾸로 출력하는 프로그램을 작성하시오. 2. 입력 첫째 줄에 데이터의 개수 n이 입력된다. ( n <= 1,000 ) 둘째 줄에 공백을 기준으로 n개 데이터가 입력된다. 3. 출력 n개의 데이터를 입력의 역순으로 출력한다. 4. 내 풀이 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int n=sc.nextInt(); int[] BackNum = new int[n]; for(int i=1; i<=n; i++) { int arr=sc.nextInt(); BackNum[i-1] = arr; } for(int j

[CodeUp Java] 1093 : [기초-1차원배열] 이상한 출석 번호 부르기1 [내부링크]

문제 url: [기초-1차원배열] 이상한 출석 번호 부르기1(설명) (codeup.kr) 정보 선생님은 수업을 시작하기 전에 이상한 출석을 부른다. 선생님은 출석부를 보고 번호를 부르는데, 학생들의 얼굴과 이름을 빨리 익히기 위해 번호를 무작위(랜덤)으로 부른다. 그리고 얼굴과 이름이 잘 기억되지 않는 학생들은 번호를 여러 번 불러 이름과 얼굴을 빨리 익히려고 하는 것이다. 출석 번호를 n번 무작위로 불렀을 때, 각 번호(1 ~ 23)가 불린 횟수를 각각 출력해보자. 참고 각 번호가 불린 횟수를 기록하고 출력하기 위해 변수 23개를 선언할 수도 있다. 하지만 C언어에서는 같은 이름에 번호를 붙여 사용하는 배열(array)을 사용할 수 있다. 이는 마치 아파트의 동 호수(예를 들어 a동 101호)와 같이 번호를 붙여 집을 구분하는 것과 비슷하다. 예를 들어 a동 101호를 다르게 표현하면 a[101] 과 같은 표현이 가능한 것이다. 이렇게 번호를 붙여 데이터를 저장할 수 있는 변수인

[CodeUp Java] 1361 : 별 계단 만들기 [내부링크]

문제 url: 별 계단 만들기 (codeup.kr) n이 입력되면 n층의 별 계단을 출력하시오. 예) n= 5인 경우, ** ** ** ** ** 2. 입력 계단의 높이 n이 정수로 입력된다.( 1<= n <= 100) 3. 출력 n층의 별 계단을 출력한다.(n이 1일 경우 **을 출력한다.) 4. 내 풀이 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int n=sc.nextInt(); for(int i=1; i<=n;i++) { for (int j=2;j<=i;j++) { System.out.print(" "); } System.out.println("**"); } sc.close(); } }

HTTP 통신 개념 [내부링크]

웹통신 & 프로토콜 인터넷 상에서의 통신 인터넷의 엄격한 규약을 프로토콜이라 함. 2. 웹 프로토콜 종류 Http : Hyper Text Transfer Protocol Https : Secure Hyper Text Transfer Protocol TCP/IP 프로토콜을 가지고 서버와 클라이언트 사이의 파일 전송을 하기 위한 프로토콜 FTP : File Transfer Protocol 파일 전송 프로토콜 Talnet : Terminal Network SSH : Secure Shell 보안된 소켈 통신을 위한 프로토콜 SMTP : Simple Mail Transfer Protocol 기타 프로토콜 IP : Internet Protocol HTTP 프로토콜 Hyper Text Transfer Protocol Hyper Text를 전송하기 위한 프로토콜 Hyper Text란, 웹 문서를 구성하고 있는 언어 , HTML을 말함 HTML Hyper Text Markup Language Hyp

[CodeUp Java] 1093 : [기초-1차원배열] 이상한 출석 번호 부르기1 [내부링크]

문제 url : [기초-1차원배열] 이상한 출석 번호 부르기1(설명) (codeup.kr) 정보 선생님은 수업을 시작하기 전에 이상한 출석을 부른다. 선생님은 출석부를 보고 번호를 부르는데, 학생들의 얼굴과 이름을 빨리 익히기 위해 번호를 무작위(랜덤)으로 부른다. 그리고 얼굴과 이름이 잘 기억되지 않는 학생들은 번호를 여러 번 불러 이름과 얼굴을 빨리 익히려고 하는 것이다. 출석 번호를 n번 무작위로 불렀을 때, 각 번호(1 ~ 23)가 불린 횟수를 각각 출력해보자. 참고 각 번호가 불린 횟수를 기록하고 출력하기 위해 변수 23개를 선언할 수도 있다. 하지만 C언어에서는 같은 이름에 번호를 붙여 사용하는 배열(array)을 사용할 수 있다. 이는 마치 아파트의 동 호수(예를 들어 a동 101호)와 같이 번호를 붙여 집을 구분하는 것과 비슷하다. 예를 들어 a동 101호를 다르게 표현하면 a[101] 과 같은 표현이 가능한 것이다. 이렇게 번호를 붙여 데이터를 저장할 수 있는 변수인

[CodeUp Java] 1361 : 별 계단 만들기 [내부링크]

문제 url : 별 계단 만들기 (codeup.kr) n이 입력되면 n층의 별 계단을 출력하시오. 예) n= 5인 경우, ** ** ** ** ** 2. 입력 계단의 높이 n이 정수로 입력된다.( 1<= n <= 100) 3. 출력 n층의 별 계단을 출력한다.(n이 1일 경우 **을 출력한다.) 4. 내 풀이 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int n=sc.nextInt(); for(int i=1; i<=n;i++) { for (int j=2;j<=i;j++) { System.out.print(" "); } System.out.println("**"); } sc.close(); } }

[CodeUp Java] 1358 : 삼각형 출력하기 5 [내부링크]

문제 url : 삼각형 출력하기 5 (codeup.kr) 어떤 수 n을 입력받으면 다음과 같은 삼각형을 출력한다. 여기서 입력되는 n은 반드시 홀수이다. 2. 입력 3부터 99 까지의 홀수 중 하나가 입력된다. 3. 출력 * *** ***** 4. 내 풀이 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int n=sc.nextInt(); int a=(n/2)+1; for(int i=1; i<=a;i++) { for(int j=a-1;j>=i;j--) { System.out.print(" "); } for(int k=1;k<=2*i-1;k++) { System.out.print("*"); } System.out.println(""); } sc.close(); }

[CodeUp Java] 1357 : 삼각형 출력하기 4 [내부링크]

1. 문제 url : 삼각형 출력하기 4 (codeup.kr) n이 입력되면 다음 삼각형을 출력하시오. 예) n = 4 * ** *** **** *** ** * 2. 입력 n이 입력된다. 3. 출력 예시에 설명된 것과 같은 삼각형을 출력한다. 4. 내 풀이 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int n=sc.nextInt(); for ( int i=1; i<=n;i++) { for(int j=1; j<=i; j++) { System.out.print("*"); } System.out.println(""); } for (int i=1; i<=n; i++) { for(int j=n-1;j>=i;j--) { System.out.print("*"); } System.out.println(""); } sc.clo

[CodeUp Java] 1355 : 삼각형 출력하기 3 [내부링크]

1. 문제 url : 삼각형 출력하기 3 (codeup.kr) 길이 n이 입력되면 다음과 같은 역삼각형을 출력한다. 예) n이 5이면 ***** **** *** ** * 2. 입력 길이 n이 입력된다. 3. 출력 역삼각형을 출력한다. 4. 내 풀이 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int n=sc.nextInt(); for(int i=1; i<=n;i++) { for(int j=2;j<=i;j++) { System.out.print(" "); } for (int k=n;k>=i;k--) { System.out.print("*"); } System.out.println(""); } sc.close(); } }

[CodeUp Java] 1354 : 삼각형 출력하기 2 [내부링크]

문제 url : 삼각형 출력하기 2 (codeup.kr) 길이 n이 입력되면 역삼각형을 출력한다. 예) n이 5이면 ***** **** *** ** * 2. 입력 길이 n이 입력된다. 3. 출력 역삼각형을 출력한다. 4. 내 풀이 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int n=sc.nextInt(); for (int i=1; i<n+1; i++) { for(int j=n; j>=i;j--) { System.out.print("*"); } System.out.println(""); } sc.close(); } }

[CodeUp Java] 1353 : 삼각형 출력하기 1 [내부링크]

문제 url: 삼각형 출력하기 1 (codeup.kr) n이 입력되면 다음과 같은 삼각형을 출력하시오. 예) n 이 5 이면 * ** *** **** ***** 2. 입력 길이 n이 입력된다. 3. 출력 삼각형을 출력한다. 4. 내 풀이 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int n=sc.nextInt(); for(int i=1; i<=n;i++) { for(int j=1;j<=i;j++) { System.out.print("*"); } System.out.println(""); } sc.close(); } }

[CodeUp Java] 1081 : 주사위를 2개 던지면? [내부링크]

문제 url: [기초-종합] 주사위를 2개 던지면?(설명) (codeup.kr) 1부터 n까지, 1부터 m까지 숫자가 적힌 서로 다른 주사위 2개를 던졌을 때 나올 수 있는 모든 경우를 출력해보자. 참고 중첩의 원리... 반복 실행 구조도 조건 실행 구조와 마찬가지로 중첩의 원리가 적용된다. 반복 실행 구조를 중첩하면 원하는 반복 구조를 다양하게 만들어 낼 수 있다. 예시 int i, j; int n=3, m=6; for(i=1; i<=n; i++) { for(j=1; j<=m; j++) { printf("%d %d ", i, j); } } 의 코드는 바깥쪽의 i가 1부터 n까지로 바뀌는 각각의 동안에 안쪽의 j가 1부터 m까지 변하며 출력된다. 중첩 반복되는 코드블록의 내용이 논리적으로 한 개의 단위이기 때문에 코드블록 기호를 생략하면 아래와 같이 작성할 수도 있다. int i, j; int n=3, m=6; for(i=1; i<=n; i++) for(j=1; j<=m; j++)

[CodeUp Java] 1090 : 수 나열하기2 [내부링크]

1. 문제 url : [기초-종합] 수 나열하기2 (codeup.kr) 어떤 규칙에 따라 수를 순서대로 나열한 것을 수열이라고 한다. 예를 들어 2 6 18 54 162 486 ... 은 2부터 시작해 이전에 만든 수에 3을 곱해 다음 수를 만든 수열이다. 이러한 것을 수학에서는 앞뒤 수들의 비율이 같다고 하여 등비(비율이 같다의 한문 말) 수열이라고 한다. 등비 수열을 알게된 영일이는 갑자기 궁금해졌다. "그럼.... 13번째 나오는 수는 뭘까?" 영일이는 프로그램을 만들어 더 큰 수도 자동으로 계산하고 싶어졌다. 시작 값(a), 등비(r), 몇 번째인지를 나타내는 정수(n)가 입력될 때 n번째 수를 출력하는 프로그램을 만들어보자. 2. 입력 시작 값(a), 등비의 값(r), 몇 번째 인지를 나타내는 정수(n)가 공백을 두고 입력된다.(모두 0 ~ 10) 3. 출력 n번째 수를 출력한다. 4. 내 풀이 import java.util.Scanner; public class Main

[CodeUp Java] 1071 : 0 입력될 때까지 무한 출력하기1 [내부링크]

1. 문제 url : [기초-반복실행구조] 0 입력될 때까지 무한 출력하기1(설명) (codeup.kr) 정수가 순서대로 입력된다. -2147483648 ~ +2147483647, 단 개수는 알 수 없다. 0이 아니면 입력된 정수를 출력하고, 0이 입력되면 출력을 중단해보자. while( ), for( ), do~while( ) 등의 반복문을 사용할 수 없다. 참고 goto 명령문을 사용하면 간단한 반복 실행을 만들 수 있다. 반복 실행 부분을 빠져나오기 위해(즉 무한 반복을 방지하기 위해) 반복 실행 되는 도중에 조건을 검사해야 한다. goto 이름: 이 명령은 이름: 이 작성된 곳으로 프로그램의 실행 흐름을 바꾸어 준다. "이름:" 과 같이 콜론(:)이 붙어있는 부분을 이름표(label, 레이블)라고 한다. 레이블은 특별한 선언 없이 사용할 수 있으며 언더바(_)나 영문자로 시작하면 된다. 레이블은 한 단어처럼 공백없이 모두 붙여 써야 한다. switch( ) ... case .

[CodeUp Java] 1172 : 세 수 정렬하기 [내부링크]

1. 문제 url : 세 수 정렬하기 (codeup.kr) 세 수를 오름차순으로 정렬하려고 한다. (낮은 숫자 -&gt; 높은...

[Java] 객체지향 프로그래밍1 [내부링크]

1. 객체지향언어 객체지향언어 : 기존의 프로그래밍 언어에 몇 가지 새로운 규칙을 추가한 보다 발전된 형...

[CodeUp Java] 1164 : 터널 통과하기1 [내부링크]

1.문제 url : 터널 통과하기 1 (codeup.kr) 어떤 차의 높이가 170cm 이다. 이 차는 3개의 터널을 차례대로 ...

[CodeUp Java] 1154 : 큰수 - 작은수 [내부링크]

1.문제 정수 두개가 입력으로 들어오면 큰수 - 작은수의 값을 출력하시오. 2. 입력 3. 출력 4. 내 풀이

[CodeUp Java] 1015 : 실수 입력받아 둘째 자리까지 출력 [내부링크]

1. 문제 url: [기초-입출력] 실수 입력받아 둘째 자리까지 출력하기(설명) (codeup.kr) 실수(float) 1개를 ...

달퐁상점/윤구 씰스티커 랜덤팩 후기 [내부링크]

최근에 다꾸에 맛이 들려서 스티커를 하나 둘씩 모으고 있음 ㅠ 스티커와 마테 값이 많이 들 것 같아 시작...

알리익스프레스 애플워치 스트랩 구매 후기 [내부링크]

알리 익스프레스 애플 워치 스트랩 추천 알리 익스프레스에서 애플워치 스트랩을 구매했다 이전에도 알리 ...

[자료구조와 자료형] 숫자형, 문자열 [내부링크]

16진수, 2진수, 8진수 toString(base) num.toString(base) 메서드는 base 진법으로 num을 표현 후 문자형...

[객체] 생성자 함수, 옵셔널 체이닝 [내부링크]

생성자 함수(constructor function) : new 연산자를 사용하여 함수를 객체화 시킬 수 있는 방법 생성자 함...