본문 바로가기
반응형

CS16

[CS] 오버라이딩(Overriding)과 오버로딩(Overloading) ✔️오버라이딩(Overriding)이란? 오버라이딩은 객체 지향 프로그래밍(OOP)에서 중요한 개념 중 하나로, 부모 클래스(또는 슈퍼 클래스)의 메서드를 자식 클래스(또는 서브 클래스)에서 다시 정의하여 사용하는 것을 의미합니다. 이를 통해 자식 클래스는 부모 클래스의 동일한 이름의 메서드를 가지고 있지만, 그 메서드의 동작을 자신의 필요에 맞게 변경할 수 있습니다. 오버라이딩은 다형성(Polymorphism)의 핵심 원칙 중 하나이며, 자식 클래스가 부모 클래스의 메서드를 덮어쓰는 것을 가능하게 합니다. 💡오버라이딩 규칙 메서드 이름, 매개변수의 수, 매개변수의 타입은 부모 클래스의 메서드와 동일해야 합니다. 자식 클래스에서 오버라이딩한 메서드는 @Override 어노테이션을 사용해 표시할 수 있습니.. 2023. 9. 15.
[CS] MSA(Micro Service Architecture) ✔️MSA란? MSA는 소프트웨어 시스템을 작은 독립적인 서비스로 나누고, 각 서비스가 서로 협력하여 전체 애플리케이션을 구성하는 아키텍처 패턴입니다. MSA는 모놀리식(monolithic) 아키텍처와 대조되며, 애플리케이션을 하나의 대규모 모놀리식 애플리케이션 대신 작고 독립적인 서비스로 분해합니다. 💡MSA 특징 독립적인 서비스: 각 마이크로서비스는 특정한 비즈니스 기능을 수행하며, 서로 독립적으로 배포 및 확장 가능합니다. 효율적인 개발 및 배포: 각 마이크로서비스는 작고 간단하기 때문에 더 빠르게 개발하고 배포할 수 있습니다. 이로 인해 개발자 팀 간 협업이 쉬워집니다. 기술 다양성: 각 서비스는 자체 기술 스택을 선택할 수 있으므로 최신 기술을 도입하거나 레거시 시스템을 통합할 수 있습니다. 확.. 2023. 9. 11.
[CS] 도커와 쿠버네티스 (컨테이너) ✔️컨테이너란? 컨테이너는 가상화 기술 중 하나로, 애플리케이션과 그에 필요한 모든 종속성을 패키징하고 격리된 환경에서 실행할 수 있도록 하는 기술입니다. 컨테이너는 소프트웨어를 쉽게 이동하고 배포할 수 있도록 도와주며, 다양한 운영 체제와 환경에서 일관된 실행 환경을 제공합니다. 이를 통해 애플리케이션의 개발, 테스트 및 배포를 간소화하고 효율성을 높일 수 있습니다. 💡컨테이너의 주요 개념,특징 이식성: 컨테이너는 실행 환경과 무관하게 동작하므로, 로컬 개발 환경에서부터 클라우드, 데이터 센터, 다른 운영 체제까지 어디서든 실행 가능합니다. 경량화: 가상 머신(Virtual Machine, VM)과 비교해 컨테이너는 더 가볍습니다. 이는 빠른 시작과 중지, 더 적은 자원 사용을 의미합니다. 이미지 기반.. 2023. 9. 4.
[CS] 깃(Git)과 깃허브(Github) ✔️깃(Git)이란? Git은 분산 버전 관리 시스템(Distributed Version Control System)으로, 소스 코드 및 파일의 변경 이력을 관리하고 협업을 용이하게 만들어주는 도구입니다. Git은 리눅스 커널 개발자인 리누스 토발즈에 의해 개발되었으며, 빠른 속도와 간편한 브랜치 전환 등의 특징으로 많은 개발자들에게 사랑받는 도구입니다. 💡깃(Git)의 주요 개념 Repository (저장소): 파일 및 이력 정보를 저장하는 공간. 로컬 저장소와 원격 저장소로 나뉩니다. Commit: 파일의 변경 내용을 저장하는 작업 단위. 각 Commit은 고유한 식별자(해시)를 가집니다. Branch (브랜치): 독립된 작업 공간을 만들어 여러 작업을 동시에 진행할 수 있도록 해줍니다. Merge:.. 2023. 8. 29.
반응형