소프트웨어공학
데이터 교환 형식 (XML, JSON, YAML, CSV)
데이터 교환 형식의 필요성 서로 다른 환경의 시스템들이 데이터를 온전히 주고받으려면, 메모리 속 객체를 전송 가능한 형태로 변환하는 직렬화(Serialization)와 이를…
콜백 함수 (Callback function)
1. 효율적 비동기 처리, 콜백 함수 (Callback function) 개요 개념 코드 재사용, 비동기 처리를 위해 특정 작업이 완료된 후 실행되도록…
객체지향 모델의 상속 (Inheritance)
1. 코드 재사용성 구현, 객체지향 모델의 상속의 개념 및 목적 (1) 상속 (Inheritance)의 개념 개념도 개념 부모 클래스의 특성을 물려받아…
객체지향 모델의 다형성 (Polymorphism)
1. 코드 유연성 극대화, 객체지향 모델의 다형성의 개념/특징 (1) 다형성 (Polymorphism)의 개념 개념도 개념 같은 메시지(메서드 호출)에 대해 객체의 타입에…
객체지향 모델의 추상화 (Abstraction)
1. 핵심 개념 모델링, 객체지향 모델의 추상화의 개념 및 목적 (1) 추상화 (Abstraction)의 개념 개념도 개념 복잡한 시스템의 핵심 기능을…
객체지향 모델의 캡슐화 (Encapsulation)
1. 객체 정보 은닉, 객체지향 모델의 캡슐화의 개념 및 목적 (1) 캡슐화 (Encapsulation)의 개념 개념도 개념 관련 있는 데이터(속성)와 기능(메서드)을…
CI (Continuous Integration), CD (Continuous Delivery)
1. 기존 개발 환경의 문제점과 CI/CD 도입 필요성 전통적인 개발 환경의 코드 통합과 배포 문제들을 해결하기 위해 작게, 자주, 자동화…
소프트웨어 무중단 배포 전략
1. 소프트웨어 무중단 배포의 개념 및 필요성 Software Zero Downtime Deployment Strategies 개념 실행 중인 소프트웨어의 변경 사항 적용을 위해…
소프트웨어 기술 부채 (Technical Debt)
1. 소프트웨어 기술 부채 (Technical Debt)의 개요 (1) 기술 부채의 개념 및 특징 개념 특징 현 시점에서 장기적으로 더 나은…
바이브 코딩 (Vibe Coding)
1. 바이브 코딩의 개요 (1) 바이브 코딩이 소프트웨어 개발에 미치는 영향 (2) 바이브 코딩의 개념 원하는 기능을 자연어로 입력하여 생성형…