본문 바로가기

분류 전체보기

(13)
[디자인 패턴의 정석] 생성패턴 - 팩토리 메서드 패턴 (Factory Method) 개발자 yeah의 Developer Story - 디자인 패턴 오늘은 저번 포스팅에 이어서 팩토리 패턴의 확장 패턴인 팩토리 메서드 패턴을 이야기해보려 합니다. 팩토리 메서드 패턴은 추상화 기법을 사용하여 패턴을 확장하므로, 쉽게 이해하기 위해서는 객체지향의 추상화 개념이 필수입니다! 따라서 추상화, 다형성, 상속 에 대한 이해가 부족하시다면 선행 공부를 꼭 하시고 해당 포스팅을 보시길 바래요 ^^ 먼저 팩토리 패턴에서 활용했던 객체들의 관계를 먼저 설명하겠습니다. /* 마피아 게임에서 사용자를 나타내는 class */ abstract class User { String name; //사용자 이름 String skill; //스킬 User(String name) { this.name = name; } S..
키보드 - 레오폴드 화이트 블루스타 (LEOPOLD - FC750R PD) 오늘 Review 할 제품은 레오폴드의 신제품 FC750R PD 화이트 블루스타(저소음 적축) 입니다. 회사 생활하면서 개발자라면 다들 기계식 키보드에 대한 로망이 있으실 텐데요! 사무실에서는 함께 사용하는 공간이기 때문에 키보드 선택에 굉장히 고민이 들 수밖에 없습니다. 기계식 키보드 종류로는 청축, 갈축, 적축, 흑축, 무접점 등 종류가 다양하지만, 오늘은 사무실에서 남들에게(?) 피해 주지 않으면서 사용할 수 있는 저소음 적축 키보드를 소개해드릴까 합니다. 그럼 먼저 UnBoxing 을 해볼까요! 먼저 택배 박스를 뜯어보면 이쁜 레오폴드 박스를 비닐로 아주 10바퀴는 감아서 담겨있더군요.. 안전제일...!! 박스를 개봉해보면 키보드 위에 덮개가 씌워진 상태로 비닐에 담겨있구요. 관련 설명서(?) 가..
카카오 - 클레이튼 디파이(DeFi) 안녕하세요. yeah의 코인 소식입니다! 이번 포스팅은 클레이튼(Klaytn) 의 디파이(DeFi) 관련 소식입니다. 이번 디파이(DeFi) 는 클레이튼(Klaytn) 의 기술 개발 파트너인 오지스(Ozys) 의 주도로 이루어져 있으며, 이더리움(Ethereum), 테라(Terra) 와 같은 외부의 블록체인과도 연결되는 특징을 갖고 있습니다. 오지스(Ozys) 에 대해서 간략하게 소개하자면, 클레이튼(Klaytn) 의 기술 개발 파트너사로 클레이튼(Klaytn) 규격의 KCT 토큰으로 전환하는 클레이튼 스왑(KlaytnSwap). 이더리움 네트워크 상의 DAI를 클레이튼(Klaytn) 네트워크로 보내는 에브리다이(EVERYDAI). 클레이스왑의 전신인 클레이거래소. 등의 클레이튼(Klaytn) 기반의 다..
[디자인 패턴의 정석] 생성패턴 - 팩토리 패턴 (Factory) 개발자 yeah의 Developer Story - 디자인 패턴 오늘은 디자인 패턴에서 생성패턴의 한 종류인 팩토리 패턴을 이야기해보려 합니다. 팩토리 패턴의 설명에 앞서 생성패턴이란? 큰 규모의 응용 프로그램을 객체지향 개발 방식으로 설계할 때는 수많은 객체가 필요하게 되는데요. 이때 직접 객체를 생성하고 관계를 설정하면 매우 강력한 결합 관계를 갖게 됩니다. 이때의 관계를 종속 관계라고 하는데요. 이러한 종속 관계는 객체의 확장과 유지보수를 어렵게 하는 원인이 돼요. 생성 패턴은 객체 간 강력한 관계를 느슨한 결합으로 변경하는 기법입니다. 팩토리 패턴 은 생성패턴 중에서도 가장 기본이 되는 패턴이며, 클래스의 객체 생성 처리를 위임합니다. 예를 들어 다음 코드를 살펴보겠습니다. /* 마피아 게임에서 사..
카카오 - 클레이튼 (Klaytn) 안녕하세요. yeah의 코인 소식입니다! 한국에서 모든 분야를 쥐락펴락 하고 있는 카카오!! 그 카카오에서 야심 차게 준비하는 코인 클레이튼 들어는 보셨나요? 클레이튼 을 간략하게 소개하자면 그라운드X가 개발하였으며 이더리움이나 이오스 같이 분산 애플리케이션 디앱을 만들기 위한 중앙 플랫폼입니다. 클레이튼 플랫폼의 가장 큰 특징은 블록체인 기술의 핵심 요소인 탈중앙화를 현시점에서는 다소 포기하더라도 대중화에 필요한 기술적인, 제도적인 기반을 먼저 갖추는 것입니다. 사용자의 인터페이스(UI)와 경험(UX)의 최적화를 통해서 많은 대중들이 쉽고 간편하게 이용하여 최대한 많은 사람들은 끌어들이려는 목표이며 당장의 현실적인 타협 속에서 점진적으로 완전한 탈중앙화를 달성해 나갈 계획입니다. 소개 설명에서 봤듯이,..