일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 칭기즈칸의 위대한 장군 수부타이
- kubernetes
- ESG
- 히든 스토리
- 모두가 기다리는 사람
- 참조 계수
- 과제의 분리
- 레퍼런스 복사
- colllection
- try width resources
- 도파민형 인간
- sentry
- Infresh
- 뉴 컨피던스
- 수부타이
- 부자의그릇
- 월칙
- 비메모리 자원
- docker
- 쿠버네티스
- apache kafka
- try-with-resources
- HTML
- java
- Container
- CSS
- 아웃풋법칙
- node
- 이펙티브 자바
- 공헌감
- Today
- Total
목록Programming (64)
Hi
인터페이스 추상클래스와 인터페이스의 차이점 => 상태를 가질수 있다 없다. 추상 클래스는 부모가 기본적인 구현을 제공할 수 있다. import java.util.Iterator; interface MP3 { void play(); void stop(); // default(defender) method - Java 8 default void playOneMinute() { play(); //... stop(); } } interface MP4 { default void playOneMinute() { // play(); //... // stop(); } } class Person { public void playMusic(MP3 mp3) { mp3.play(); } } class SmartPhone im..
Iterator Iterable와 Iterator Iterable 를 상속하는 클래스 안에 내부클래스로 Iterator를 상속하는 클래스를 만들면 좋다. import java.util.Iterator; class CountDown implements Iterable { private int n; public CountDown(int n) { this.n = n ; } @Override public Iterator iterator() { return new CountDownIterator(n); } // inner class vs nested class // => 구체적인 타입을 감출 수 있다. private class CountDownIterator implements Iterator { private ..
#SOLID => 절차 지향 프로그래밍OOP=> 객체 지향 프로그래밍 좋은 설계SOLID - 로버트 C 마틴(엉클 밥) '마틴 파울러'리팩토링: 기능에는 변화 X구조를 개선하는 작업 SRP: Single Responsibility Principle=> 단일 책임의 원칙모듈은 단 하나의 책임을 가져야 한다.class, 변수, 함수, 패키지=> 유지보수=> 이름 => rename OCP: Open Close Principle=> 개방 폐쇄의 원칙=> 목표모듈은 수정에는 닫혀 있고, 확장에는 열려 있어야 한다.=> 새로운 기능이 추가되어도 기존 코드는 수정되면 안된다. LSP: Liskov Substitution Principle=> 리스코프 대체(치환) 원칙=> 자식 클래스는 부모 클래스로 대체될 수 있어야..
IPC(Inter Process Communication) : 프로세스의 주소 공간을 분리되어 있기 때문에 두 개 이상의 프로세스가 데이터를 주고 받기 위해서는 IPC가 필요하다. 메세지 큐 파이프 ... 소켓 : (UNIX 개념으로)네트워크 카드를 파일처럼, 개념화한 것. IP (Internet Protocol) 컴퓨터 주소 - IP Address 프로세스 주소 - Port 서버 - 클라이언트 OSI(Open System Interconnection) 참조 모델