도메인을 검색했을 때의 흐름
·
CS
DNS (Domain Name Server)사람이 읽을 수 있는 형태를 컴퓨터(머신)가 읽을 수 있는 IP 주소로 변환이는 ISP가 관리하는 DNS 해석기로 라우팅된다.DNS Server: 도메인명과 IP 주소를 관리한다. TCP (Transmission Control Protocol)TCP/IP라는 명칭으로도 널리 불린다.근거리 통신망이나 인트라넷, 인터넷에 연결된 컴퓨터에서 실행되는 프로그램 간에 안정적이고 순서대로 교환할 수 있게 보장한다.TCP는 말그대로 프로토콜 중 일부이며, 전송 계층에 해당된다. HTTP (Hyper Text Trasfer Protocol)웹 상에서 정보를 주고 받을 수 있도록 하는 통신 프로토콜이다.HTML 문서를 전송하는 용도로 사용http:로 시작하는 URL로 조회할 수..
첫 오픈소스 기여하기
·
경험
첫 오픈소스 기여하기학부생 시절, 오픈소스 기여가 좋은 커리어가 될 수 있다는 막연한 인식을 가지고 있었다. 또한, 오픈소스를 통해 공부하려는 목적도 컸다.오픈소스에 기여하려 했던 이유많은 사람이 사용하는 오픈소스에 단 한 줄의 코드라도 기여하는 것이 재미있는 일이라고 생각했고, 언젠가는 꼭 기여해보고 싶었다.오픈소스 생태계에서 직접 문제를 경험하고 자유롭게 네트워킹하며 의견을 나누는 문화에 매력을 느꼈다.시행착오와 새로운 접근처음 오픈소스에 기여하려고 했을 때는 무작정 Star 수가 많고, 최근 커밋이 활발하며, 이슈가 많이 등록된 프로젝트를 선정했으며,해당 프로젝트의 전체적인 흐름을 모두 파악하려고 시도했다. 하지만 이러한 방식의 가장 큰 문제점은 쉽게 지친다는 것이었다.결국 유튜브를 통해 다른 방법..
[MyBatis] Spring Boot 및 MyBatis 연동
·
Library-Framework
웹 프레임워크인 Spring Boot와 MySQL간의 SQL을 매핑하기 위한 MyBatis를 사용할 것이다.Docekr Hub에서 MySQL 이미지를 내려받고 컨테이너를 생성Spring Boot 프로젝트 생성 및 MyBatis config 설정하여 MySQL과 연동직접 설계한 API를 호출하고 응답을 받는다.Docker를 사용하여 개발 환경을 컨테이너로 관리하여 개발 환경을 격리하고 쉽게 관리한다.MyBatis는 SQL 쿼리와 Java 객체 간의 매핑 처리 (POJO)실습을 위한 간단한 API 설계 DockerMySQL 이미지 내려받기 및 컨테이너 생성 및 실행$ docker -vDocker version 25.0.3, build 4debf41MySQL 이미지 다운로드$ docker pull mysql:..
[MyBatis] MyBatis개념 및 구조
·
Library-Framework
MyBatis란?SQL과 객체 간의 매핑을 자동화하여 개발자가 SQL 작성에 집중할 수 있도록 돕는 퍼시스턴스 프레임워크이다.JDBC로 처리하는 코드와 파라미터 설정 및 결과 매핑을 대신한다.데이터베이스 레코드에 원시타입과 Map 인터페이스 그리고 자바 POJO를 설정해서 매핑하기 위해 XML과 어노테이션을 사용한다. MyBatis3 주요 구성 요소SqlSessionFactoryBuilder애플리케이션이 실행되면 SqlSessionFactory를 만드는데 한 번 사용일회성 특정 때문에 메소드 스코프를 권장재사용은 가능하지만 권장하지 않는다. 매번 새로운 SqlSessionFactoryBuilder 인스턴스를 생성하는 것이 바람직함.스프링과 통합되어 사용할 때 애플리케이션 클래스에서 직접 처리하지 않는다...
컴파일(Compile)과 런타임(Runtime)
·
CS
컴파일(Complie)사용자가 작성한 고수준 언어(소스코드)를 저수준(목적 코드, 기계어) 언어로 변환하는 과정을 말한다.Java, C, C++ 같은 언어들이 컴파일 언어이며 실행(런타임)되기 위해서는 반드시 컴파일 과정을 거쳐야 한다.JS, Python과 같은 언어들은 인터프리터 언어이며 컴파일 과정없이 즉시 변환되어 동작하도록 되어 있다.컴파일 과정에서 문법 오류 검사, 코드 최적화 등을 수행하여 실행 가능한 파일을 만든다.컴파일 과정이 필요한 언어들은 그렇지 않은 언어보다 느리다는 단점이 있으며, 이런 컴파일을 진행하는 일련의 과정을 컴파일 타임이라고 한다.컴파일 과정이 필요한 언어들은 컴파일 시간이 필요하다는 단점이 있으며, 이를 컴파일 타임이라고 한다. 하지만 컴파일이 완료되면 인터프리터 언어보..
2025년 SQLD 합격
·
경험
2025년 3월 제56회 SQLD 회고를 작성해 보려고 한다.가채점 결과는 합격기준에 맞춰 합격하였다. 시험을 도전하게 된 계기데이터베이스를 깊게 파고들수록 이론이 부족해 이해하기 어려운 부분이 많았다. 또한, 전공에서 배운 이론과 개발하면서 얻었던 경험들을 복기해야겠다는 결심을 하게 되었다. 시험 준비2주 기간에 주로 bruders님의 개념 정리 PDF를 통해 공부를 시작했다.. 이후, 부족한 부분을 보완하기 위해 홍쌤의 데이터랩에서 제공하는 강의를 참고하며, Notion에 별도로 정리하여 나중에 부족한 부분만 찾아볼 수 있도록 정리했다. 추가적으로, yunamom님의 예상 복원 문제를 풀어보며 실제 시험과 유사한 문제를 경험하고, 부족한 부분을 채워 나갔다.회고추상적인 개념을 깊이 있게 다지고 전공..