Jwhy's Blogitory
close
프로필 배경
프로필 로고

Jwhy's Blogitory

  • 분류 전체보기 (126)
    • Book Study (49)
      • [Java] 이펙티브 자바 (19)
      • [Kotlin] 코틀린 코루틴 (6)
      • [Kotlin] 코틀린 인 액션 (4)
      • [Kotlin] 객체에서 함수로 (4)
      • [Web] 웹을 지탱하는 기술 (9)
      • [Web] HTTP2 IN ACTION (5)
      • [Spring] 토비의 스프링 3.1 (0)
      • [Theory] 출.스.마 (1)
      • [CS] 누구나 자료구조와 알고리즘 (1)
    • Devlog (12)
      • Kotlin (1)
      • Project (3)
      • Java (0)
      • Git (3)
      • AI (4)
      • 회고 (1)
    • Kotlin (13)
      • 이론 (1)
      • 기능 정리 (1)
      • [Inflearn] 코틀린 입문 (11)
    • Spring (28)
      • 이론 (1)
      • 프로젝트 (1)
      • 트러블 슈팅 (13)
      • 기능 정리 (12)
      • 리뷰 (1)
    • Java (2)
      • 이론 (2)
    • PS (18)
      • 이론 (1)
      • DFS, BFS, 백트래킹, 다익스트라 (11)
      • DP (2)
      • 이분 탐색 (1)
      • 구현, 시뮬레이션 (1)
      • 그리디 (2)
    • DevOps (4)
      • AWS (4)
  • 홈
  • 태그
  • 방명록

[Chapter1] - 자료 구조가 중요한 까닭

코드 품질과 효율성프로그래밍을 처음 배울 땐 "돌아가기만 하면 성공"이었다면, 시간이 흐르면서 코드의 품질, 특히 효율성이 핵심이 된다.예시: 2부터 100까지의 짝수 출력var i = 0while (i++ var i = 2while (i → 같은 기능이지만 연산 횟수가 다르다. 성능 향상을 위해선 불필요한 연산을 줄이는 것이 핵심이다.자료구조자료구조(Data Structure)란, 데이터를 조직하고 저장하는 방식을 의미하며, 코드 성능에 직접적인 영향을 준다. 속도 비교 시, 실행 시간보단 연산 단계 수 기준이 더 명확한데 이를, 시간 복잡도(Big-O)로 표현한다.코틀린의 배열 종류코틀린에서 기본 타입의 배열을 생성하는 방법은 2가지가 존재한다.val a = IntArray(3) { it + 1 } ..

  • format_list_bulleted Book Study/[CS] 누구나 자료구조와 알고리즘
  • · 2025. 7. 20.
  • textsms

[Chapter1] 스크럼 기초

출근했더니 스크럼 마스터가 된 건에 관하여를 공부하며 정리한 글입니다.틀린 부분은 지적해주시면 감사드리겠습니다 😀스크럼사이드 프로젝트를 하면서 ‘스크럼’이라는 단어를 자주 들어봤지만, 제대로 이해한 적은 없었다. 그렇다면 스크럼은 정확히 무엇일까? 스크럼은 애자일 원칙을 따르는 소프트웨어 개발 프레임워크이다. 복잡하고 변화가 빠른 문제를 해결하기 위해, 소규모 팀이 짧은 주기로 결과를 점진적으로 만들어 나가는 체계라고 볼 수 있다. 즉, 우리가 웹 개발을 할 때 다양한 프레임워크 중 스프링(Spring)을 사용하는 것처럼, 애자일을 실천하는 다양한 방법 중 하나가 스크럼이다.스크럼을 구성하는 핵심3가지 역할프로덕트 오너 (Product Owner)제품에 대한 비전과 방향을 명확히 한다.프로덕트 백로그(..

  • format_list_bulleted Book Study/[Theory] 출.스.마
  • · 2025. 4. 27.
  • textsms

[Chapter5] HTTP2 푸시의 구현

HTTP/2 IN ACTION을 공부하며 정리한 글입니다.틀린 부분은 지적해주시면 감사드리겠습니다 😀HTTP2 서버 푸시기존 HTTP/1.1은 단일 요청-응답 프로토콜이므로, 요청과 응답의 반복(Round Trip)으로 왕복 지연이 발생하게 된다. 하지만, HTTP/2의 경우 서버 푸시를 이용해서, 이를 방지할 수 있다. 서버 푸시란, 클라이언트가 A에 대해 요청을 하고, 서버가 A에 대한 응답과 또 다른 응답을 클라이언트에게 푸시하는 것을 의미한다. 즉, 1요청 -> n응답의 구조가 되는 것이다.왜 필요할까?브라우저는 첫 페이지를 다운로드한 다음, 추가 리소스가 참조된 것을 보고 리소스를 서버에 요청하게 된다. 이미지는 초기 페인트 시간(Initial paint time)을 지연시키지 않지만, 어떤..

  • format_list_bulleted Book Study/[Web] HTTP2 IN ACTION
  • · 2025. 4. 23.
  • textsms

[Chapter4] HTTP2 프로토콜 기초(2)

HTTP/2 IN ACTION을 공부하며 정리한 글입니다.틀린 부분은 지적해주시면 감사드리겠습니다 😀HTTP/2 프레임이전 포스팅에서 설명한 것과 같이, HTTP/2는 스트림이라는 통로를 이용해 프레임이라는 작고 정형화된 데이터 블록 전송하는 것이라고 설명했다. 그렇다면, 이 프레임이라는 것이 무엇을 구성하는지 알아보자. 기본적으로 HTTP/2의 프레임은 각각 고정 길이 헤더를 가지고, 그에 이어지는 페이로드로 구성된다. 여기서 페이로드는 해당 프레임이 실제로 전달하려는 데이터의 내용을 의미한다.앞으로 나올 옥텟이라는 단어는 8비트(1바이트)를 의미하며, HTTP/2처럼 명세나 프로토콜에서는 명확함이 중요하니까, 애매하지 않게 “8비트짜리 단위”라고 확실히 말하려고 옥텟이라는 명칭을 사용한다고 한다...

  • format_list_bulleted Book Study/[Web] HTTP2 IN ACTION
  • · 2025. 4. 20.
  • textsms
[Chapter4] HTTP2 프로토콜 기초(1)

[Chapter4] HTTP2 프로토콜 기초(1)

HTTP/2 IN ACTION을 공부하며 정리한 글입니다.틀린 부분은 지적해주시면 감사드리겠습니다 😀HTTP/2왜 1.2가 아닐까?HTTP/1.1에서 HTTP/1.2가 아닌 HTTP/2로 넘어간 이유는 무엇일까? 앞에서 다룬 내용과 같이, HTTP/2는 HTTP/1의 성능 문제를 해결하고자 만들어졌다. 헤더 압축, 서버 푸시, 스트림 등 이러한 변경 사항은, 하위 프로토콜의 하위 호완을 완전히 깨뜨리는 변경이다. 때문에 HTTP/2는 주요 버전 업그레이드로 간주된다.텍스트 대신 바이너리HTTP/1은 완전히 텍스트 기반이지만, HTTP/2는 바이너리 패킷 기반 프로토콜이다. HTTP/1은 요청을 보낼 때 텍스트 형태로 요청을 보낸다. 텍스트의 경우 사람이 보기 좋지만, 컴퓨터가 해석하기에는 어렵다는 단..

  • format_list_bulleted Book Study/[Web] HTTP2 IN ACTION
  • · 2025. 4. 19.
  • textsms
[Chapter2] HTTP2를 향한 여정

[Chapter2] HTTP2를 향한 여정

HTTP/2 IN ACTION을 공부하며 정리한 글입니다.틀린 부분은 지적해주시면 감사드리겠습니다 😀HTTP/1.1의 성능 문제웹 페이지는 정적인 정보를 제공하는 데에서 시작했다. 하지만 요즘 웹은 대화형으로 동작한다. HTTP/1.1은 애초에 단일 요청-응답 프로토콜이므로, 엄청난 리소스 증가를 염두에 두고 설계되지 않았다. 인터넷의 최대 문제 중 하나는 대기 시간이다. 대기 시간은 단일 메세지를 서버에 전송하는 데 걸리는 시간을 측정하는 것이다. 이를 개선하기 위해, HTTP/1.1에 대한 파이프라이닝을 도입하려고 시도했지만, HOL 블로킹과 같은 이슈로 웹 브라우저와 서버에서 잘 지원되지 않았다.HOL(Head Of Line) 블로킹은 응답이 요청 순서에 따라 반환될 때, 앞선 요청의 지연으로 ..

  • format_list_bulleted Book Study/[Web] HTTP2 IN ACTION
  • · 2025. 3. 26.
  • textsms
  • navigate_before
  • 1
  • 2
  • 3
  • 4
  • ···
  • 9
  • navigate_next
공지사항
전체 카테고리
  • 분류 전체보기 (126)
    • Book Study (49)
      • [Java] 이펙티브 자바 (19)
      • [Kotlin] 코틀린 코루틴 (6)
      • [Kotlin] 코틀린 인 액션 (4)
      • [Kotlin] 객체에서 함수로 (4)
      • [Web] 웹을 지탱하는 기술 (9)
      • [Web] HTTP2 IN ACTION (5)
      • [Spring] 토비의 스프링 3.1 (0)
      • [Theory] 출.스.마 (1)
      • [CS] 누구나 자료구조와 알고리즘 (1)
    • Devlog (12)
      • Kotlin (1)
      • Project (3)
      • Java (0)
      • Git (3)
      • AI (4)
      • 회고 (1)
    • Kotlin (13)
      • 이론 (1)
      • 기능 정리 (1)
      • [Inflearn] 코틀린 입문 (11)
    • Spring (28)
      • 이론 (1)
      • 프로젝트 (1)
      • 트러블 슈팅 (13)
      • 기능 정리 (12)
      • 리뷰 (1)
    • Java (2)
      • 이론 (2)
    • PS (18)
      • 이론 (1)
      • DFS, BFS, 백트래킹, 다익스트라 (11)
      • DP (2)
      • 이분 탐색 (1)
      • 구현, 시뮬레이션 (1)
      • 그리디 (2)
    • DevOps (4)
      • AWS (4)
최근 글
인기 글
최근 댓글
태그
  • #제네릭
  • #자바
  • #코틀린
  • #백트래킹
  • #백준
  • #이펙티브자바
  • #kotlin
  • #java
  • #스프링 배포
  • #이펙티브 자바
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바