IPv4와 IPv6 총정리 – 단순한 버전 업이 아닌, 네트워크 철학의 변화 🔷 1. 정의 – IPv4와 IPv6는 무엇인가? IP(Internet Protocol) 주소는 인터넷에 연결된 모든 기기에 부여되는 식별 번호입니다. 이 주소를 통해 컴퓨터, 스마트폰, 서버 등 다양한 장치들이 서로를 인식하고 통신할 수 있습니다. IPv4 (Internet Protocol version 4) 1981년에 도입된 인터넷 주소 체계이며, 32비트 주소를 사용합니다. 예: 192.168.0.1 IPv6 (Internet Protocol version 6) 1998년에 개발된 차세대 주소 체계로, 128비트 주소를 사용합니다. 예: 2001:0db8:85a3::8a2e:0..
DROP vs DELETE 차이점 – 혼동은 왜 생기고, 어디서부터 갈리는가? 🔷 1. 왜 헷갈릴까? DROP과 DELETE는 모두 데이터베이스에서 ‘삭제’라는 기능을 수행합니다. DELETE는 데이터를 지우고, DROP은 테이블을 지운다는 설명은 익숙합니다. 그래서 많은 사람들이 이렇게 생각합니다: “DELETE로 테이블 안에 있는 모든 데이터를 지우면, 결국 테이블은 비게 되잖아? 그럼 DROP이랑 뭐가 다르지?” “DROP도 어차피 삭제 명령인데, DELETE처럼 나중에 취소할 수 있으면 안 될까?” 이 질문들은 단순한 혼동이 아닙니다. 둘 다 같은 '삭제'라는 단어를 쓰면서, 실제로는 전혀 다른 작동 원리, 철학, 복구 가능성을 갖고 있기 때문입니다. ..
🏗 소프트웨어 품질을 어떻게 평가할까? – ISO/IEC 25000 완전 정리 🔷 1. 정의 ISO/IEC 25000은 소프트웨어의 품질을 체계적으로 정의하고, 평가하고, 개선하기 위한 국제 표준 시리즈입니다. 이 표준의 정식 명칭은 다음과 같습니다: Systems and software Quality Requirements and Evaluation 줄여서 SQuaRE (스퀘어)라고 부릅니다. 즉, ISO/IEC 25000은 “소프트웨어의 품질이란 무엇인가?”에 대한 국제적인 합의이며, 이를 통해 누구든 같은 기준으로 소프트웨어의 품질을 평가할 수 있도록 돕습니다. 🔷 2. 왜 필요한가? 소프트웨어 품질은 애매한 개념입니다. 사람에 따라 기준이 다릅니다: ..
🧩 프로그램끼리 어떻게 말할까? – 데이터 포맷 완전 정리 🔷 1. 인터페이스 간 통신이란? 컴퓨터 프로그램은 혼자 일하지 않습니다. 앱은 서버와, 서버는 또 다른 프로그램과 계속해서 정보를 주고받습니다. 이때 서로 다른 프로그램이 데이터를 주고받기 위해 맞춘 약속이 필요합니다. 그게 바로 데이터 포맷입니다. 예를 들어, 사람끼리 한국어, 영어 같은 언어로 대화하듯이 프로그램끼리는 JSON, XML 같은 정해진 데이터 형식으로 대화합니다. 🔷 2. 왜 데이터 포맷이 필요할까? 문자 그대로 데이터를 아무렇게나 보낸다면 프로그램이 알아들을 수 없습니다. 이름:홍길동 나이:20 ← 사람은 읽을 수 있지만, 컴퓨터는 “이게 뭐지?” 싶겠죠. 반대로 {"name..
🔷 가상 소멸자(Virtual Destructor): 포인터 해석 범위의 한계와 객체 소멸의 불완전성✅ 1. 정의가상 소멸자(Virtual Destructor)란 C++에서 상속 관계의 클래스 구조에서, 기본 클래스 포인터를 통해 파생 클래스 객체를 삭제할 때, 파생 클래스의 소멸자가 반드시 먼저 호출되도록 보장하는 언어적 장치입니다.이는 기본 클래스의 소멸자 앞에 virtual 키워드를 명시함으로써, 실제 객체의 타입에 따라 런타임 시점에서 소멸자 호출 경로를 결정하게 하는 구조입니다.❓ 2. 필요성 – 왜 부모 포인터로 자식 객체를 삭제하면 문제가 생기는가?다음은 가장 흔한 구조의 C++ 코드입니다.#include using namespace std;class Animal {public: An..
🔐 암호 알고리즘의 두 기둥 대칭 vs 비대칭, 어떤 암호가 더 안전할까? "인터넷에서 뭔가를 보낼 때, 그게 다른 사람한테 안 보이게 하려면 어떻게 해야 할까?" 이 질문은 정보보안의 가장 핵심적인 주제입니다. 바로 ‘암호화(Encryption)’라는 개념이죠. 이 글에서는 암호화가 무엇인지부터 시작해서, 대칭 암호 방식과 비대칭 암호 방식이 어떻게 다르고, 왜 각각의 방식이 필요한지, 실생활에서 어떤 식으로 사용되는지까지 하나하나 차근차근 풀어드리겠습니다. 🧩 1. 암호화란 무엇인가? 암호화(Encryption)란, 어떤 정보를 특정한 방법으로 알아볼 수 없게 만드는 것입니다. 예..
📚 라이브러리와 프레임워크, 같은 듯 다른 개발 도구의 모든 것 "코드를 짤 때 쓰는 도구라는데… 정확히 뭐가 다른 거지?" 개발을 처음 접하면, 자주 듣게 되는 두 용어가 있습니다. 바로 ‘라이브러리’와 ‘프레임워크’입니다. 둘 다 프로그램을 만들 때 쓰는 도구이고, 코드를 덜 쓰게 해준다고 하니 비슷하게 느껴집니다. 하지만 이 둘은 아예 성격이 다르며, 제대로 구분하지 못하면 프로그램을 잘못 구성하거나, 시간과 노력을 낭비할 수 있습니다. 이 글에서는 왜 이런 도구들이 필요하게 되었는지, 무엇이 같고, 무엇이 다른지, 실제 예시를 통해 자연스럽게 이해하실 수 있도록 정리해드리겠습니다. ..
2025.04.29 - [프로그래밍/홍정모의 따라배우는 C++] - 가상함수란 무엇인가? 1. 문제편 가상함수란 무엇인가? 1. 문제편🔷 가상함수와 메모리: 객체의 진짜 모습을 찾아가는 여정✅ 1. 가상함수란 무엇인가?가상함수(virtual function)란,"프로그램이 실행될 때, 객체의 실제 종류에 따라 호출할 함수를 결정하는 기능"eunjin123123.tistory.com 🔷 4. 가상함수(virtual function)를 통해 문제를 해결하다✅ 4.1 해결을 먼저 보여주기: 가상함수 추가앞까지 우리는 포인터 타입이 Animal*일 경우, 실제 객체가 Dog이더라도 Animal::sound()가 호출되는 문제를 확인했습니다.이제 이 문제를 해결해보겠습니다. 바로 virtual 키워드를 ..
- Total
- Today
- Yesterday
- 통계
- 뇌와행동의기초
- 정보처리기사
- 회계
- 여인권
- 통계학
- 류근관
- 사회심리학
- 강화학습
- 백준
- 오블완
- 파이썬
- 윤성우
- 심리학
- 데이터분석
- 인프런
- C/C++
- 보세사
- 일본어
- 일문따
- C
- 인지부조화
- K-MOOC
- 티스토리챌린지
- 코딩테스트
- c++
- 열혈프로그래밍
- stl
- 일본어문법무작정따라하기
- Python
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |