개발

MQTT Protocol 이란?
'불안정한 네트워크 환경에서 메시지 전송을 보장받을 수 있는 프로토콜'을 찾던 중에 IoT에서 많이 쓰이는 MQTT Protocol에 대해서 공부해 보았다. 어떤 특징을 가졌고 어떻게 불안정한 네트워크 환경에서 IoT의 통신에 도움을 주는지 간단하게 정리해 본다. MQTT Protocol이란?MQTT 프로토콜에 대해 찾아보면 대략 아래와 같은 특징들을 찾아볼 수 있다. Message Queuing Telemetry Transport의 약자이다.IoT를 위해 설계된 매우 가벼운 메세징 프로토콜이다. 불안정한 네트워크 환경에서도 동작한다.TCP/IP 위에서 동작하고 양방향 통신이다.Publish/Subscribe 구조로 동작하기 때문에 Broker가 필요하다.🧐 그래서 이게 어떻게 도움을 준다는 건데..? ..

[생성 패턴] Factory method
생성 패턴(Creational pattern)은 기존 코드의 유연성과 재사용을 증가시키는 객체 생성 방법들을 제공한다. 오늘은 생성 패턴 중 하나인 Factory method pattern(펙토리 메서드 패턴) 에 대해서 공부해보았다. Factory Method란? Factory Method는 superclass에서 객체를 생성하기 위한 인터페이스를 제공하고 subclass에서 생성될 객체의 유형을 변경할 수 있도록 하는 디자인 패턴이다. 내가 만든 시나리오 간단한 시나리오로 위의 설명을 보충해본다. 배달 어플리케이션을 만든다고 가정해보자. 처음에는 배달을 항상 오토바이로만 했기 때문에 motorcycle이라는 클래스를 만들어서 관리하였다. 운이 좋게 배달이 잘 되어서 이제는 오토바이 뿐만 아니라 킥보드..
우분투 블루투스 스피커 설정
/* 해당 포스트는 Ubuntu16.04를 기준으로 작성합니다 */ 우분투에서 블루투스 스피커를 연결해도 소리가 나지 않는 경우가 있다. 대부분은 소리 설정에 들어가서 사운드를 Headset으로 바꿔주면 해결이 된다. 블루투스 스피커를 연결할 때마다 설정을 들어가는 건 매우 귀찮은 일이다. 자동으로 설정되도록 바꿔보자. /etc/pulse/default.pa 파일을 열고.. .ifexists module-bluetooth-discover.so load-module module-bluetooth-discover .endif 약 70번대 줄에서 위에 보이는 부분을 아래처럼 바꿔보자 (한 줄만 추가해주면 된다) .ifexists module-bluetooth-discover.so load-module modu..
[Linux] 리눅스 복사&붙여넣기
/* 해당 포스트는 Ubuntu16.04를 기준으로 작성합니다 */간단하지만 꼭 필요한복사 붙여넣기 단축키에 대해서 알아보자. 리눅스나 유닉스계열의 OS를 처음 이용한다면 복붙을 위해서 Ctrl-C Ctrl-V를 사용하지 못한다. 터미널에서 Ctrl-C는 프로세스를 종료 시키는 단축키이다. 터미널에서 복붙하는 방법은 다음과 같다. 복사: Ctrl+Insert 또는 Ctrl+Shift+C 붙여넣기: Shift+Insert 또는 Ctrl+Shift+V (Insert는 DEL버튼 위에 있는 INS입니다) 물론 위의 방법은 마우스가 없는서버 버전에서는 사용하지 못한다. Vim 같은 편집기에는 키보드를 이용해서복붙하는 방법이 따로 있으니 걱정하지 말자! 사실 위의 방법은 윈도우에서도 사용가능하다.