전체 글 (1603) 썸네일형 리스트형 Android Slack send message example (Incoming WebHooks) Slack에서 "Configure Intergrations" 클릭 - "Add New Integration" - "Incoming WebHooks"를 만드시면 token이 포함된 URL이 나옵니다. 해당 URL을 넣고 사용하시면 됩니다. 프로그래밍 Design Pattern 이해하기 - 5 싱글턴 패턴 싱글턴 패턴 (One of kind Objects : 유일무이한 객체) 개발자 : 싱글턴 패턴은 왜써요!? 고수 : 여러가지 중 단 하나만을 필요로 하는 객체들이 많다. 환경 세팅과 관련된 thread pools, caches나, 로깅을 위한 오브젝트(Log) 혹은 장치 드라이버(그래픽카드나 프린터와 같은) 것들이 그런 것들이다. 사실 우리는 다양한 타입의 객체를 사용하고 있지만, 만약 프로그램을 짤 때 (하나만 필요한 경우에도) 모든 객체들을 각각의 인스턴스를 만들고 사용하게 되면, 실수로 인해 오류가 발생하거나, 코드의 중복 등 유지보수가 힘들어진다. 개발자 : 그래! 이해했어! 하나로 동작하는 클래스를 만드는 이유에 대해서는 알겠는데, 그렇다면 난 이 포스팅을 봐야해? 그냥 전역변수를 static .. 일을 잘한다는 사람이 된다는 것 일을 잘한다는 사람이 되기 위해서 필요한 것은 무엇일까? 해답은 바로 '보고'이다. 실력과 일을 처리하는 능력은 하면 할수록 늘기 마련이다. 하지만 '보고'를 잘 한다는 것은 그리 신경을 쓰지 않는 경우를 많이 본다. 흔히 '보고'라는 단어의 의미를 '높은 이에게 진행사항을 말한다'라는 의미로 생각하는 경우가 많다. '보고'의 정확한 의미는 '일에 관한 내용을 글이나 말로 알림'이다. 즉 윗사람 뿐 아니라 같이 일하는 팀원, 상하를 막론하고 일에 대해 알리는 것을 의미한다. 일을 하면서 가장 어려운 것이 바로 '소통'이다. '잘하는 팀'은 '아웃풋이 잘나오는 팀'을 의미한다. '아웃풋이 잘나온다는 것'은 '아웃풋을 내는 과정'이 좋다는 의미이다. 과정을 좋게 하기 위해선 팀웍이 좋아야 한다. 팀웍이 좋다.. 프로그래밍 Design Pattern 이해하기 - 4 팩토리 패턴 팩토리 패턴 이번 시간엔 팩토리 패턴에 대해 알아보자. 이 한줄을 보자. MallardDuck을 Concreate Class라고 부른다. (abstract class를 상속받아 구체화된 객체를 Concreate class라고 부른다!) 위와같이 abstract class를 상속받아 서브클래싱을 하면, new MallardDuck();처럼. 이렇게 되면, runtime 도중에 Duck을 바꿀 수가 없게 된다. 쉽게 예를 들면 아래와 같이, 매번 상태에 따라 Duck을 바꿀 때 객체를 만들어야 하며, 수없이 많은 조건들이 생겨나게 된다! 이런 코드들이 많아지면, 앱을 유지보수하는데 굉장히 어려워지며 또한 잘못고쳤을 때 독립성이 유지되지 않아 에러가 많이 일어나게 된다. "new"의 잘못된 점은 무엇일까? 기.. 프로그래밍 Design Pattern 이해하기 - 3 데코레이터 패턴 데코레이터(팅) 패턴 스타버즈라는 커피숍은 매우 빠른 속도로 성장한 초대형 커피전문점이다. 너무 빠른 성장을 했기 때문에 음료의 종류가 다양한데, 이 음료의 종류를 모두 포괄하는 음료 주문시스템을 만들려고 한다. 처음 사업을 시작할 때 만들어진 클래스는 아래의 구조를 띈다. - Superclass beverage는 '음료'를 나타내는 abstract 클래스며, 모든 음료수는 이를 상속받는다. - cost()는 abstract메소드로 자식클래스가 이를 새로 정의하여 가격을 구현한다. - 처음에는 4가지의 커피만 판매하고 있다. 하지만! 엄청나게 빠른 성장을 거두면서, 음료수의 종류가 폭발적으로 늘어가고 각 음료수에 우유, 두유, 모카, 생크림 등 다양한 종류가 생기면서 고민에 빠진다! 첨가물만 들어간다고 .. Android Rotate 3D Animation 안드로이드 앱과 태블릿에서 nineOldAndroids를 사용하던 앱을 구글 TV용앱으로 포팅하던 중에, 애니메이션이 안되서 살펴보니, ViewPropertyAnimation이 구글 TV에서 돌아가지 않더군요 :( 안드로이드 기본에서 제공해주는 애니메이션은 정상작동하나, 제가 필요한 건 3D로 축을 기준으로 회전하는 애니메이션이였습니다! Camera와 Matrix를 통해 applyTransformation을 통해 구현을 하면 가능합니다~! [Anrdroid Wear] Wear에만 Notification 띄우기 안드로이드 웨어에서는 onGoing 속성(취소가 불가능한 '진행중') 을 가진 Notification은 카드뷰를 띄우지 않습니다. 클라이언트 앱에서 NotificationCompat 을 이용해 'startForeground'로 앱을 띄우고 있는 경우에는 웨어에 카드뷰가 뜨지 않아 당황스럽습니다. (같은 Notification ID를 가질 경우 NotificationManager.notify와 startForeground를 중복으로 해도 뜨지않아요) 이런 경우에는 Group속성을 이용해봅니다. (Stack Notification) 프로그래밍 Design Pattern 이해하기 - 2 옵저버 패턴 옵저버 패턴 옵저버 패턴(Observer Pattern)은 한 객체의 상태가 바뀌면, 그 객체에 의존하는 다른 객체들이 자동으로 갱신되는 일:다 패턴이다. '한 객체의 상태가 바뀌면, 그 객체가 의존하는 다른객체들(옵저버)에게 연락이 간다''출판사가 주체라면, 구독자는 옵저버가 된다' 옵저버 패턴의 조건 옵저버 패턴에서 상태를 저장하고 있는 것은 주체다. 옵저버는 이 '상태'를 사용하고 있지만, '반드시' 가지고 있어야 하는 것은 아니다. 최대한 느슨하고 또 느슨하게 결합을 가지도록 노력해야 하낟. 객체간의 결합도가 높을 수록 유지보수가 힘든 작업이 될 수 밖에 없다. 1편에서 봤던 '스트레티지 패턴'을 보면 '상속'보다는 '위임(인터페이스)'을 쓰면서 메소드만 가진 객체를 분리했듯이! 어떤 패턴이든 결.. 이전 1 ··· 28 29 30 31 32 33 34 ··· 201 다음