전체 글

안녕하세요 ?
Old Posts/Docker

도커 명령어 익히기 (feat. 우분투 설치)

03_UbuntuInDocker 도커 명령어 익히기 ( + 우분투 설치 ) 도커 명령어 옵션 설명 -d detached mode (백그라운드 모드) -p Host와 컨테이너의 Port를 연결 (fowarding) -v Host와 컨테이너의 Directory 연결 (마운트) -e 컨테이너 내에서 사용할 환경변수 설정 -it -i와 -t를 동시에 사용한 것으로 터미널 입력을 위한 옵션 --rm 프로세스 종료시 컨테이너 자동 제거 --link 컨테이너 연결[컨테이너명:별칭] --name 컨테이너 이름 설정 도커 실행중인지 확인 docker version C:\Users\bactoria>docker version Client: Version: 18.03.0-ce API version: 1.37 Go versio..

Old Posts/Docker

Windows10에 도커 설치하기

02_InstallDocker 도커 설치 (Windows10) 도커 종류 2개가 있다. Docker Toolbox 와 Docker-for-windows(+hyper-v) Docker-for-windows는 윈도우10 64bit를 지원하기때문에 하위버전은 Docker Toolbox를 써야한다. Docker-for-windows 홈페이지에서 설치 할수도 있지만, chocolatey로 설치할래~~ 관리자모드로 cmd 실행 chocolatey 설치 @"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System..

Old Posts/OOP

03. 리스코프 치환 원칙(Liskov Substitution Principle)

README 리스코프 치환 원칙 (Liskov Substitution Principle) 상위 타입의 객체를 하위 타입의 객체로 치환해도 상위 타입을 사용하는 프로그램은 정상적으로 동작해야 한다. 이 원칙은 상속하지 말아야할 때를 생각해볼수있다. Rectangle - Square problem 우리회사 시스템에 Rectangle.class가 필요했다고 예를 들자. -> 코드짰다 // Rectangle.class public class Rectangle { private int width; private int height; public void setWidth(int width){ this.width = width; } public void setHeight(int height) { this.height..

Old Posts/BlockChain

#2. geth

README geth ( go-Ethereum) geth 설치 https://ethereum.github.io/go-ethereum/downloads/윈도우버전 설치 설치가 잘 됬는지 확인명령프롬프트 키고 geth version 입력후 엔터버전 잘뜨면 잘 깔린거 ~ 제네시스 블록 파일(json) 생성config 없으면 제네시스 등록 안되는것같던데 시부럴.. 아닐텐데..아래 내용을 "genesis01.json"으로 저장한다(경로는 D:\BlockChain01(자기 편한곳으로 넣으면 됨.) D:\BlockChain01\genesis01.json { "config": { "chainId": 42, "homesteadBlock": 0, "eip150Block": 0, "eip150Hash":"0x00000000..

Old Posts/Docker

도커(Docker)

01_Docker 도커 (Docker) Client / Server 도커 명령어 docker run [OPTIONS] IMAGE[:TAG|@DIGEST] [COMMAND] [ARG...] 옵션 설명 -d detached mode (백그라운드 모드) -p Host와 컨테이너의 Port를 연결 (fowarding) -v Host와 컨테이너의 Directory 연결 (마운트) -e 컨테이너 내에서 사용할 환경변수 설정 -it -i와 -t를 동시에 사용한 것으로 터미널 입력을 위한 옵션 --rm 프로세스 종료시 컨테이너 자동 제거 --link 컨테이너 연결[컨테이너명:별칭] --name 컨테이너 이름 설정

Old Posts/Effecttive Java

Item15. 변경 가능성을 최소화하라 <이펙티브자바>

Item15 Item 15 : 변경 가능성을 최소화하라 요약1. 변경 가능한 클래스로 만들 타당한 이유가 없다면, 반드시 변경 불가능 클래스로 만들어야 한다. 2. 변경 불가능한 클래스로 만들 수 없다면, 변경 가능성을 최대한 제한하라. 3. 특별한 이유가 없다면 모든 필드는 final로 선언하라. 변경 불가능(Immutable) 클래스 어떤 메소드도 외부에서 관측 가능한 상태변화를 야기하지 않아야 한다. String class public final class String implements java.io.Serializable, Comparable, CharSequence { /** The value is used for character storage. */ private final char val..

Old Posts/Java

Final 과 Immutable 비교 <자바>

final_immutable Final 과 Immutable 비교 final은 키워드이고, Immutable은 패턴이다. final이면 Immutable인가? 아니다. final 변수의 참조주소는 변경될 수 없다. immutable 객체내부의 정보는 객체가 생성될 때 주어진 것이며, 객체가 살아 있는 동안 그대로 보존된다. String class를 immutable class라고 한다. String 객체는 한번 선언되면 그 값이 변경되지 않기 때문이다. Example String name = "Bactoria"; name = "Junoh"; "Bactoria"가 "Junoh"로 변경된것 아니냐고 할 수 있겠지만, 아래처럼 새 객체가 만들어질 뿐이다. 변경은 없다. final은 참조를 변경하지 못한다. f..

Old Posts/Effecttive Java

Item14. public 클래스 안에는 public필드를 두지 말고 접근자 메서드를 사용하라

Item14 Item 14 : public 클래스 안에는 public필드를 두지 말고 접근자 메서드를 사용하라 요약 1. public class는 변경가능 필드를 외부로 공개하면 안된다. 2. package-private class/ private nested class의 필드는 public이 바람직할 때도 있다. 정보은닉 //잘못된 클래스 (데이터 필드 직접 조작 가능 -> 캡슐화 안됨) class Point{ public double x; public double y; } //getter, setter를 이용한 데이터 캡슐화 class Point { private double x; private double y; public Point(doyble x, double y){ this.x = x; thi..

bactoria
Bactoria