일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 안드로이드 웹뷰
- 스칼라
- 파이썬 데이터분석
- 엔터프라이즈 블록체인
- 블록체인
- Adapter 패턴
- hyperledger fabric
- Golang
- play 강좌
- 파이썬 머신러닝
- 하이퍼레저 패브릭
- akka 강좌
- 하이브리드앱
- play2 강좌
- Akka
- 이더리움
- Actor
- 파이썬 강좌
- Hyperledger fabric gossip protocol
- Play2 로 웹 개발
- 파이썬 동시성
- 플레이프레임워크
- Play2
- 스칼라 동시성
- 그라파나
- 파이썬
- 주키퍼
- 스위프트
- 스칼라 강좌
- CORDA
- Today
- Total
목록전체 (687)
HAMA 블로그
interface Account { } class EthreumAccount(val gas: Int) : Account{ } class FabricAccount(val org: String) : Account { } class BlockChain(val networks : Map) { fun send(account: Account) { when(account) { is EthreumAccount -> { val gas = account.gas val network = networks.get("eth") println("send to ${network} with gas: ${gas}") } is FabricAccount -> { val org = account.org val network = network..
아래와 같은 이런 타입 시그니처 본 적이 있나요? Entity 처음 이런 모습을 보았을때, "머야 이 퐝당한 코드" 같은 생각이 드는건 어쩌면 당연합니다. 그리고 이것에 대해 알아 보기 위해 구글링등을 하기 시작 했을테고, 결국 이 블로그를 찾아 왔을 지도 모르겠네요. 그렇다면 잘 찾아 왔습니다. 도대체 이것은 뭘 까요? 보통 우린 interface Entity이 정도로만 써 왔지 않습니까? 하지만 알고보면 매우 간단하니깐 겁먹지 말고 , 간단한 예를 통해서 이해해 봅시다. 이것을 이해하기 위한 기본적인 부분들도 설명을 하니깐 걱정마세요. 1. 인터페이스 먼저 코틀린에서의 인터페이스를 살펴 봅시다. interface MyInterface { fun bar() } 일반적으로 내용이 없는 메소드들을 선언합니..
* 해당 글은 리눅스 기준 입니다. (CentOS 7버전, Ubuntu18에서 잘됨) InfluxDB 2.x 설치 (docs.influxdata.com/influxdb/v2.0/get-started/?t=Linux) 아래 2가지 방식 중에 패키지로 서비스로 시작하는것을 추천한다. 파일로 받아서 실행 하기) curl -s https://repos.influxdata.com/influxdb2.key | gpg --import - wget https://dl.influxdata.com/influxdb/releases/influxdb2-2.0.4-linux-amd64.tar.gz 3. tar xvzf influxdb2-2.0.4-linux-amd64.tar.gz 4. cd influxdb2-2.0.4-linux..
블록체인 계층도 블록체인을 구분하기 위해 위의 그림을 그려보았으며, 해당 그림에서 노란색 콘소시엄 체인 부분과 녹색의 일반DB의 차이점에 대해서 테이블로 세밀히 구분해 보았습니다. 분산장부 vs 분산DB
개인적으로 비트코인,이더리움만 블록체인 플랫폼이라 생각하지만, PBFT나 DPos를 사용한 체인들도 불록체인이라 말하는 사람들에 대해 틀렸다라고 말하지도 않는다. 네트워크 참여가 제한된 콘소시엄형 블록체인 (분산장부라고도 말하는)은 나름 "신뢰비용" 을 줄이는데 잘 사용 될 수 있는 자질을 가졌으므로 이것들 또한 블록체인이라고 불리는데 이제는 순수탈중앙주의자 빼고는 업계에서 합의를 한 분위기인거 같기도 하다. 당장의 호구지책도 중요하니까. 가끔 분산장부와 분산DB가 무슨 차이냐라고 묻는 사람이 있는데 이것도 큰 차이가 있는데, 첫째 악의의 노드(비잔틴)를 감안하냐, 둘째 불변이 필수적인 데이터만 저장되느냐, 마지막 세째가 바로 여기서 심플하게 이야기할 거버넌스 문제이다. 최근 공공기관이라든지 여러 블록체..
매우 길고 복잡한 글을 썼으나 5년만에 지웠습니다. 다시 읽어보니 재밌긴 한데, 그 글을 읽는 분들에게 복잡함을 더 가중 할 수 있겠다 싶어서요.. 그냥 핵심만 잘 정리된 아래 링크로 대신해서 새 글을 올립니다. 문자열 포맷 및 자바/웹개발에 대한 역사가 깊어서 인지 너무너무 복잡하죠. ㅎㅎ Guide to Character Encoding www.baeldung.com/java-char-encoding [Spring] Spring UTF8 한글 설정하기 gmlwjd9405.github.io/2019/01/01/spring-utf8.html 한글 인코딩의 이해 2편: 유니코드와 Java를 이용한 한글 처리 http://d2.naver.com/helloworld/76650 인코딩(Encoding)에 대한 ..
패턴은 추상적인 "의도"를 보다 명확한 의미로 "규정" 을 짓습니다. 패턴을 사용하는 이유와 공부하는 이유는 아래와 같습니다. - 그로 인해 선배로 부터 값진 경험을 물려 받게 해 줍니다. - 그로 인해 의사소통을 원할하게 만들어 줍니다. - 그로 인해 자신의 생각에 확신을 갖게 합니다. - 그로 인해 장점과 단점을 드러내 줍니다. 모든 패턴에는 장점과 단점이 있습니다. (모든 기술도 마찬가지) - 그로 인해 연관 패턴들과의 계층적 구조를 보여주어 큰 규모에서의 설계를 가능하게 합니다. - 그로 인해 시야가 넓어집니다. - 그로 인해 이름 짓기 능력을 발전 시킬 수 있습니다. - 그로 인해 추상화 & 모듈화 능력을 발전 시킬 수 있습니다. 이제 다양한 패턴들에 대한 이름과 의도에 대해서 정리 해 보겠습니..
이라는 후배의 질문에.....그냥 이 얘기 저 얘기 두서없이 주절거려 봅니다. ------------------------------------------------------------------------ 세상은 하나를 얻으면 하나를 버려야 한다고 합니다. 다 사람사는 곳이라.. 여러 생각들이 바람처럼 부드럽헤 흐르다가도 부딪히기도 하고 그렇습니다. 회사는 먼저 동호회가 아닙니다. 가족같은 회사, 친구같은 회사는 결국 문제만 생깁니다. 따라서 아래 원칙만 지키시고, 중심을 잡으세요. (저도 못하는 것들 이고 저에게 하는 말이기도..) 1. 모두에게 친절하고 상냥하게 대한다. 조금은 손해보고 살자. 2. 일과시간엔 적어도 6시간은 일에 초집중 하고 공유한다. (다만 일을 더 잘하기 위한 휴식같은건 필요..
현대 프로그래밍에서 가장 중요한 오류들인 동기화 문제( 레이스컨디션이나 데드락등 )는 C++같은 언어로 개발한 제품들에서 굉장히 많은 문제를 발생시키곤 한다. 윈도우즈 오류의 대부분이 동기화문제, 메모리관리 문제라니까.. 그중 동시성에서 레이스컨디션 문제는 1. 가변변수인데 게다가 동시접근가능 할 때 발생된다. 즉 2. 가변변수가 없거나 ㅡ 순수함수형 3. 동시접근예방 ㅡ Actor패턴 , CSP (예방이지 불가는 아님) 둘 중 하나만 충실 하면 근본적으로 없앨수 있다는 얘기이다. 1번 경우는 뮤텍스등을 통해 직접 보호 장치를 해야 하는데 , C++,Java, Go 같은 착한 (방종 or 자유로운) 부모하에서 인간의 실수는 비일비재 하다. 배움이 모자르고 막나가는 아이들도 생겨남. 근데 러스트는 엄한부모..