Develop/Java8 [Java] 만취한 사람도 쉽게 이해할 수 있는 '일급 컬렉션'에 대해 알아보자! 글에 오류가 있으면 댓글로 피드백 부탁드립니다 :) '일급 컬렉션' 뉘슈? 일급 컬렉션이란 먼저 다음과 같습니다. Collection을 포함한 클래스는 반드시 다른 멤버 변수가 없어야 한다. 부가설명 : Collection(List, Set ..)을 Wrapping한 변수가 있다면 그 외에 다른 멤버 변수는 없어야한다! --> 오마이갓.. 이게 무슨 말일까요? 먼저 예시를 통해 일급 컬렉션을 이용한 프로그램을 보면서 이것의 장점과 사용 이유에 대해 더 알아보겠습니다. 예시(일급 컬렉션 적용 ver.) 예시에 앞서 먼저 프로그램 요구사항은 다음과 같습니다. 엔델 : 제이, 자동차 경주 게임 프로그램을 만들어주세요! 1. 자동차 경주를 할 사람은 'odo', 'kokodak', 'jay' 로 고정해주세요. .. 2023. 2. 13. [Java] final 키워드에 대해 알아보자 우테코에서 자동차 미션을 진행하면서, final 키워드를 제멋대로 사용해서 피드백을 많이 받았습니다. final 이란 지금까지 '바뀌지 않는'으로만 알고 있었는데, 오늘은 final 키워드에 대해 구체적으로 배워보고 언제 사용할지 알아보도록 하겠습니다! final : 의미와 역할을 알아봅시다! 재할당 불가를 명시합니다. ==> 위에 사진과 같이 final로 선언을 한 age를 재할당 한다면 오류가 발생합니다. final 인자는 메서드 내에서 변경이 불가능합니다! ==> 위와 같이 increaseNumber() 메서드의 인자를 final로 받아준다면, final로 넘어오는 number 변수는 읽기만 가능해집니다. final 키워드를 메서드 앞에 사용한다면, 오버라이드가 안됩니다. final 키워드를 클래스.. 2023. 2. 13. [Java] AssertJ 문법과 간단한 예시 (예외처리 검증 추가) 안녕하세요. 오늘은 자바에서 테스트를 할 때 많이 사용되는 AssertJ와 이를 통해 단위테스트를 진행해보고자 합니다. AssertJ AssertJ는 assertion을 제공하는 자바 라이브러리로 에러 메시지와 테스트 코드의 가독성을 높여주는 라이브러리입니다. 쉽게 말해서 테스트의 흐름을 작성할 수 있는 라이브러리라고 보시면됩니다! 체이닝 문법을 통해서 직관적으로 읽힙니다. 예제를 보면서 설명을 진행하겠습니다. @Test void stringDoubleSplitTest() { //given String input = "1,2"; //when final String[] splitedInput = input.split(","); //then assertThat(splitedInput).contains.. 2023. 2. 13. 클린코드에 대해서 알아보자 (리팩토링) 개발을 하다 보면 어느 포인트에서 클린코드라는 것을 접하게 됩니다. 대부분은 혼자 프로그래밍을 하면서 변수명, 함수명 혹은 로직 구조 설계에 대해 개개인적으로 습관이 굳어지게 됩니다. 따라서 사람마다 코드 스타일이 달라지게 되는데, 이는 협업할 때 타인이 코드 이해를 할 때 더 오랜 시간을 소모하게 됩니다. 따라서 개발자들은 클린코드를 작성하기 위해 노력해야 합니다. 클린코드 클린코드란 네이밍, 중복 제거, 하나의 역할만 수행하게 끔 코드를 작성해서 가독성이 높은 코드를 의미합니다. 즉, 위와 같은 조건으로 프로그래밍을 하면서 코드를 누구나 이해할 수 있는 것이 바로 클린코드를 의미합니다. 다음 예시를 통해 클린코드가 어떤 의미인지 조금 더 직관적으로 확인해보겠습니다. 기존 클린코드 적용 전 코드 p.. 2022. 11. 8. 이전 1 2 다음