본문 바로가기
728x90

201Created3

[Java] 3주차 스터디 - Enum 1. 상수 인터페이스 1) 상수를 관리하는 이유 문자열 관리 용이성: 1주차 성공했던 코드에서 리팩토링 과정 중에 테스트 "FAILED" 발생했다. "~게임종료"를 빼먹고 옮기지 않았기 때문이다. 그래서 이건 문자열을 한 곳에서 관리할 필요를 느꼈다. // FAILED "3스트라이크\n3개의 숫자를 모두 맞히셨습니다!" // 출력해야할 것 "3스트라이크\n3개의 숫자를 모두 맞히셨습니다! 게임 종료" 매직넘버 제거: 3스트라이크 이후에 게임을 멈출지, 다시할지 결정하는 방법은 "1" 또는 "2"를 입력하는 것이다. 그런데 1과 2가 그런 의미를 갖는 것을 직관적으로 알 수 없다. 이런 수를 매직넘버라고한다. 코드의 가독성을 위해서 상수로 관리할 필요를 느꼈다. 1 → gameConitnue, 2 → Ga.. 2023. 11. 8.
[Java] 2주차 스터디 - Getter와 Setter 1. 접근 제어자 해당 클래스 안에서 동일 패키지 안에서 동일 패키지 또는 자손 클래스 안에서 다른 패키지 포함 어느 곳에서든 public ✅ ✅ ✅ ✅ protected ✅ ✅ ✅ default ✅ ✅ private ✅ 1) 접근제어자를 왜 사용하는가? - GPT의 답변! 캡슐화: 클래스의 내부 데이터를 숨기고, 외부에서 직접 접근하지 못하게 함으로써 클래스의 안정성을 높입니다. 이를 통해 응집도를 높이고 결합도를 낮추어 코드의 유지 보수성을 향상시킵니다. 보안: 중요한 정보나 기능을 외부에서 접근할 수 없도록 보호합니다. 이를 통해 악의적인 사용자로부터 데이터를 보호할 수 있습니다. 모듈화: 코드를 모듈화하여 개발자가 더 작은 부분으로 작업할 수 있도록 합니다. 이는 대규모 프로젝트에서 여러 사람이 .. 2023. 10. 31.
[Java] 1주차 스터디 - 파이썬 list 자바 Array, ArrayList 에 대해! 1. Array 연관된 data를 메모리상에 연속적이며 순차적(ordered)으로 미리 할당된 크기(fixed-size)만큼 저장하는 자료구조 장점: 조회가 매우 빠름 단점: 미리 할당된 크기를 선언해야하므로 메모리 낭비 또는 할당된 사이즈를 넘는 경우 문제 발생 시간복잡도 조회: O(1) 추가: O(1) 삽입, 삭제: O(n) 2. Python - list와 Java - ArrayList 1) Python의 list와 Java의 ArrayList 내부 로직 - Dynamic Array 거의 동일하므로 [ Java-ArrayList = Python - list ]로 생각하면 세상 쉽다! [차이점] Python-list에서는 Object의 주소값이 들어가서 타입 제한 없이 요소가 될 수 있다. 내부로직(D.. 2023. 10. 21.
728x90
반응형