반응형 전체 글163 [Effective Java] 아이템 13 이장은 간단히 하고 넘어가겠다! [책 규칙] 노란색 - 자세히 알아보고싶은 부분 초록색 - 핵심 개념 (블로그 정리시는 검은색으로!) 빨간색 - 무슨말인지 모르겠는 부분 [아이템 13] clone 재정의는 주의해서 진행하라 실무에서 Cloneable을 구현한 클래스는 clone 메서드를 public으로 제공하며, 사용자는 당연히 복제가 제대로 이뤄지리라 기대한다. 이 기대를 만족시키려면 그 클래스와 모든 상위 클래스는 복잡하고, 강제할 수 없고, 허술하게 프로토콜을 지켜야만 하는데, 그 결과로 깨지기 쉽고, 위험하고, 모순적인 메커니즘이 탄생한다. 생성자를 호출하지 않고도 객체를 생성할 수 있게 되는 것이다. Clone 메서드는 사실상 생성자와 같은 효과를 낸다. 즉, clone은 원본 객체에 아무런 해.. 2023. 1. 10. [Effective Java] 아이템 10 ~ 아이템 11 으어어ㅓㅓ어 맨날 스터디 전날에 공부해.... [책 규칙] 노란색 - 자세히 알아보고싶은 부분 초록색 - 핵심 개념 (블로그 정리시는 검은색으로!) 빨간색 - 무슨말인지 모르겠는 부분 [아이템 10] equals는 일반 규약을 지켜 재정의하라! [아이템 11] equals를 재정의하려거든 hashCode도 재정의하라!!!!! equals는 아예 재정의 하지 않는것이 아주 좋다고한다! 그냥 둔다면 그 클래스의 인스턴스는 오직 자기 자신과만 같게 된다. 그러니 다음에서 열거한 상황 중 하나에 해당한다면 재정의 하지 않는 것이 최선이다. 각 인스턴스가 본질적으로 고유하다. 값을 표현하는 게 아니라 동작하는 개체를 표현하는 클래스가 여기 해당한다. Thread가 좋은 예로, Object의 equals 메서드는 .. 2023. 1. 10. [Effective Java] 아이템 3 이제... 아이템 3.... 미리 공부 해놓자... [책 규칙] 노란색 - 자세히 알아보고싶은 부분 초록색 - 핵심 개념 (블로그 정리시는 검은색으로!) 빨간색 - 무슨말인지 모르겠는 부분 [아이템 3] 생성자나 열거 타입으로 싱글턴임을 보증하라. 싱글턴 패턴이 궁금하다면! 내 글을 참고! (낄낄) https://lima1016.tistory.com/93 [Design Patterns] Singleton Pattern feat. 백기선 강사님 하루 1강씩이라도 듣자는 의지를 계속 실천하고있따!!!! 할수있다!! 잘한다 잘한다 잘한다 자! 오늘의 복습! 시작! Singleton Pattern이 뭐야? - 인스턴스를 오직 한개만 제공하는 클래스! 개념은 알겠 lima1016.tistory.com 싱글턴이란 .. 2023. 1. 3. [Effective Java] 아이템 2 아~~ 오늘 아이템 9번까지 해야하는데에ㅔ에ㅔㅔㅔㅔ 뿌액 [책 규칙] 노란색 - 자세히 알아보고싶은 부분 초록색 - 핵심 개념 (블로그 정리시는 검은색으로!) 빨간색 - 무슨말인지 모르겠는 부분 [아이템 2] 생성자에 매개변수가 많다면 빌더를 고려하라! 점층적 생성자 패턴도 쓸 수는 있지만, 매개변수 개수가 많아지면 클라이언트 코드를 작성하거나 읽기 어렵다. 점층적 생성자 패턴 필수 매개변수만 받는 생성자, 필수 매개변수와 선택 매개변수 1개를 받는 생성자, ... 형태로 선택 매개변수를 전부 다 받는 생성자 까지 늘려가는 방식 단점 매개변수 개수가 많아지면 클라이언트 코드를 작성하거나 읽기 어렵다. 클라이언트가 실수로 매개변수의 순서를 바꿔 건네줘도 컴파일러는 알아채지 못하고, 결국 런타임에 엉뚱한 동.. 2023. 1. 3. [Effective Java] 아이템 1 이펙티브 자바 스터디를 시작했다... 열심히 하자! [책 규칙] 노란색 - 자세히 알아보고싶은 부분 초록색 - 핵심 개념 (블로그 정리시는 검은색으로!) 빨간색 - 무슨말인지 모르겠는 부분 [아이템 1] 생성자 대신 정적 팩터리 멧서드를 고려하라! 정적 팩터리 메서드가 생성자보다 좋은 장점 다섯가지! 이름을 가질 수 있다. 이름만 잘 지으면 반환될 객체의 특성을 쉽게 묘사할 수 있다. 호출될 때마다 인스턴스를 새로 생성하지 않아도 된다. 인스턴스를 미리 만들어 놓거나 새로 생성한 인스턴스를 캐싱하여 재활용하는 식으로 불필요한 객체 생성을 피할 수 있다. 반환 타입의 하위 타입 객체를 반환할 수 있는 능력이 있다. 반환할 객체의 클래스를 자유롭게 선택할 수 있게 하는 엄청난 유연성을 갖고있다. 구현 클래스.. 2023. 1. 3. 힘들었던 2022를 마무리 하며..... 막판에 회사에서 정신없이 개발하고 이슈터져서 부랴부랴 해결하고 고객사에서 오늘 당장 고쳐주세욧!!!! 해서 거의 12시까지 회사에 남아서 수석님들이랑 이슈 해결하기... 등등.... 갑자기 와다다다 난리난리 햄난리였다..... 속상한 일도 많았고 웃던 날도 많았지만 어찌어찌 잘 마무리 한거같다... 어떤일이 있었는지 왜 속상했는지 공개적인 곳에 적을 수는 없지만... 그런 상황들 속에서도 배울것이 있었고 시무룩하고있을 시간이 없기에 힘내서 웃으려고 노력한거같다... 상처주는 사람때문에 내 시간을 낭비할수는 없다! 이런사람도 있고 저런 사람도 있는거지!! 올해 진짜 너무너무 수고했다! 아맞다 근데 블로그 활동을 너무 못해서 약간 찔리지만 어쩌라고! 이제 스터디도 들어갔으니 진짜로 2023년도에는 블로그 한.. 2022. 12. 21. [RAID] 레이드란 무엇인가! 회사에서 기술 조사 하다가! 정리한거! 졸립다! 언능 하고 자야징! RAID (Redundant Array of Independent Disk) 기본개념 2개 이상의 디스크를 병렬로 처리하여 성능 및 안정성을 향상시키는 방식 레이드는 Striping(분산), Mirroring(중복), Parity(무결성)의 기술을 적용에 따라 레벨이 나누어진다. 사용 목적 여러개의 디스크 모듈을 하나의 대용량 디스크 처럼 사용하기 위하여 여러개의 디스크 모듈에 데이터를 나누어 한꺼번에 쓰고 한꺼번에 읽는식으로 입출력 속도를 높이기 위하여 여러개의 디스크를 모아서 하나의 디스크로 만들고 그중 하나 혹은 그 이상의 디스크에 장애가 나더라도 최소한 데이터가 사라지는 것을 방지하기 위하여 기대 효과 대용량의 단일 볼륨을 사용하.. 2022. 12. 19. 2년차... 서버 개발자... 나는 아직 촙촙초보인데... 벌써 시간은 2년이 되어버렸다... 내채공을 포기하고 나와서 내채공에 대해 까먹고있었는데 주위에 사람들이 다 내채공 받았다고 밥 사주겠다 연락이 온다... 힝 부러워~ 내채공!! 나는... 비록 내채공 포기하고 나왔지만 덕분에 지금회사에 들어올 수 있었다고 생각한다 괜찮아! 지금보다 더 높은 곳을 위해서 큰 지불했다고 생각하자! (이렇게라도 생각하자...!!!) 잘하고있는지 누가 알려줬으면 좋겠지만ㅠ 멘토가 없다는게 슬프다 사비를 지불해서라도 멘토를 찾아야할까? 꾸준히 조금씩이라도 공부하면서 기록하는거 말고는... 음... 좋아 일단 지금은 CS 지식을 좀더 넓히자! 관련 도서도 꾸준히 읽고! 기록!! 기록많이 살길이다! 2년이 지나 이제 3년차 개발자라니! 말도안돼~ 기술적.. 2022. 10. 15. [WEB] 동기 & 비동기 좋아 오랜만에 블로그 정리! 직렬성 & 동시성은 다음에 알아보자! ㅎㅎ 동기 (Synchronous) 가 뭐야? 동기 사랑 나라 사랑? - 하나의 연산이 끝나야 그 다음 코드가 실행되는 방식! 실행중인 태스크가 끝나야 다음 태스크로 진행! - 웹 브라우저에서 서버에 요청을 보내고 응답을 받는다. public class Synchronous { public static void main(String[] args) { // 순차적으로 실행! task1(); task2(); task3(); } public static void task1() { System.out.println("task1"); } public static void task2() { System.out.println("task2"); } pu.. 2022. 10. 14. 이전 1 ··· 8 9 10 11 12 13 14 ··· 19 다음 반응형