본문 바로가기

728x90

부트캠프

(40)
[멋쟁이사자] 백엔드 - 38일차 회고록 38일차학습 목표Flexbox를 활용하여 요소를 수평 및 수직으로 정렬할 수 있다.CSS Grid를 활용하여 격자형 레이아웃을 설계할 수 있다., , 등의 폼 요소를 활용하여 입력 폼을 구현할 수 있다.미디어 쿼리를 활용하여 반응형 레이아웃을 구성할 수 있다.Flexbox 사용해보기Flexbox의 경우 프로젝트를 하면서 한번 사용해봤었기 때문에 기억을 다시 떠올릴겸 정리하는 시간을 가진것 같다.관련 내용은 블로그 글에 정리해뒀다.Grid 사용해보기Gird 역시 프로젝트를 하면서 카드 부분에 적용해봤었는데 생각한대로 만들어지지 않았던 경험이 있다.Grid를 학습하면서 보다 더 다양한 속성들을 학습했다.관련 내용은 블로그 글에 정리해뒀다.
[멋쟁이사자] 백엔드 - 37일차 회고록 37일차학습 목표HTML의 시맨틱 태그를 활용하여 의미 있는 페이지 구조를 설계할 수 있다. ~ , , , , 등을 활용하여 텍스트와 리스트, 링크를 구성할 수 있다., , 등 기본 태그를 활용하여 실생활 페이지 구성을 시작할 수 있다.CSS 기본 선택자와 속성을 활용하여 텍스트, 배경, 레이아웃을 꾸밀 수 있다.HTML의 시맨틱 태그html은 간단하게 알고 있어서 footer, header 같은 개념만 알고 있었는데 이번 기회에 시맨틱 태그가 바로 이 footer, haeder와 같은 친구들이라는것을 알았다.그동안 시맨틱 태그란것도 모르고 그냥 html에 포함된 줄 알았는데 이번 학습을 통해 시맨틱 태그를 알게 되었고 다른 요소들도 학습하게 되었다.관련 내용은 블로그 글에 정리해뒀다.HTML의 기본..
[멋쟁이사자] 백엔드 - 36일차 36일차학습 목표Virtual Thread 기반의 고성능 네트워크 서버 구조를 설계하고, 동시성 모델을 기존 방식과 비교 분석할 수 있다네트워크 트래픽 및 통신 흐름을 Wireshark로 실시간 분석하고, 통신 프로토콜 설계와 디버깅에 활용할 수 있다.Executor 및 VirtualThread를 사용하여 작업 처리 병렬화를 구현할 수 있다.Virtual Thread 기반의 고성능 네트워크 서버 구조 설계3일 내내 학습하고 있는 내용이다.플랫폼 스레드와 가상 스레드의 차이점은 이제 잘 알고있어서 가상 스레드를 적용한 고성능 동시성 모델에 대해 학습했다.이전에 학습한 가상 스레드의 사용 예시에 해당 내용을 넣어뒀다.네트워크 트래픽 및 통신 흐름 분석어제 사용한 Wireshark를 마저 사용했다.Wiresh..
[멋쟁이사자] 백엔드 - 35일차 회고록 35일차학습목표채팅 서버/클라이언트의 기능 확장 및 구조 개선을 구현할 수 있다.Virtual Thread를 활용하여 경량 스레드 기반 네트워크 구조를 설계할 수 있다.Selector 및 NIO 기반의 논블로킹 네트워크 구조를 이해하고 비교할 수 있다.Wireshark 를 활용해서 네트워크를 상태 정보를 리턴 받을 수 있다.채팅 서버/클라이언트의 기능 확장 및 구조 개선어제 학습한 멀티 클라이언트를 코드로 실습했다.사실 이론적인 부분은 어제 정리했기 때문에 해당 이론을 실습을 통해 정리하는 시간이라고 생각된다.Virtual Thread를 활용하여 경량 스레드 기반 네트워크 구조를 설계가상 스레드의 경우 OS 스레드보다 메모리의 부담이 덜하다.이는 스레드 구조의 차이 때문이다.사용자가 많이 접속하는 실제 ..
[멋쟁이사자] 백엔드 - 34일차 회고록 34일차학습 목표Java의 Socket과 ServerSocket을 활용하여 기본적인 TCP 통신 구조를 설계하고 구현할 수 있다.멀티 클라이언트 처리를 위한 스레드 기반의 서버 구조를 설계할 수 있다.자바의 InetAddress 및 포트, IP 기반 주소 체계를 이해하고 활용할 수 있다.객체 직렬화를 통한 소켓 기반 객체 전송 구조를 구현할 수 있다.소켓 통신과 TCP 구조소켓 통신의 경우 스레드와 비슷하게 어느정도의 이론만 알고있고 깊숙하게는 알지 못했었다.이번 기회에 소켓 통신과 TCP, UDP의 차이점을 인지하고 사용할 줄 알게 되었다.아래 글로 자세하게 정리해뒀다.https://lold2424.tistory.com/245 [JAVA] 소켓 통신의 기본 개념과 구조Java에서는 네트워크 통신이 가능..
[멋쟁이사자] 백엔드 - 33일차 회고록 33일차학습 목표새로운 스레드 API를 활용하여, VO 바운드 작업과 CPU 바운드 작업에 적합한 동시성 프로그래밍 모델을 설계하고 구현할 수 있다.Executors 및 Virtual Thread Executor를 활용하여, 다양한 유형의 작업을 분리 처리하는 병렬 구조를 구현할 수 있다.실행 결과를 기반으로 Virtual Thread의 장단점을 분석하고, 실전 환경에 적합한 스레드 모델을 선택할 수 있다.1. VO 바운드 / CPU 바운드 작업에 적합한 모델 구현플랫폼 스레드의 경우 멀티코어 활용, 안정적 병렬 처리와 같은 이유로 CPU 바운드 작업에 적합하다.가상 스레드는 대기 중인 스레드를 JVM이 다른 작업으로 대체해주기 때문에 I/O 바운드 작업에 적합하다.2. Executors 및 Virtua..
[멋쟁이사자] 백엔드 - 32일차 회고록 32일차학습 목표멀티스레드의 개념과 필요성을 이해하고, 단일 스레드와의 차이점 및 멀티스레드를 사용하는 주요 이유를 설명할 수 있다.Thread 클래스와 Runnable 인터페이스를 활용한 전통적인 스레드 생성 방식을 이해하고, 스레드의 생명주기(생성-실행-대기-종료)를 설명할 수 있다.스레드 간 공유 자원 접근 시 발생할 수 있는 문제(경쟁 조건= Race Condition 등)를 이해하고, synchronized, wait/notify, Lock 객체를 활용한 동기화 기법을 구현할 수 있다.JDK 21에서 제공하는 향상된 스레드 기능의 핵심 개념(예: 가상 스레드)을 이해하고, 전통적인 스레드와의 차이점을 설명할 수 있다.JAVAX를 이용한 GUI 매핑을 구현할 수 있다.멀티스레드웸 앱이 주류가 되기..
[멋쟁이사자] 백엔드 - 31일차 회고록 31일차학습 목표MySQL emp 및 dept 테이블 데이터베이스 연동 및 기본 CRUD (Create, Read, Update, Delete) 작업을 수행할 수 있다.두 개 이상의 테이블(emp, dept)을 조인하여 필요한 정보를 효과적으로 조회하고, 그 결과를 DTO (EmpDeptDTO.java) 객체에 매핑하여 활용할 수 있다.자바에서 스레드를 생성하는 두 가지 주요 방법(Thread 클래스 상속, Runnable 인터페이스 구현)을 이해하고, 각 방법의 특징과 사용 방법을 설명할 수 있다.개발한 기능 요약JDBC 연결 및 쿼리 실행PreparedStatement 활용한 SQL Injection 방어ResultSetMetaData, ParameterMetaData 사용MVC 구조 도입 (Mode..

728x90