{
    "componentChunkName": "component---src-templates-blog-js",
    "path": "/blog/page/2",
    "result": {"data":{"allMdx":{"nodes":[{"frontmatter":{"title":"[AWS] EKS 버전 업그레이드는 미리미리 하자","description":"Amazon EKS로 쿠버네티스 클러스터를 운영할 경우 꾸준히 버전 업그레이드가 필요합니다. 제때 업그레이드를 하지 않을 경우 추가적인 서버 비용이 발생하고, 시간이 지나면 자동으로 업그레이드되면서 서버 장애가 발생할 수 있습니다.","date":"June 23, 2024","category":"docs","tags":["aws","aws-eks","k8s","devops","infrastructure"],"hero_image":{"childImageSharp":{"gatsbyImageData":{"layout":"constrained","backgroundColor":"#f8f8f8","images":{"fallback":{"src":"/static/e2de4f28311f811f882546c32f0bc5a4/12a3e/thumbnail.png","srcSet":"/static/e2de4f28311f811f882546c32f0bc5a4/9d9e0/thumbnail.png 225w,\n/static/e2de4f28311f811f882546c32f0bc5a4/cc174/thumbnail.png 450w,\n/static/e2de4f28311f811f882546c32f0bc5a4/12a3e/thumbnail.png 900w,\n/static/e2de4f28311f811f882546c32f0bc5a4/4dd11/thumbnail.png 1800w","sizes":"(min-width: 900px) 900px, 100vw"},"sources":[{"srcSet":"/static/e2de4f28311f811f882546c32f0bc5a4/3f003/thumbnail.webp 225w,\n/static/e2de4f28311f811f882546c32f0bc5a4/ba134/thumbnail.webp 450w,\n/static/e2de4f28311f811f882546c32f0bc5a4/e7f7d/thumbnail.webp 900w,\n/static/e2de4f28311f811f882546c32f0bc5a4/fc420/thumbnail.webp 1800w","type":"image/webp","sizes":"(min-width: 900px) 900px, 100vw"}]},"width":900,"height":450}}},"hero_image_alt":"thumbnail image"},"id":"5de041b3-69b0-5e33-98f7-f31a9a413583","slug":"posts/76/"},{"frontmatter":{"title":"[C++] cin, cout과 입출력 연산자 오버로딩","description":"iostream 라이브러리에서 제공하는 std::cin과 std::cout에 대해 알아보고, 입출력 연산자 >>와 <<를 오버로딩하는 방법을 정리하겠습니다.","date":"June 22, 2024","category":"development","tags":["cpp","operator-overloading","input-operator-keyword","output-operator-keyword","syntax"],"hero_image":{"childImageSharp":{"gatsbyImageData":{"layout":"constrained","backgroundColor":"#f8f8f8","images":{"fallback":{"src":"/static/d8738b3ba90599a6ed23c57c6a95b6fb/12a3e/thumbnail.png","srcSet":"/static/d8738b3ba90599a6ed23c57c6a95b6fb/9d9e0/thumbnail.png 225w,\n/static/d8738b3ba90599a6ed23c57c6a95b6fb/cc174/thumbnail.png 450w,\n/static/d8738b3ba90599a6ed23c57c6a95b6fb/12a3e/thumbnail.png 900w,\n/static/d8738b3ba90599a6ed23c57c6a95b6fb/4dd11/thumbnail.png 1800w","sizes":"(min-width: 900px) 900px, 100vw"},"sources":[{"srcSet":"/static/d8738b3ba90599a6ed23c57c6a95b6fb/3f003/thumbnail.webp 225w,\n/static/d8738b3ba90599a6ed23c57c6a95b6fb/ba134/thumbnail.webp 450w,\n/static/d8738b3ba90599a6ed23c57c6a95b6fb/e7f7d/thumbnail.webp 900w,\n/static/d8738b3ba90599a6ed23c57c6a95b6fb/fc420/thumbnail.webp 1800w","type":"image/webp","sizes":"(min-width: 900px) 900px, 100vw"}]},"width":900,"height":450}}},"hero_image_alt":"thumbnail image"},"id":"5358079e-f6e1-5d7e-a116-0c99e41dd571","slug":"posts/75/"},{"frontmatter":{"title":"[C++] 사칙연산 연산자 오버로딩","description":"C++에서 지원하는 연산자 오버로딩에 대해 설명하고, +, -, *, /, % 연산자들을 오버로딩하는 방법 및 세부 문법에 대해 정리하겠습니다.","date":"June 22, 2024","category":"development","tags":["cpp","operator-overloading","arithmetic-operation","syntax"],"hero_image":{"childImageSharp":{"gatsbyImageData":{"layout":"constrained","backgroundColor":"#f8f8f8","images":{"fallback":{"src":"/static/2b066785a4b153906fd2a3a8e7ad0dab/12a3e/thumbnail.png","srcSet":"/static/2b066785a4b153906fd2a3a8e7ad0dab/9d9e0/thumbnail.png 225w,\n/static/2b066785a4b153906fd2a3a8e7ad0dab/cc174/thumbnail.png 450w,\n/static/2b066785a4b153906fd2a3a8e7ad0dab/12a3e/thumbnail.png 900w,\n/static/2b066785a4b153906fd2a3a8e7ad0dab/4dd11/thumbnail.png 1800w","sizes":"(min-width: 900px) 900px, 100vw"},"sources":[{"srcSet":"/static/2b066785a4b153906fd2a3a8e7ad0dab/3f003/thumbnail.webp 225w,\n/static/2b066785a4b153906fd2a3a8e7ad0dab/ba134/thumbnail.webp 450w,\n/static/2b066785a4b153906fd2a3a8e7ad0dab/e7f7d/thumbnail.webp 900w,\n/static/2b066785a4b153906fd2a3a8e7ad0dab/fc420/thumbnail.webp 1800w","type":"image/webp","sizes":"(min-width: 900px) 900px, 100vw"}]},"width":900,"height":450}}},"hero_image_alt":"thumbnail image"},"id":"d13a2815-fc29-57e4-bdbf-d0e23b3ea64f","slug":"posts/74/"},{"frontmatter":{"title":"[C++] friend 키워드의 활용","description":"C++의 friend 키워드에 대해 정리하고, 주의사항에 대해 가볍게 정리하겠습니다.","date":"June 21, 2024","category":"development","tags":["cpp","friend-keword","syntax"],"hero_image":{"childImageSharp":{"gatsbyImageData":{"layout":"constrained","backgroundColor":"#f8f8f8","images":{"fallback":{"src":"/static/9957f7acfb0caa2b48e95f24e676c4e0/12a3e/thumbnail.png","srcSet":"/static/9957f7acfb0caa2b48e95f24e676c4e0/9d9e0/thumbnail.png 225w,\n/static/9957f7acfb0caa2b48e95f24e676c4e0/cc174/thumbnail.png 450w,\n/static/9957f7acfb0caa2b48e95f24e676c4e0/12a3e/thumbnail.png 900w,\n/static/9957f7acfb0caa2b48e95f24e676c4e0/4dd11/thumbnail.png 1800w","sizes":"(min-width: 900px) 900px, 100vw"},"sources":[{"srcSet":"/static/9957f7acfb0caa2b48e95f24e676c4e0/3f003/thumbnail.webp 225w,\n/static/9957f7acfb0caa2b48e95f24e676c4e0/ba134/thumbnail.webp 450w,\n/static/9957f7acfb0caa2b48e95f24e676c4e0/e7f7d/thumbnail.webp 900w,\n/static/9957f7acfb0caa2b48e95f24e676c4e0/fc420/thumbnail.webp 1800w","type":"image/webp","sizes":"(min-width: 900px) 900px, 100vw"}]},"width":900,"height":450}}},"hero_image_alt":"thumbnail image"},"id":"6969dfce-c7c5-533c-b2c0-58130bc37d8c","slug":"posts/73/"},{"frontmatter":{"title":"[C++] const 키워드의 활용","description":"C언어에서의 const 키워드를 가볍게 복습하고, const 객체, const 함수, const 매개변수, const 반환형, 형 변환 연산자 const_cast, mutable 키워드 등에 대해 포괄적으로 정리하겠습니다.","date":"June 20, 2024","category":"development","tags":["cpp","const-keyword","mutable-keyword","const-cast","copy-constructor","pointer","class","syntax"],"hero_image":{"childImageSharp":{"gatsbyImageData":{"layout":"constrained","backgroundColor":"#f8f8f8","images":{"fallback":{"src":"/static/8b2e600740f199c315237a5518ecca9f/12a3e/cpp-const-keyword-wide.png","srcSet":"/static/8b2e600740f199c315237a5518ecca9f/9d9e0/cpp-const-keyword-wide.png 225w,\n/static/8b2e600740f199c315237a5518ecca9f/cc174/cpp-const-keyword-wide.png 450w,\n/static/8b2e600740f199c315237a5518ecca9f/12a3e/cpp-const-keyword-wide.png 900w,\n/static/8b2e600740f199c315237a5518ecca9f/4dd11/cpp-const-keyword-wide.png 1800w","sizes":"(min-width: 900px) 900px, 100vw"},"sources":[{"srcSet":"/static/8b2e600740f199c315237a5518ecca9f/3f003/cpp-const-keyword-wide.webp 225w,\n/static/8b2e600740f199c315237a5518ecca9f/ba134/cpp-const-keyword-wide.webp 450w,\n/static/8b2e600740f199c315237a5518ecca9f/e7f7d/cpp-const-keyword-wide.webp 900w,\n/static/8b2e600740f199c315237a5518ecca9f/fc420/cpp-const-keyword-wide.webp 1800w","type":"image/webp","sizes":"(min-width: 900px) 900px, 100vw"}]},"width":900,"height":450}}},"hero_image_alt":"cpp const keyword image"},"id":"861b3f18-4888-5239-8e9f-edfd2913a69b","slug":"development/cpp-const-keyword/"},{"frontmatter":{"title":"[리뷰] 윤성우의 열혈 C++ 프로그래밍 독후감","description":"지인으로부터 선물받은 윤성우의 열혈 C++ 프로그래밍이라는 서적을 완독하였습니다. 책에 대한 짧은 후기를 남기고자 합니다.","date":"June 19, 2024","category":"essay","tags":["book-review","cpp","syntax"],"hero_image":{"childImageSharp":{"gatsbyImageData":{"layout":"constrained","backgroundColor":"#f8f8f8","images":{"fallback":{"src":"/static/94e8dae09968ffa6ac6c0dcc0d524831/12a3e/passionate-cpp-book-review-wide.png","srcSet":"/static/94e8dae09968ffa6ac6c0dcc0d524831/9d9e0/passionate-cpp-book-review-wide.png 225w,\n/static/94e8dae09968ffa6ac6c0dcc0d524831/cc174/passionate-cpp-book-review-wide.png 450w,\n/static/94e8dae09968ffa6ac6c0dcc0d524831/12a3e/passionate-cpp-book-review-wide.png 900w,\n/static/94e8dae09968ffa6ac6c0dcc0d524831/4dd11/passionate-cpp-book-review-wide.png 1800w","sizes":"(min-width: 900px) 900px, 100vw"},"sources":[{"srcSet":"/static/94e8dae09968ffa6ac6c0dcc0d524831/3f003/passionate-cpp-book-review-wide.webp 225w,\n/static/94e8dae09968ffa6ac6c0dcc0d524831/ba134/passionate-cpp-book-review-wide.webp 450w,\n/static/94e8dae09968ffa6ac6c0dcc0d524831/e7f7d/passionate-cpp-book-review-wide.webp 900w,\n/static/94e8dae09968ffa6ac6c0dcc0d524831/fc420/passionate-cpp-book-review-wide.webp 1800w","type":"image/webp","sizes":"(min-width: 900px) 900px, 100vw"}]},"width":900,"height":450}}},"hero_image_alt":"passionate cpp book review image"},"id":"e5fe77ba-f0d1-5376-a042-2ca2ebf0cd9b","slug":"essay/passionate-cpp-book-review/"},{"frontmatter":{"title":"[C++] 가상 소멸자와 메모리 누수","description":"소멸자 문법에 대해 간략히 정리하고 소멸자를 통해 메모리 누수를 방지하는 방법에 대해 알아봅니다. 상속 문법의 경우 최상위 클래스에 가상 소멸자를 정의해야 하는 경우와 필요성에 대해 정리해봅니다.","date":"June 9, 2024","category":"development","tags":["cpp","destructor","virtual-keyword","virtual-destructor","memory-leak","syntax"],"hero_image":{"childImageSharp":{"gatsbyImageData":{"layout":"constrained","backgroundColor":"#f8f8f8","images":{"fallback":{"src":"/static/90bcfbb4028bb5d2db8b5ecb38fedec5/12a3e/cpp-destructor-and-memory-leak-wide.png","srcSet":"/static/90bcfbb4028bb5d2db8b5ecb38fedec5/9d9e0/cpp-destructor-and-memory-leak-wide.png 225w,\n/static/90bcfbb4028bb5d2db8b5ecb38fedec5/cc174/cpp-destructor-and-memory-leak-wide.png 450w,\n/static/90bcfbb4028bb5d2db8b5ecb38fedec5/12a3e/cpp-destructor-and-memory-leak-wide.png 900w,\n/static/90bcfbb4028bb5d2db8b5ecb38fedec5/4dd11/cpp-destructor-and-memory-leak-wide.png 1800w","sizes":"(min-width: 900px) 900px, 100vw"},"sources":[{"srcSet":"/static/90bcfbb4028bb5d2db8b5ecb38fedec5/3f003/cpp-destructor-and-memory-leak-wide.webp 225w,\n/static/90bcfbb4028bb5d2db8b5ecb38fedec5/ba134/cpp-destructor-and-memory-leak-wide.webp 450w,\n/static/90bcfbb4028bb5d2db8b5ecb38fedec5/e7f7d/cpp-destructor-and-memory-leak-wide.webp 900w,\n/static/90bcfbb4028bb5d2db8b5ecb38fedec5/fc420/cpp-destructor-and-memory-leak-wide.webp 1800w","type":"image/webp","sizes":"(min-width: 900px) 900px, 100vw"}]},"width":900,"height":450}}},"hero_image_alt":"cpp destructor and memory leak image"},"id":"be99e8cc-613a-57e8-912a-43b9b53fc961","slug":"development/cpp-destructor-and-memory-leak/"},{"frontmatter":{"title":"[C++] 다형성과 가상 함수","description":"C++에서 다형성을 구현하기 위해 필수적으로 알아야 하는 기초 개념 및 문법을 간단히 정리하였습니다. 추가로 Java와의 비교를 통해 가상함수의 필요성을 정리하였습니다.","date":"June 8, 2024","category":"development","tags":["cpp","polymorphism","polymorphic-class","virtual-function","virtual-keyword","syntax","java"],"hero_image":{"childImageSharp":{"gatsbyImageData":{"layout":"constrained","backgroundColor":"#f8f8f8","images":{"fallback":{"src":"/static/235bd275b6e4b3c0be12bec9b2d742d1/12a3e/cpp-polymorphism-and-virtual-function-wide.png","srcSet":"/static/235bd275b6e4b3c0be12bec9b2d742d1/9d9e0/cpp-polymorphism-and-virtual-function-wide.png 225w,\n/static/235bd275b6e4b3c0be12bec9b2d742d1/cc174/cpp-polymorphism-and-virtual-function-wide.png 450w,\n/static/235bd275b6e4b3c0be12bec9b2d742d1/12a3e/cpp-polymorphism-and-virtual-function-wide.png 900w,\n/static/235bd275b6e4b3c0be12bec9b2d742d1/4dd11/cpp-polymorphism-and-virtual-function-wide.png 1800w","sizes":"(min-width: 900px) 900px, 100vw"},"sources":[{"srcSet":"/static/235bd275b6e4b3c0be12bec9b2d742d1/3f003/cpp-polymorphism-and-virtual-function-wide.webp 225w,\n/static/235bd275b6e4b3c0be12bec9b2d742d1/ba134/cpp-polymorphism-and-virtual-function-wide.webp 450w,\n/static/235bd275b6e4b3c0be12bec9b2d742d1/e7f7d/cpp-polymorphism-and-virtual-function-wide.webp 900w,\n/static/235bd275b6e4b3c0be12bec9b2d742d1/fc420/cpp-polymorphism-and-virtual-function-wide.webp 1800w","type":"image/webp","sizes":"(min-width: 900px) 900px, 100vw"}]},"width":900,"height":450}}},"hero_image_alt":"cpp polymorphism and virtual function image"},"id":"a334dea1-745b-55db-999f-3f110318cce0","slug":"development/cpp-polymorphism-and-virtual-function/"},{"frontmatter":{"title":"[C++] 접근제어자와 상속","description":"C++에서는 상위클래스의 멤버들을 상속받을 때 접근제어자를 변형시킬 수 있는 문법을 제공합니다. 접근제어자들에 대해 가볍게 다루고, public 상속, protected 상속, private 상속에 대해 정리해보겠습니다.","date":"June 8, 2024","category":"development","tags":["cpp","access-modifier","public-keyword","protected-keyword","private-keyword","inheritance","syntax"],"hero_image":{"childImageSharp":{"gatsbyImageData":{"layout":"constrained","backgroundColor":"#f8f8f8","images":{"fallback":{"src":"/static/20e762b9d09e6ba2ad7ce65c6f144813/12a3e/cpp-access-modifier-and-inheritance-wide.png","srcSet":"/static/20e762b9d09e6ba2ad7ce65c6f144813/9d9e0/cpp-access-modifier-and-inheritance-wide.png 225w,\n/static/20e762b9d09e6ba2ad7ce65c6f144813/cc174/cpp-access-modifier-and-inheritance-wide.png 450w,\n/static/20e762b9d09e6ba2ad7ce65c6f144813/12a3e/cpp-access-modifier-and-inheritance-wide.png 900w,\n/static/20e762b9d09e6ba2ad7ce65c6f144813/4dd11/cpp-access-modifier-and-inheritance-wide.png 1800w","sizes":"(min-width: 900px) 900px, 100vw"},"sources":[{"srcSet":"/static/20e762b9d09e6ba2ad7ce65c6f144813/3f003/cpp-access-modifier-and-inheritance-wide.webp 225w,\n/static/20e762b9d09e6ba2ad7ce65c6f144813/ba134/cpp-access-modifier-and-inheritance-wide.webp 450w,\n/static/20e762b9d09e6ba2ad7ce65c6f144813/e7f7d/cpp-access-modifier-and-inheritance-wide.webp 900w,\n/static/20e762b9d09e6ba2ad7ce65c6f144813/fc420/cpp-access-modifier-and-inheritance-wide.webp 1800w","type":"image/webp","sizes":"(min-width: 900px) 900px, 100vw"}]},"width":900,"height":450}}},"hero_image_alt":"cpp access modifier and inheritance image"},"id":"37d98096-52c5-514f-a340-6d1806f80e49","slug":"development/cpp-access-modifier-and-inheritance/"},{"frontmatter":{"title":"[C++] 복사 생성자 문법","description":"C++의 복사 생성자는 매개변수로 같은 타입의 객체를 넘겨받고 그 내용을 복사하여 생성하는 생성자입니다. 복사 생성자의 호출 시점, 디폴트 복사 생성자, 얕은 복사와 깊은 복사, explicit 키워드에 대해 정리하겠습니다.","date":"May 28, 2024","category":"development","tags":["cpp","copy-constructor","explicit-keyword","shallow-copy","deep-copy","syntax"],"hero_image":{"childImageSharp":{"gatsbyImageData":{"layout":"constrained","backgroundColor":"#f8f8f8","images":{"fallback":{"src":"/static/2f86c9d2a7d8fbc75d1df79e1f68ea22/12a3e/cpp-copy-constructor-syntax-wide.png","srcSet":"/static/2f86c9d2a7d8fbc75d1df79e1f68ea22/9d9e0/cpp-copy-constructor-syntax-wide.png 225w,\n/static/2f86c9d2a7d8fbc75d1df79e1f68ea22/cc174/cpp-copy-constructor-syntax-wide.png 450w,\n/static/2f86c9d2a7d8fbc75d1df79e1f68ea22/12a3e/cpp-copy-constructor-syntax-wide.png 900w,\n/static/2f86c9d2a7d8fbc75d1df79e1f68ea22/4dd11/cpp-copy-constructor-syntax-wide.png 1800w","sizes":"(min-width: 900px) 900px, 100vw"},"sources":[{"srcSet":"/static/2f86c9d2a7d8fbc75d1df79e1f68ea22/3f003/cpp-copy-constructor-syntax-wide.webp 225w,\n/static/2f86c9d2a7d8fbc75d1df79e1f68ea22/ba134/cpp-copy-constructor-syntax-wide.webp 450w,\n/static/2f86c9d2a7d8fbc75d1df79e1f68ea22/e7f7d/cpp-copy-constructor-syntax-wide.webp 900w,\n/static/2f86c9d2a7d8fbc75d1df79e1f68ea22/fc420/cpp-copy-constructor-syntax-wide.webp 1800w","type":"image/webp","sizes":"(min-width: 900px) 900px, 100vw"}]},"width":900,"height":450}}},"hero_image_alt":"cpp copy constructor syntax image"},"id":"6c5c012b-2304-5a29-a9e9-dcb1f44c4d99","slug":"development/cpp-copy-constructor-syntax/"}],"pageInfo":{"currentPage":2,"hasNextPage":true,"hasPreviousPage":true,"pageCount":9,"totalCount":86}}},"pageContext":{"skip":10}},
    "staticQueryHashes": ["1903006949","272758454"]}