
[☕JAVA] 객체 지향 프로그래밍(OOP)
이번 포스팅에서는 절차 지향 프로그래밍에서 출발해 점진적으로 코드를 개선하며 진정한 객체 지향 프로그래밍이 무엇인지 익혀먹어 보자. 절차 지향 vs. 객체 지향 🤔 프로그래밍 패러다임은 크게 두 가지로 나눌 수 있다. 절차 지향 프로그래밍 (Procedural Programming) 실행 순서, 즉 “어떻게” 동작할지...
이번 포스팅에서는 절차 지향 프로그래밍에서 출발해 점진적으로 코드를 개선하며 진정한 객체 지향 프로그래밍이 무엇인지 익혀먹어 보자. 절차 지향 vs. 객체 지향 🤔 프로그래밍 패러다임은 크게 두 가지로 나눌 수 있다. 절차 지향 프로그래밍 (Procedural Programming) 실행 순서, 즉 “어떻게” 동작할지...
자바를 깊이 이해하기 위해 반드시 넘어야 할 산, 바로 기본형과 참조형의 차이이다. 이 개념을 확실히 잡아야 변수가 메모리에서 어떻게 동작하는지, 왜 어떤 값은 메서드 안에서 바뀌고 어떤 값은 바뀌지 않는지 명확히 알 수 있다. 이번 포스팅에서 확실하게 익혀 먹어보자. 기본형 vs. 참조형: 무엇이 다른가? 🤔 자바의 변수 타입은 크게 기본형(...
자바의 핵심 개념인 클래스가 왜 필요한지, 그리고 클래스를 통해 어떻게 데이터를 효과적으로 관리할 수 있는지 단계별로 알아보자 자바 세상은 클래스(Class)와 객체(Object)로 이루어져 있다. 그만큼 클래스와 객체라는 개념은 정말 중요함! 이 두 가지를 한번에 이해하기 쉽지 않다. 예시를 보며 천천히 개념을 익혀먹어 보자. 클래스는 왜 필...
🍀 운영체제 전공 수업 정리 Allocation of Frames 📚Allocation of Frames: 여러 프로세스가 동시에 실행될 때 각각에게 얼마만큼의 메모리 공간(프레임)을 줄지 정하는 것 각 프로세스가 필요로하는 frame의 수는 minimum이 존재함 maximum은 시스템의 전체 프레임 수 너무 적게 주면 ...
⚙ Computer Architecture 공부 Direct Mapped Cache for Real World 📝주소 구조(32-bit): Tag (20bits): 데이터를 식별하는 고유 번호 Index (10bits): 캐시 블록을 선택하는 번호 Byte Offset (2bits): 블록 내에서 특정 바이트를 선택 💾Cach...
⚙ Computer Architecture 공부 Cache 배치 방식은 세 가지 방식이 존재! Direct Mapped Cache (직접 매핑 캐시) 각 데이터가 캐시에서 정확히 한 곳에만 저장될 수 있음 장점: 구현이 간단하고 빠름 단점: 유연성이 떨어짐 ...
⚙ Computer Architecture 공부 Direct Mapped Cache - Index 📚Index: cache block number = (Memory Addr) mod (Number of Cache Blocks) (나머지 값) 캐시 블록 수가 8개(2³)라면, 메모리 주소의 하위 3비트가 인덱스 ...
🍀 운영체제 전공 수업 정리 메모리가 모두 사용되어 새로운 page를 로드할 공간이 없다면 어떻게 될까? 만약 free frame이 없다면?? Page replacement 페이지 교체가 발생함! 📚Page replacement: 메모리에 잘 사용되지 않는 page를 찾았다면 page out을 해서 공간을 만들어 냄 page...
🍀 운영체제 전공 수업 정리 우리가 실제로 사용하는 논리 주소는 사실 가상 주소이다. 우리가 어떤 프로그램을 돌릴 때 전체 프로그램을 사용하지는 않는다 가상메모리는 필요한 부분만 가져오기 때문! 즉, 프로그램 전체를 가져오지 말고 일부만 가져온다 물리적인 메모리도 적게 씀 각 프로그래이 메모리를 적게 쓰기 때문에 더 ...
⚙ Computer Architecture 공부 MEMORY TECHNOLOGIES SRAM (Static RAM): 가장 빠르지만 가장 비싸고 용량이 작음 (캐시 메모리로 사용) DRAM (Dynamic RAM): 중간 속도, 중간 비용, 중간 용량 (메인 메모리로 사용) SSD: DRAM보다 느리지만 대용량, 상대적으로 저렴 ...