Spring

이모저모

equals 메소드 사용할 때 앞에 확실한 변수나 자료형을 넣어주는 이유

-> a.eqauls(b) 할때 a가 null이라면 NPE가 뜬다.

 

변수명 바꿀 떄는 shift + f6으로 한번에 바꾸자(intellij)

 

boolean 자료형을 반환하는 메소드 이름은 예-아니오로 대답할 수 있는 문장으로 지어라.

 

소셜 로그인 유저와 회원가입한 유저를 어떻게 구분지을 것인가.

한 테이블에 가입한 네트워킹 서비스 정보를 저장하고, 각각 필요한 필드값이 다를 때는 nullable이나 기본값을 줘서 관리한다

vs

가입을 지원하는 네트워크 서비스마다 테이블을 따로 두어 관리한다.

 

전자의 장점은 일단 구현이 단순해져 작업시간 측면의 리소스 이득을 본다.

단점은 결합도가 매우 높아진다.

 

후자의 장점은 각 테이블에서 변동사항이 있을 때 서로 영향을 주지 않는다.(해당하는 테이블에 column만 추가하면 됨)

단점은 구현 난이도가 올라간다. 테이블이 생길수록 어떤 테이블을 참조해야하는 지 다 체크해줘야하고 어디까지 나눌지 어디까지 결합할 지 생각해주는 게 매우 어려웠다.

 

현업에서는 두 케이스 모두 사용한다고 해서 선택의 문제인 것 같다. 실력을 올리 데에는 후자가 더 좋겠지만..

 

 

알고리즘

- 프로그래머스 : 테이블 해시 함수(Level 2, 정렬)

  내가 문제를 푼 IDE(visual studio)와 프로그래머스 상의 IDE 의 코드가 똑같음에도 불구하고 결과값이 다른 오류가 발생했다. 

-> 내가 vector 조회 인덱스를 잘못 넣어서 size가 2인 벡터에서 index 2에 접근했다. 

-> VS는 v[2] 값을 0을 반환해줬고 프로그래머스는 10을 반환해줬다.(쓰레기값)

하필 4랑 14 이렇게 10차이 나서 고민하느라 고생했다.

느낀 점

'TIL' 카테고리의 다른 글

[23.12.12]  (0) 2023.12.12
[23.12.11]  (0) 2023.12.12
[23.12.06]  (0) 2023.12.06
[23.12.05]  (1) 2023.12.06
[23.12.01]  (0) 2023.12.04

+ Recent posts