본문 바로가기
728x90

전체 글252

스터디, 온라인스터디, 캠스터디 같이 하실분? 오프라인은 귀찮아서 하루하루 꾸준히 공부해야하는데 모각코 느낌나면서 좋은곳 발견함. 구루미 라는 사이트 인데. 캠스터디 싸이트 이다. 나는 평일은 2-3시간 주말은 6-8시간 공부를 목표로 하고있다. https://gooroomee.com/%EA%BE%B8%EC%A4%80%ED%95%A8%EC%9D%B4-%EC%84%B1%EA%B3%B5%EC%9D%84-%EC%9D%B4%EB%A3%AC%EB%8B%A4# 구루미캠스터디(Gooroomee) 함께해서 재미있는 공부! 구루미캠스터디 gooroomee.com 그냥 자기 공부하고싶은 날 아무때나 와서 캠 켜놓고 그냥 공부하면된다. 개인적으로 해보니깐, 나는 차이가 좀 난다 50% 쯤이랄까, 휴대폰도 잘 안만지고. 타이머 켜서는 공부에만 오로지 집중하려한다. 나에게.. 2023. 2. 14.
[이펙티브자바]item 30.이왕이면 제네릭 메서드로 만들라. 매개변수화 타입을 받는 정적 유틸리티 메서드 한정적 와일드 카드 타입(아이템31)을 사용하여 더 유연하게 개선할 수 있다. 제네릭 싱글턴 팩터리 제네릭은 런타임에 타입 정보가 소거(아이템28)되므로 하나의 객체를 어떤 타입으로든 매개변수화할 수 있다. 재귀적 타입 한정 자기 자신이 들어간 표현식을 사용하여 타입 매개변수의 허용 범위를 한정한다. 2023. 2. 14.
[이펙티브자바]item 29.이왕이면 제네릭 타입으로 만들라. 배열을 사용하는 코드를 제네릭으로 만들때 해결 책 두가지가 있다. 첫번째 방법은 제네릭 배열 대신에 Object 배열을 생성한 뒤에 제네릭 배열로 형변환 하는것. 형변환을 배열 생성시 한 번만 한다. 가독성이 좋다. 힙 오염이 발생할 수 있다(아이템31) 두번째 방법은 elements 필드의 타입을 E[] 에서 Object[]로 바꾸는 것이다. 제네릭 배열 대신에 Object 배열을 사용하고, 배열이 반환한 원소를 E로 형변환 하는것. 원소를 꺼낼때 마다 형변환을 해주어야 한다. 필요에 따라 한정적 타입 매개변수를 이용해서 제약조건을 추가하자. E extends Number> 같은.. 2023. 2. 13.
비트로 상태관리하기. const value = "0b" + "111"; const isEmail = (value & 0b100) !== 0; const isSMS = (value & 0b010) !== 0; const isPush = (value & 0b001) !== 0; console.log(isEmail, isSMS, isPush) let isEmail = false; let isSMS = true; let isPush = false; let value = 0; if (isEmail) { value |= 1 2023. 2. 13.
JVM G1 GC 방식에 대해.. GC 방식중 한가지로써 자바 9버전부터 default 방식인 Garbage First Collector (G1 콜렉터) 에 대해 간략히 알아본다. G1 방식 외: Serial(시리얼), Parallel(병렬), Parallel Compacting(병렬 콤팩팅), Concurrent Mark-Sweep(CMS) 등이 있다. 위에 적힌 방식은 G1 GC 를 제외하고 모두 Eden과 Survivor 영역으로 나뉘는 Young 영역과 Old 영역으로 구성되어 있다. 하지만 G1은 다른 영역으로 구성되어있다. 바둑판같은 형식으로 일명 region 이라는 영역을 사용한다.하나의 구역이라 생각하면 될듯 하다. 해당 구역의 기본 크기는 1MB이며 최댜 32MB까지 지정 가능하다. Young 영역과 Old 영역이 물리적.. 2023. 2. 12.
코로나 시대, 온라인 거래의 급증 - 온라인 쇼핑의 장단점 온라인 거래가 점점 늘어나면서 온라인 쇼핑의 장단점이 논란이 되고 있다. 온라인 쇼핑의 장점으로는 편리한 구매 과정과 더 저렴한 가격, 다양한 상품 선택지, 편리한 결제 방법 등이 있다. 하지만 물건을 직접 보고 만져보지 못하기 때문에 상품의 퀄리티에 대한 의문이 생길 수 있고, 배송이 늦어지거나 물건이 도난당할 가능성도 있다. 또한, 온라인 쇼핑이 급증하면서 오프라인 매장의 생존에 대한 우려가 커지고 있다. 온라인 쇼핑으로 인해 상점이 문을 닫거나 사람들이 더 이상 오프라인 매장을 방문하지 않게 된다면 그만큼 일자리가 사라지게 된다. 하지만, 코로나19로 인해 온라인 쇼핑은 더욱 중요한 역할을 하게 되었다. 사람들은 집에서 물건을 사기 때문에 사람들 간의 감염 위험이 줄어들고, 온라인 쇼핑으로 인해 더.. 2023. 2. 12.
데이터 용량에 따른 크기는 어느정도일까 1MB 같은 경우 대략 어느정도의 pdf나 텍스트 파일일까..라는 궁금증에 찾아봄.. 딱 이걸로 이렇다 할 수는 없지만 대략적인 감만 잡아 봄. 1 Bit: 예를 들어, 0 또는 1의 값을 가진 전자적 표시 1 Byte: 8 Bit, 예를 들어, 한 글자의 문자 코드 값 1 Kilobyte (KB): 1024 Byte, 예를 들어, 텍스트 파일의 작은 크기 대략 1000 ~ 1500자 정도..당연히 인코딩에 따라 다름. 1 Megabyte (MB): 1024 Kilobyte, 예를 들어, 사진 파일의 크기 크기로 글자 수: 1MB는 약 20,000 페이지의 텍스트 문서입니다. PDF 문서: 1MB의 PDF 문서는 약 3-5 페이지의 PDF 문서입니다. MP3 파일: 1MB의 MP3 파일은 약 3-4 분의.. 2023. 2. 12.
자바 가비지 콜렉터(GC)에 대한 정리. 이번에 자바 성능 튜닝 이야기 책을 읽으면서 기존에 알고있던 GC 에 대한것을 정리하려한다.. 너무 깊게 들어가면 끝이 안나고 이해도 어려워 이해하는 부분까지 정리..이미지도 첨부하면 더 이해가 빠르겠지만..넘어간다..(미래의 나에게 미안하다..ㅋㅋㅎ) GC를 반드시 암기하고 숙지해야지 하는건 아니지만, 알고있으면 확실히 좋은듯 하다. GC C에서는 명시적으로 메모리를 건드리고 참조할 수 있다. 자바에서는 메모리는 GC 라는 알고리즘을 통하여 관리하기 때문에, 개발자가 메모리를 처리하기 위한 로직을 만들 필요가 없고, 만들어서도 안된다. JVM은 크게 3가지 영역으로 구성이된다 클래스로더 바이트 코드를 읽고, 클래스 정보를 메모리의 메서드 영역에 저장 JVM Memory(런타임 데이터 영역) 아래 설명 .. 2023. 2. 12.
공부하기 좋은 url 정리 중 나를 위해, 혹시모를 선 후배 님들에게 공유하기 위한 url 을 추가해야겠다.. 내 기준에 나중에 보거나, 보면 좋은 url 을 우선적으로 추가 중 GC 관련 https://www.youtube.com/watch?v=FMUpVA0Vvjw 코프링 https://www.youtube.com/watch?v=ewBri47JWII 운영체제 혼자 공부하는 컴퓨터 운영체제: https://youtu.be/kFWP6sFKyp0 자바 모던자바:https://www.youtube.com/watch?v=nH5svoXpHQk&list=PLRIMoAKN8c6O8_VHOyBOhzBCeN7ShyJ27&index=12 스프링 공부 로드맵 김영한: https://www.youtube.com/watch?v=ZgtvcyH58ys 오찌, .. 2023. 2. 12.
728x90