[AWS] AWS CLI 설정 및 활용하기
·
DevOps/AWS
개요GCP를 사용하면서 이 글 과 같이 google cloud SDK라는 걸 통해 콘솔에 접근하고 여러 클라우드 서비스를 이용하였다.AWS도 이와 마찬가지로 SDK, CLI(명확하게 말하자면 SDK와 CLI는 다른 것이긴 하다.)를 통해 콘솔에 접근하는 서비스가 있다.이걸 설정하고 AWS 서비스를 이용해보자! 우선 root 계정과 그로부터 admin 권한을 할당 받은 계정이 있다고 가정한다. AWS CLI latest 다운sudo curl "https://s3.amazonaws.com/aws-cli/awscli-bundle.zip" -o "awscli-bundle.zip" 해당 문서는 MacOS 사용자 기준으로 다운 방법을 제시하고 있다. 그냥 위 명령어를 iterm or terminal에 입력해주면 된..
[JAVA] Effective JAVA. 9장 일반적인 프로그래밍 원칙 1편(item 57, 58, 59, 60)
·
언어/JAVA
개요 회사 업무로 진행하는 이펙티브 자바 세미나 자료 내용이다. 책과 블로그를 참고하였으며, 자세한 코드는 여기서 확인할 수 있다. GitHub - cobinding/effective-java-semina: [JAVA] 인턴십 업무로 진행한 Effective-JAVA 세미나 코드 [JAVA] 인턴십 업무로 진행한 Effective-JAVA 세미나 코드. Contribute to cobinding/effective-java-semina development by creating an account on GitHub. github.com 9장은 내용이 많아서 1편과 2편으로 나누어서 포스팅할 예정이다. item 57. 지역변수의 범위를 최소화하라. 코드 가독성과 유지보수성을 위해 지역변수의 유효 범위를 최소..
[백준/5671] 호텔 방 번호 | 중복값 개수 세기(딕셔너리와 SET)
·
PS/BOJ&Programmers
5671 호텔 방 번호 5671번: 호텔 방 번호 선영이는 집 호수에 반복되는 숫자가 있는 경우에는 그 집에 사는 사람에게 불운이 찾아온다고 믿는다. 따라서, 선영이는 838호나 1004호와 같이 한 숫자가 두 번 이상 들어있는 집에는 절대 살지 www.acmicpc.net 알고리즘 범위에 해당하는 숫자들이 자릿수마다의 중복되는지 체크하면 된다. 같은 값이 있는지 확인하는 방법으로는 딕셔너리를 떠올렸고 아래와 같이 중복 체크를 해주었다. for item in hotel: d={'0':0, '1':0, '2':0, '3':0, '4':0, '5':0, '6':0, '7':0, '8':0, '9':0} flag=True for s in str(item): if s in d.keys(): d[s] += 1 f..
[OS] 프로세서(processor), 프로그램(program)과 프로세스(process), 스레드(Thread)
·
카테고리 없음
개요 이번 포스팅에서 정리할 내용은 아래와 같은 구조를 머릿속에 넣고, 이해하는 것이 좋다. 프로그래밍을 하면서 자주 들었지만, 확실하게 잡지 않으면 헷갈리는 개념. 그러나 너무 중요한 기본 개념을 이번 포스팅을 통해 정리하고 자주 들여다보자! OS 과목을 수강한 컴퓨터공학 관련 학부생이라면 프로세스와 스레드에 대한 개념은 익히 들어왔을 것이다. 여기서 컴퓨터 구조 관련 강의를 같이 들으면 좋은데.. 컴퓨터구조에서는 HW 측면에서 스레드에 대해 다루기 때문이다. 이처럼, 우리가 중요하게 다루는 Thread라는 개념은 SW/HW 측면 두 가지에서 정의할 수 있다. 먼저, HW 측면에서 컴퓨터가 작업을 어떻게 처리하는지, 무엇으로 정의하는지 알아보자. 프로세서(processor) CPU는 컴퓨터 자원을 처리..
[OS] 멀티 프로세서, 멀티 태스킹, 멀티 프로세스, 멀티 스레드!
·
CS/OS
개요 멀티 프로세스(여러 프로세스가 병렬적으로 일하는 것)공부를 하면서 여러 자료를 참고하는데, 이 4개의 용어에 대해 정의하는 바가 다들 달랐다. 여러 자료를 참고하면서 혼선이 왔고, 많이 찾아보고 구글링하며 내린 각각의 차이에 대해 명확하게 정리하는 포스팅이다. 멀티 프로세서(Multi-Processor, Multi-Processing) 단일 시스템 내에서 다중 cpu로 여러 작업을 처리하는 것이다. 하나의 cpu는 하나의 작업만 처리할 수 있다. 그냥 스펙을 쭉쭉 눌려서 여러 cpu를 두고 돈도 빵빵하게 쓰며 성능을 높이는 것이 멀티 프로세서-멀티 프로세싱이다. 장점 독립된 구조로 안정성이 높고, 하나의 프로세스에 문제가 생기더라도 다른 프로세스들에 영향을 주지 않는다. 단점 비용, 전력소모 등등 ..
[JAVA] 날짜/시간 클래스 알아보기(Date, LocalDateTime, ZoneDateTime)
·
언어/JAVA
개요 회사에서 새로운 기능 추가를 위해 팀원 분이 Date를 쓴 것을 발견하였다. 이펙티브 자바 스터디에서 Date클래스는 사용을 지양해야 한다고 공부했기에 이 부분에 대해 자세한 기록을 남겨 곱씹어야겠다고 다짐했다. DATE java의 util 클래스다. 공식 문서를 살펴 보면, Date 클래스가 구현한 인터페이스는 다음과 같다. Serializable: 특별한 메소드를 포함하지 않는 마커 인터페이스다. 객체의 상태를 저장하거나(메모리에 존재하는 객체를 디스크에 저장) 네트워크를 통해 전송할 수있도록 바이트 스트림으로 변환하는 것이다. Clonable: 이또한 마커 인터페이스다. 객체를 복사할 때 사용된다. Comparable: Date의 compareTo 메소드를 지원하는 인터페이스다. DATE 클래..
[백준/1068] 트리
·
PS/BOJ&Programmers
1068 트리 1068번: 트리 첫째 줄에 트리의 노드의 개수 N이 주어진다. N은 50보다 작거나 같은 자연수이다. 둘째 줄에는 0번 노드부터 N-1번 노드까지, 각 노드의 부모가 주어진다. 만약 부모가 없다면 (루트) -1이 주어진다 www.acmicpc.net 알고리즘 1. 이 문제는 부모가 인덱스, 해당 인덱스의 자식을 리스트로 부여한다. # index: 부모, 값: 자식 # 노드의 범위가 0 ~ n-1인 경우 for i in range(n): # root인 경우 if tree[i] == -1 : continue else: graph[tree[i]].append(i) 이렇게 표현하는 이유는 DFS 탐색 구현을 좀 더 직관적으로 평소와 같이 할 수 있기 때문이다. 예컨대 dfs(i)로 시작해서 자식..
[백준/2606] 바이러스 | 양방향 그래프 정의 | DFS
·
PS/BOJ&Programmers
바이러스 Baekjoon Online Judge Baekjoon Online Judge 프로그래밍 문제를 풀고 온라인으로 채점받을 수 있는 곳입니다. www.acmicpc.net 알고리즘 입력에서 직접 연결되어 있는 쌍이 주어진다. 더보기 1 2 2 3 1 5 5 2 5 6 4 7 1번 노드는 2번 노드와, 2번 노드는 3번 노드와 1번 노드는 5번 노드와 ∙∙∙ 연결되어있다는 뜻이다. 이렇게 정의하는 그래프를 양방향 그래프라고 하고, 다음과 같이 코드로 구현할 수 있다. 양방향 그래프를 2차원 리스트로 정의 graph = [[] for _ in range(n+1)] for _ in range(m): x,y=map(int, input().split()) graph[x].append(y) graph[y]...
[백준/22232] 가희와 파일 탐색기
·
PS/BOJ&Programmers
가희와 파일 탐색기 22232번: 가희와 파일 탐색기 첫 번째 줄에 jo_test 폴더에 있는 파일 개수 N과 가희가 설치한 OS에서 인식하는 파일 확장자의 개수 M이 공백으로 구분되어 주어집니다. 2번째 줄부터 N+1번째 줄까지 FILENAME.EXTENSION 형식의 문자열 www.acmicpc.net 알고리즘 정렬이 순서대로 이어져야 하므로 lambda를 활용하였다. 또한, 2 번째 조건은 까다로워서 정렬함수 말고 직접 교체해주었다. 전체 코드 import sys;input=sys.stdin.readline n,m=map(int, input().split()) jo_test = [input().rstrip() for _ in range(n)] ext = set(input().rstrip() for ..
[프로그래머스] 자동차기록에서 장기/단기 대여 구분하기 | DATEDIFF, SQL IF문
·
PS/BOJ&Programmers
개요 이 문제의 핵심은 대여 시작일이 2022년 9월이어야 한다. ➡️ date_format 함수로 DATE형 원하는 형식으로 수정하기 장기/단기 기간은 30일이 기준이다. ➡️ datediff 함수와 if문 이용하기 DATEDIFF 날짜의 차이를 일(day)로 환산해주는 함수. datediff(date1, date2) 계산은 date1 - date2로 진행된다. 음수는 0으로 도출된다. IF문 if문은 SELECT와 WHERE 절에 사용할 수 있다. IF문 if(조건, 참일 때 결과, 거짓일 때 결과) if(datediff(end_date,start_date)
[Archive] 2024 정보처리기사 필기 합격 후기
·
회고 & 후기/회고 & 후기
개요소프트웨어학과 전공자로서 정보처리기사는 익히 들어왔던 자격증이라, 4학년이 되는 시점에서 자연스럽게 취득에 도전했다.공부를 하면서 전공자라면 필요한 자격증이라고 느꼈고, 공부했던 전공 내용들을 다잡기에 확실히 좋은 시험이었다!  준비 기간 및 방법나의 성향과 전공 활용필자는 시험을 미리 준비하지 않으면 긴장도가 매우 높고, 회사 다님 + 취준을 병행하다보니 공부할 시간이 많이 없을 거라 전공자임에도 불구하고 시험 약 한달 전부터 준비를 시작했다. 하루만에 합격 이런건 진짜 어떻게 한거지? 싶다. (체감 상 일주일은 아무런 일정없이 이것에만 몰두할 수 있다면 가능할 것같다.)   또한 필자의 경우 기출만 회독으로 시험뿌시기! 이런걸 잘 못한다.기출 풀고 -> 모르는 건 개념 훑기 최소한 이 과정은 거쳐..
[GCP] Cloud Logging 에러 사항을 메일로 모니터링하기
·
DevOps/GCP
개요예기치 못한 에러 때문에 개발자가 모르는 사이 서비스가 갑자기 다운될 수도 있다. 이러한 이슈를 방지하기 위해 로그를 모니터링하는 것은 매우 중요한 일이며,  메일, slack, chat 등으로 실시간 알림을 통해 로그를 모니터링할 수 있다.  Cloud Logging  Cloud Logging을 보면 정말 많은 로그들이 실시간으로 쌓이고 있다. 이번 포스팅에서는 Error 관련 로그가 발생했을 때 회사의 DEV 계정으로 메일 알림을 전송하는 것을 세팅해보도록 한다.  Cloud Logging의 가장 우측에 알림 만들기라는 버튼을 클릭하자.원래 이 서비스는 없었고 StackDriver라는 서비스로 지원됐었는데, 새로 생겼다고 한다. 그래서 Cloud Logging 관련 리서치를 하면 여전히 Stack..
[프로그래머스] 자동차 종류 별 특정 옵션이 포함된 자동차 수 구하기 | LIKE 사용법
·
PS/BOJ&Programmers
개요 SQL의 LIKE문은 주로 쿼리문 WHERE와 함께 사용되며, 일치하는 컬럼을 찾을 때 사용한다. 해당 문제처럼, 컬럼에 다양한 정보가 있을 때 '통풍시트', '열선시트', '가죽시트' 등 특정 내용을 걸러내야 하는 경우에 사용하기 좋다. LIKE 사용법 -- A로 시작하는 문자 찾기 -- where 컬럼명 like 'A%' -- A로 끝나는 문자 찾기 -- where 컬럼명 like '%A' -- A를 포함하는 문자 찾기 -- where 컬럼명 like '%A%' -- A로 시작하는 두 글자의 문자 찾기 -- where 컬럼명 like 'A_' -- 첫 번째 문자가 'A'가 아닌 모든 문자열 찾기 -- where 컬럼명 like '[^A]' -- 첫 번째 문자가 'A' or 'B' or 'C'인 ..
[백준/1107] 리모컨
·
PS/BOJ&Programmers
리모컨 Baekjoon Online Judge Baekjoon Online Judge 프로그래밍 문제를 풀고 온라인으로 채점받을 수 있는 곳입니다. www.acmicpc.net 이 문제는 세 가지 함정이 있다ㅠㅠ 해당 블로그에서 잘 짚어주셨고, 이를 참고하여 문제해결에 반영하였다. 시작값(100)에서 +, - 버튼 조작으로 타겟 채널로 이동 vs 숫자 버튼을 통해 타겟 채널로 이동 고장난 버튼이 없을 때, 입력을 받지 않음 차이의 최솟값을 구하는 게 최선이 아닐 수 있음 알고리즘 1. 시작값(100)에서 타겟값까지의 차이 해당 문제의 예시에도 잘 나와있듯이, N = 100인 상황일 때는 당연히 리모컨을 조작하지 않아도 된다. 2. 고장난 버튼이 없을 때 입력을 받지 않음 m의 범위는 0 ~ 10이므로, ..
[프로그래머스] 131530. 가격대 별 상품 개수 구하기
·
PS/BOJ&Programmers
문제 PRODUCT 테이블에서 만원 단위의 가격대 별로 상품 개수를 출력하는 SQL 문을 작성해주세요. 이때 컬럼명은 각각 컬럼명은 PRICE_GROUP, PRODUCTS로 지정해주시고 가격대 정보는 각 구간의 최소금액(10,000원 이상 ~ 20,000 미만인 구간인 경우 10,000)으로 표시해주세요. 결과는 가격대를 기준으로 오름차순 정렬해주세요. group by기본 문제다. 문제를 잘 보면 만원 단위의 가격대 별로 상품 개수를 출력해야 한다. 상품 개수는 예시에 잘 나와있듯이 product_id를 집계 함수로 잘 세어주면 된다. 만원 단위의 가격대 별로 조작하기 위해서는, 현재 DB에 저장된 price 값을 조정하고, GROUP BY해야한다. SQL Integer 조작 14000, 23000 이런..
sebinChu
'분류 전체보기' 카테고리의 글 목록 (3 Page)