인기글
-
"마케팅 성공사례 보고서" (4학년 1학기 광고와 마케팅)
선정한 기업과 선정 이유 이번 마케팅 성공사례 조사와 관련한 보고서 작성을 위해 제가 선택한 기업은 카카오입니다. 카카오에 대해 설명하기 전에 왜 제가 카카오라는 기업을 주제로 잡았는지 설명하도록 하겠습니다. 이번 보고서의 주제로 카카오를 선정한 이유는 총 2가지입니다. 첫째는 제가 컴퓨터 공학을 공부하는 사람으로서 함께 일하고 싶은 회사이기 때문입니다. 카카오는 현재 우리의 생활에서 뺄 수 없는 감초와 같은 기능을 하고 있습니다. 친구와 대화를 할 때는 카카오톡을 사용하고 물건을 살때는 카카오 페이를 활용하며 화폐를 주고 받을 때는 카카오 뱅크를 사용하는 등 우리의 일상속에 숨쉬듯이 살아가는 것이 카카오라고 할 수 있습니다. 저는 이러한 카카오의 하나의 톱니바퀴가 되어 일하고 싶다는 꿈을 꾸고 있습니다..
2022.01.14
-
프로그래머스 깊이/너비우선탐색 네트워크
문제 설명 네트워크란 컴퓨터 상호 간에 정보를 교환할 수 있도록 연결된 형태를 의미합니다. 예를 들어, 컴퓨터 A와 컴퓨터 B가 직접적으로 연결되어있고, 컴퓨터 B와 컴퓨터 C가 직접적으로 연결되어 있을 때 컴퓨터 A와 컴퓨터 C도 간접적으로 연결되어 정보를 교환할 수 있습니다. 따라서 컴퓨터 A, B, C는 모두 같은 네트워크 상에 있다고 할 수 있습니다. 컴퓨터의 개수 n, 연결에 대한 정보가 담긴 2차원 배열 computers가 매개변수로 주어질 때, 네트워크의 개수를 return 하도록 solution 함수를 작성하시오. 제한사항 컴퓨터의 개수 n은 1 이상 200 이하인 자연수입니다. 각 컴퓨터는 0부터 n-1인 정수로 표현합니다. i번 컴퓨터와 j번 컴퓨터가 연결되어 있으면 computers[..
2021.09.09
-
[Database] 인덱스(Index)란 무엇인가? : B+Index의 구조
이전에 쿼리튜닝을 공부하면서 인덱스에 대해 살짝 알아봤었다. 쿼리 튜닝에 대하여(기초)이번 프로젝트에서 쿼리를 다룰일이 많다. DB를 많이 사용하다보니 select할 때 시간이 많이 걸리기 때문에 쿼리튜닝이 필수였다.쿼리튜닝은 DBA가 해주지만 DBA가 바빠서 그런지 응답 시간이 오래ytlive.tistory.com오늘은 인덱스란게 어떻게 데이터 조회 속도를 향상시키는지그 구조와 종류에 대해 알아보려고 한다. Index 너는 누구인가?인덱스(Index)란 정확히 무엇인가?인덱스는 테이블에서 데이터를 빠르게 읽을 수 있도록 도와주는 자료구조 이다.흔히 책의 목차 정도로 이해하면 될 것이다.테이블의 특정 컬럼에 대해 별도의 자료구조를 만들어 데이터베이스에서 테이블의 모든 테이블을 검색하지 않고, 원하는 데이..
2026.07.24
-
(c++) 프로그래머스 "행렬 테두리 회전하기"
https://programmers.co.kr/learn/courses/30/lessons/77485 코딩테스트 연습 - 행렬 테두리 회전하기 6 6 [[2,2,5,4],[3,3,6,6],[5,1,6,3]] [8, 10, 25] 3 3 [[1,1,2,2],[1,2,2,3],[2,1,3,2],[2,2,3,3]] [1, 1, 5, 3] programmers.co.kr #include #include #include using namespace std; vector solution(int rows, int columns, vector queries) { vector answer; int normal[101][101] = { 0 }; int plus[4][2] = { {0,1},{1,0},{0,-1},{-1,0..
2022.03.07
-
"나는 여기 없었다." 감상평 (4학년 1학기 논리적사고 보고서)
내가 생각하는 아들러 심리학이란 영화 에 대해 이야기하기 전에 아들러의 목적론이 무엇인지 이해를 해야 목적론의 관점으로 영화를 이해하고 해석할 수 있을 것입니다. 이 때문에 영화에 대해 논하기 전에 아들러 심리학에 대해 정리를 하도록 하겠습니다. 영화 감상문을 쓰기 위해 프린트물을 반복해서 읽고 교수님의 수업도 여러 번 반복하여 들어보았으나 처음에는 아들러 심리학이라는 주제가 너무 어렵게 느껴졌었습니다. 그러다 어느 순간 학문의 관점이 아니라 내가 살아가는 삶의 관점에서 목적론을 바라볼까? 라는 생각이 들었습니다. 내가 살아가면서 내 삶을 바꾸기 위해서라면 어떻게 생각해야 하는가? 라고 생각을 하니 아들러 심리학이 어떤 것인지 조금씩 윤곽이 보이기 시작했습니다. 만약 제가 “아들러 심리학의 목적론이란 무..
2022.01.14
-
'COVID-19 상황에서의 심리학의 역할' 보고서(3학년 2학기 심리학개론)
본 보고서는 COVID-19 상황에서의 심리학의 역할에 관한 것을 생각해본 보고서입니다. 먼저 COVID-19란[1] ‘2019년 12월 중국 후베이성 우한시에서 발생하여 전세계적으로 확산된, 새로 발견된 신종 코로나바이러스에 의한 호흡기 감염질환’이라고 정의되어 있습니다. 미국 질병 예방 통제센터의 자료에 따르면 2020년 6월 말 한 주 동안 40.9%가 코로나 펜데믹과 관련된 심리적, 행동적 이상 증상 유경험자라고 응답했습니다. 이는 우리나라도 크게 다르지 않습니다. 국민건강설문조사 자료에 따르면 2019년에 비해 2020년 4-7월 사이 불안 및 우울장애 증상 경험자 비율이 10%대에서 30%대로 대폭 상승하였습니다. 이를 통해 많은 사람들이 현재 코로나 상황으로 인해 부정적인 영향을 받은 것을 ..
2022.01.14
-
3학년 2학기 "실감응용데이터베이스프로그래밍" 팀프로젝트
발표 영상 : https://youtu.be/ZKDVAGsW3LM github 링크 : https://github.com/dldkfma9577/DBP_DBDBDIB GitHub - dldkfma9577/DBP_DBDBDIB Contribute to dldkfma9577/DBP_DBDBDIB development by creating an account on GitHub. github.com 내가 맡은 역할 : 급여 내역서 페이지
2022.01.13
-
3학년 2학기 "실감응용데이터베이스프로그래밍" 커피숍 프로그램 개발
c#과 mysql을 사용해서 미니 커피숍 프로그램을 개발했다. Day1 Day2 Day 3 Day 4
2022.01.13
-
2학년 1학기 "컴퓨터공학창의설계" 기말 팀 프로젝트
본 프로젝트는 스크래치로 제품을 만드는 프로젝트였다. 우리팀이 선정한 주제는 지하철 어플이었다. 각 칸마다 앉을 수 있는 자리를 표시해주고 사람이 많으면 선풍기를 가동하고 차량 밖 LED 색도 바뀌는 프로그램을 개발했다. 차량도 제작했으나 사진이 없다... zip파일은 코드 스크린샷을 묶은 것이다. 해당 프로젝트에서는 코드작성과 차량칸 이미지 제작의 역할을 맡았습니다.
2022.01.13
-
(c++) 프로그래머스 해시 완주하지 못한 선수
문제 설명 수많은 마라톤 선수들이 마라톤에 참여하였습니다. 단 한 명의 선수를 제외하고는 모든 선수가 마라톤을 완주하였습니다. 마라톤에 참여한 선수들의 이름이 담긴 배열 participant와 완주한 선수들의 이름이 담긴 배열 completion이 주어질 때, 완주하지 못한 선수의 이름을 return 하도록 solution 함수를 작성해주세요. 제한사항 마라톤 경기에 참여한 선수의 수는 1명 이상 100,000명 이하입니다. completion의 길이는 participant의 길이보다 1 작습니다. 참가자의 이름은 1개 이상 20개 이하의 알파벳 소문자로 이루어져 있습니다. 참가자 중에는 동명이인이 있을 수 있습니다. 입출력 예 participant completion return ["leo", "kik..
2021.12.11
최신글
-
[Database] Cursor란 무엇인가?
오늘은 DBMS의 cursor에 대해 알아보려고 한다.이번 프로젝트에서 Oracle을 사용하면서 "Cursor is Closing"이라는 오류 메시지를 본 적이 있다.100건 이상의 데이터를 조회할 때 이런 케이스가 발생했는데이 Cursor가 뭐고 왜 Cursor를 사용하는지에 대해 알아보고자 한다. Cursor란 무엇인가?Cursor는 Query의 결과로 반환된 여러 행의 집합을 순차적으로 처리하기 위해 사용하는 포인터이다.좀 더 쉽게 풀어서 이야기하면위와 같이 고객명을 조회하는 쿼리를 실행했을 때현재 내가 읽고 있는 고객이 어떤 고객인지 가리키고 있는 포인터가 Cursor인 것이다.Cursor의 동작원리Cursor는 프로그램의 for, while과 같은 Loop문과 비슷한 과정을 거치는데 Decla..
2026.08.23
-
[DataBase] Delete vs Truncate
오늘은 Truncate와 Partition에 대해 공부해 보려고 한다.이번 프로젝트에서 Truncate와 Partition을 사용할 일이 생겨서Truncate가 왜 Delete보다 빠른지, Partition은 어떤 구조로 이루어졌는지에 대한 궁금증이 생겨서이에 대해 조사해 보았다. Delete와 TruncateDelete와 Truncate는 둘다 데이터를 삭제한다는 기능을 가지고 있지만동작방식은 살짝 다른데, 이에 대해 이해하기 위해서는 RDBMS의 저장 구조를 알면 좋을거 같다. RDBMS의 논리적 저장구조RDBMS는 Table Space, Segment, Extent, Block으로 구성되어 있다.Block (Page)Block은 디스크와 메모리 간 I/O 처리를 위한 최소 단위 이다.Block은 여..
2026.08.09
-
[Database] 인덱스(Index)란 무엇인가? : B+Index의 구조
이전에 쿼리튜닝을 공부하면서 인덱스에 대해 살짝 알아봤었다. 쿼리 튜닝에 대하여(기초)이번 프로젝트에서 쿼리를 다룰일이 많다. DB를 많이 사용하다보니 select할 때 시간이 많이 걸리기 때문에 쿼리튜닝이 필수였다.쿼리튜닝은 DBA가 해주지만 DBA가 바빠서 그런지 응답 시간이 오래ytlive.tistory.com오늘은 인덱스란게 어떻게 데이터 조회 속도를 향상시키는지그 구조와 종류에 대해 알아보려고 한다. Index 너는 누구인가?인덱스(Index)란 정확히 무엇인가?인덱스는 테이블에서 데이터를 빠르게 읽을 수 있도록 도와주는 자료구조 이다.흔히 책의 목차 정도로 이해하면 될 것이다.테이블의 특정 컬럼에 대해 별도의 자료구조를 만들어 데이터베이스에서 테이블의 모든 테이블을 검색하지 않고, 원하는 데이..
2026.07.24
-
DB PK(유일값) 일련번호 채번방식에 대하여
이번 프로젝트에서는 데이터 보관을 위해DELETE 사용을 금지하고 삭제여부 컬럼을 추가하여 삭제 데이터를 관리하고 있다.그래서 중복 방지를 위해 SEQ즉 일련번호 컬럼을 추가할 필요가 있었다.때문에 오늘은 일련번호를 채번하는다양한 방법에 대해 알아보고 비교해보려고 한다. 일련번호 채번방법 4가지일련번호 채번방법으로는 크게 4가지가 있다.1️⃣ Max + 12️⃣ DB Sequence (시퀀스 객체)3️⃣ 채번 테이블 방식4️⃣ 프레임워크 UUID (Universally Unique Identifier)하나씩 예시를 들어서 확인해보겠다. 1️⃣ Max + 1가장 간단한 채번방법은 Max + 1이다.현재 테이블에 저장된 ID 값 중 가장 큰 값을 조회하여거기에 + 1을 더해 새 번호를 부여한다.Max + 1..
2026.07.05
-
[Spring Batch] Batch에서의 Tasklet과 Chunk
오늘은 배치에 대해 알아보겠다.배치란 무엇일까.배치란?배치는 대용량 데이터를 사용자 개입 없이 컴퓨터가 일괄적으로 처리하는 프레임워크이다.주로 대용량 데이터 처리, 자동화 등에서 사용된다. 배치의 실행 방식배치는 배치 실행 시점과 동작방식에 따라 아래와 같이 크게 3가지 종류로 나뉜다.- 정기배치- 이벤트 배치- On-Demand 배치정기 배치 (Scheduled Batch)정기 배치는 정해진 주기에 따라 자동으로 실행되는 배치이다.우리가 알고 있는 배치는 대부분 정기 배치일 것이다.주로 스케줄러 툴과 연동하여 사용한다.예를 들어 매일 새벽 2시에 통계를 생성한다든지, 매달 25일에 월급 명세서를 발급한다는 등의 작업을 할 수 있다. 이벤트 배치 (Event-Driven Batch)이벤트 배치는 특정 이..
2026.06.13
-
Oracle Join이란 무엇인가? : Outer Join에서 (+)가 없다면?
내가 지금 진행하는 프로젝트에서ASIS 에서 사용하던 oracle 쿼리를 postgreSQL 쿼리로 변경하는 작업을 하고 있는데사용하는 쿼리 중의 많은 양이 오라클 조인을 사용하고 있다.그래서 Oracle Join에 대해 알아보려고 한다. 오라클 조인이란?다른 DBMS에서 Join을 위해서는 INNER JOIN, LEFT OUTER JOIN, CROSS JOIN 등과 같은 ANSI JOIN을 사용할 것이다.하지만 Oracle에서는 Oracle Join이라는 조인을 위한 한가지 방법이 더 있다.ANSI JOIN은 JOIN과 ON구문으로 명시하여 조인컬럼을 구분하지만 오라클 조인은 WHERE 절에 조인 컬럼과 조회 조건이 공존한다.예시를 들어보자.학생 ID와 이름이 있는 학생 테이블과과제ID, 학생 ID, ..
2026.05.31
-
Stateful과 Stateless는 무엇인가?
웹 개발을 하다보면 Stateless 같은 말을 한번씩 들어봤을 것이다.오늘은 Stateless가 뭐고 Stateful과의 차이는 무엇인지 알아보려고 한다. State(상태)Stateless는 말 그대로 State(상태)가 없는 것이고 Stateful은 State(상태)가 있는 것이다.그럼 State가 무엇인가?서버의 State는Server가 Client와 주고 받은 정보를 저장한 것이다.예를 들면 "로그인 정보, 장바구니 상품 리스트" 등이 있을 것이다.Stateful (상태유지)Stateful은 아까 말한 상태를 서버가 보존하는 것이다.서버가 클라이언트와 통신하면서 이전에 통신한 값을 저장하는 것이다.홈페이지에서 로그인을 한번 하면 페이지를 이동해도 로그인 정보가 남는 것이 대표적인 Stateful의..
2026.05.05
-
SQL 튜닝을 위한 6가지 기본 방법
안녕하세요지난 포스트에서는 쿼리튜닝이 무엇이고쿼리 실행 계획(Query Plan)을 어떻게 보는지에 대해 알아봤습니다. 쿼리 튜닝에 대하여(기초)이번 프로젝트에서 쿼리를 다룰일이 많다. DB를 많이 사용하다보니 select할 때 시간이 많이 걸리기 때문에 쿼리튜닝이 필수였다.쿼리튜닝은 DBA가 해주지만 DBA가 바빠서 그런지 응답 시간이 오래ytlive.tistory.com 이번 포스트에서는 지난 포스트에 이어서 SQL 튜닝을 위한 6가지 방법에 대해 알아보도록 하겠습니다. 쿼리 튜닝의 기본원칙 6가지 쿼리 튜닝을 하는 방법은 다양하지만많이 알려져 있는 6가지 방법을 소개시켜드리려고 합니다.간단하게 먼저 말씀드리자면1. 좌변 가공 지양2. 복잡한 WHERE절 OR 대신 UNION 사용3. 필요한 Row..
2026.04.11
-
쿼리 튜닝에 대하여(기초)
이번 프로젝트에서 쿼리를 다룰일이 많다. DB를 많이 사용하다보니 select할 때 시간이 많이 걸리기 때문에 쿼리튜닝이 필수였다.쿼리튜닝은 DBA가 해주지만 DBA가 바빠서 그런지 응답 시간이 오래걸리고 있어서내가 공부해서 튜닝해보자! 라는 생각으로 쿼리 튜닝에 대해 공부하게되었다. 쿼리 튜닝은 무엇인가?쿼리 튜닝은 DB에서 데이터를 꺼낼때 사용할 수 있는 '지름길'을 찾는 과정이다.즉, 쿼리를 최적화 하는 과정을 쿼리 튜닝이라고 한다.같은 결과를 가진 쿼리라도 더 빠르게 조회할 수 있는 길이 있다. 쿼리 실행 계획쿼리 튜닝을 위해서는 쿼리 실행 계획을 확인해봐야한다.쿼리 실행 계획은 DB엔진이 어떻게 해당 SQL문을 실행할지를 확인하는 기능이다.SELECT * FROM event;위 쿼리에 대한 실행..
2026.03.29
-
Kafka를 활용한 비동기 시스템
이번 프로젝트에서 Apache Kafka를 활용하여 MSA(MicroService Architecture)에서 비동기처리를 한다고 한다.근데 Kafka.. AWS 자격증 시험에서 본거 같은데 왜 얘로 비동기 처리를 하지 궁금해서Kafka가 뭐하는 친구인지 어떻게 왜 비동기처리를 얘로 할 수 있는지 공부해보려고한다. Kafka란 무엇인가Apache Kafka는 실시간으로 스트림 데이터를 수집하고 처리하는데 최적화된 분산 이벤트 스트리밍 플랫폼(Distributed Data Streaming Platform)이다. Kafka란? - Apache Kafka 설명 - AWSApache Kafka란? 기업에서 Apache Kafka를 사용하는 이유, AWS에서 Apache Kafka를 사용하는 방법.aws.ama..
2026.03.14