728x90

멋사 4

[대학교멋사🦁/OOD] 3. 상속 보다 조립

대개 상위 클래스의 기능을 재사용, 확장하는 방법으로 활용 # 단점 상위 클래스 변경의 어려움 존재 상위클래스의 변경이 모든 하위클래스에 영향을 미침 앞으로 어떤 하위클래스가 추가될 지 모르기에 영향력의 크기가 점점 증가 캡슐화가 약해짐 하위클래스는 상위클래스가 어느정도 어떠한 동작을 하는지를 알아야 하는 경우가 발생 => 상위클래스는 하위클래스에게 캡슐화의 의미가 약해지고이따지요 클래스의 불필요한 증가 새로 클래스가 생성될 때마다 또 다른 하위 크래스가 생성 어떤 클래스를 상속받아서 구현을 진행해야하는지 불명확한 상태가 발생하기도 함 상속 오용 상속받은 메소드의 오용이 발생 # 그럼 워떠케? 조립하자!! # 조립(Composition) 여러 객체를 묶어 더 복잡한 기능을 제공 보통 필드로 다른 객체를 ..

[대학교멋사🦁/스터디] #2 Git | 추상클래스, 인터페이스 | SOLID 원칙

Q1. Git이란? 소프트웨어를 개발하는 기업의 핵심 자산인 소스코드를 효과적으로 관리할 수 있게 해주는 무료 공개소프트웨어. Git은 버전 관리 시스템(==형상관리도구) 중 하나로 Git Repository라고 불리는 데이터 저상소에 소스 코드 등을 넣어서 이용 개발자간의 협업 및 전체 개발 소스 공유를 위해 프로그램의 버전 관리가 필요 => 이를 관리해주는 것이 GIt 깃허브란? Git 호스팅 사이트 중 하나 내 로컬 저장소와 원격 저장소를 연결하여 파일을 백업하거나 관리 Git의 특징 3.1 Distributed development Git repository를 인터넷 상에서 제공하는 서비스(호스팅 서비스) == Github 분산형 관리 시스템 이러한 변경은 추가개발지점(branch)을 가져와, 로..

[대학교멋사🦁/JAVA] Assignment_2회차_3

학생의 성적을 관리하는 프로그램인 StudentManager은 인터페이스입니다. 이 인터페이스를 분석하여 Student class와 StudentManager의 구현체를 완성하세요 조건 : list와 인터페이스를 활용하여 과제를 완성합니다. # StudentManager : Interface package week2.assignment_3; public interface StudentManager { void addStudent(Student student); void updateStudent(String name, double score); void deleteStudent(String name); void printAllStudents(); } # Student : class package week2..

[대학교멋사🦁/JAVA] Assignment_2회차_1

Collection 을 사용하여 여러가지 간단한 문제를 구현해 보도록 합니다 뚜둔. 1. 다섯 명을 입력받고 이 씨 성인 사람을 출력하는 프로그램입니다 조건 : list을 활용하여 과제를 완성합니다. package week2.assignment_1; import java.util.*; public class assignment_1_1 { // 이씨 성을 가진 사람을 찾는 메소드 public static void findLees(List list){ for(String name : list){ if(name.contains("이")){ System.out.println(name); } } } public static void printProgramStart(){ System.out.println("이 씨 ..

728x90