코딩 도구/기술 & 정보 글 (Tech & Knowledge)(18)
-
개발자를 위한 HTTP 웹 기본 지식
개발자를 위한 HTTP 웹 기본 지식 김영한님의 "모든 개발자를 위한 HTTP 웹 기본 지식"을 수강하고 정리했습니다. 인터넷 네트워크1. 클라이언트-서버 모델웹은 기본적으로 클라이언트-서버 모델을 기반으로 동작한다. 클라이언트(웹 브라우저, 모바일 앱)는 HTTP 요청을 보내고, 서버는 응답을 돌려준다. 이 과정에서 인터넷 네트워크가 핵심 역할을 한다. 서버는 사용자의 요청을 받아 데이터를 제공하는 역할을 하며, 클라이언트는 이 데이터를 처리하여 사용자에게 표시한다.2. 인터넷 프로토콜 (IP, TCP, UDP)IP(Internet Protocol): 데이터를 목적지까지 전달하는 역할을 한다. 모든 장치는 고유한 IP 주소를 가지며, 이를 통해 통신한다.TCP(Transmission Control P..
2025.02.22 -
C++에서 endl vs \n 성능 차이 알아보기
C++에서 endl vs \n 성능 차이어느날 처럼 코테 문제를 풀다가 예전에 코테에서는 절대 endl 을 쓰지 마라 라는 말이 기억이나서 출력 부분에서 아무것도 없이 vs \n vs endl 이렇게 출력 시간을 비교해보았는데 시간 차이가 났다. 위에서 부터 endl, \n, x 순서이다. 특히 코딩 테스트나 대량의 데이터를 출력할 때 endl과 \n의 차이가 실행 속도에 큰 영향을 줄 수 있다고 해서 한번 알아보았다. endl과 \n의 차이C++에서 줄바꿈을 출력하는 방법은 대표적으로 다음 두 가지가 있다:std::endl: 줄바꿈(\n)을 수행한 후, 출력 버퍼를 즉시 비운다(flush).'\n': 단순히 줄바꿈을 수행하며, 출력 버퍼를 유지한다.즉, std::endl은 줄바꿈 후 강제로 버퍼를..
2025.02.12 -
[코딩테스트] BFS에서 배열 크기를 +@로 설정하는 이유
BFS에서 배열 크기를 +@로 설정하는 이유BFS(너비 우선 탐색)를 구현할 때, 배열 크기를 문제에서 주어진 크기보다 +@를 해서 선언하는 경우가 많다. 예를 들어, 문제가 M=100, N=100이라고 하면, 배열을 board[102][102]로 설정하는 방식이다. 1. 왜 배열 크기를 +2로 설정하는가?배열 크기를 +2로 설정하는 가장 큰 이유는 배열의 경계를 벗어나는 오류를 방지하기 위해서다. BFS/DFS를 구현할 때, 보통 상하좌우 네 방향으로 탐색하는데, 이때 탐색 과정에서 배열 범위를 벗어날 가능성이 있다.예제 코드 (BFS 범위 체크)if (nx = M || ny = N) continue; // 범위를 벗어나면 스킵위 코드는 (nx, ny)가 배열의 범위를 벗어났을 경우, 즉 nx =..
2025.02.09 -
이스케이프 문자 캐리지 리턴(Carriage Return, \r): 개념과 활용
캐리지 리턴(Carriage Return)은 이스케이프 문자로 \r로 표현됩니다. 이 글에서는 캐리지 리턴의 개념, 역사적 배경, 동작 방식, 그리고 실질적인 활용 사례에 대해 다룹니다.캐리지 리턴의 개념캐리지 리턴(Carriage Return)은 텍스트 커서를 현재 줄의 맨 앞으로 이동시키는 역할을 합니다. 이 기능은 타자기와 같은 기계식 입력 장치에서 유래되었습니다. 문자 그대로 해석하면, "캐리지를 원래 위치로 되돌린다"는 의미를 가지고 있습니다.이스케이프 문자와 캐리지 리턴이스케이프 문자 \r:텍스트의 커서를 같은 줄의 맨 앞으로 이동시킵니다.이와 함께 줄 바꿈(Line Feed, \n)을 사용하면 새 줄로 이동하면서 커서를 맨 앞으로 보낼 수 있습니다.캐리지 리턴의 역사적 배경타자기와 초기 프린..
2025.01.23 -
청년 창업과 정부 과제 및 청년지원사업
정부과제 및 청년지원사업 정부과제 탐구: 도전과 기회정부 과제는 창업자, 스타트업, 연구자 등 다양한 분야에서 활동하는 사람들에게 큰 기회를 제공합니다. 대한민국과 미국 모두 다양한 정부 과제를 통해 새로운 기술 개발, 사업 확장, 사회 문제 해결에 기여할 수 있습니다. 아래는 정부 과제에 도전하기 위한 주요 정보와 팁을 정리한 내용입니다.1. 정부과제의 특징정부 과제는 단순히 한두 개가 아닌, 수백 가지의 옵션이 있으며, 지원자가 해당 과제를 성취할 때까지 도전할 수 있는 환경을 제공합니다. “될 때까지 쓰는 것”이 성공적인 전략이 될 수 있습니다. 특히, 11월은 대부분의 과제가 마감되는 시점이기 때문에 철저히 준비해야 합니다.미국에서도 정부 과제를 통해 VC 투자와는 별도로 기술을 키우고 시장 진입..
2024.12.30 -
나에게 소프트웨어란: 세상을 변화시키는 도구
○ (공모전명) 2024 SW중심대학 에세이 공모전○ (공모주제) 나에게 소프트웨어란? 소프트웨어는 나에게 단순한 기술 그 이상의 의미를 지닌다. 그것은 내가 꿈꾸는 세상을 변화시키는 도구이자, 나 자신의 가능성을 확장시키는 수단이다. 어릴 적부터 세상에 영향력을 끼치는 사람, 특히 CEO가 되는 것이 꿈이었다. 세상을 더 편리하게 만드는 다양한 서비스들이 나의 관심을 끌었고, 이를 통해 내가 할 수 있는 일들을 구체화할 수 있었다. 이러한 목표를 달성하기 위해 어떤 분야로 나아가야 할지 고민하던 중, 결론은 하나였다. 어떤 분야를 선택하더라도 핵심적인 역할을 하는 것은 '컴퓨터'였고, 컴퓨터를 제대로 활용할 줄 안다면 나는 그 꿈을 이룰 수 있을 거라 확신했다. 소프트웨어, 나의 진로를 바꾸다 고등학..
2024.09.13