본문 바로가기
[실용주의 프로그래머] 가역성 [실용주의 프로그래머] 가역성 -당신이 가진 생각이 딱 하나밖에 없다면, 그것만큼 위험한 것은 없다. - 에밀 사르티에 -무언가를 구현하는 방법에는 여러 가지 길이 있고, 보통 하나의 솔루션에는 여러 벤더의 제품이 존재한다."이것은 이 방법으로만 해결할 수 있어"와 같은 근시안적인 생각을 갖고 프로젝트에 참여한다면 아마도 예상치 못했던 경우에 의해 한숨지을 일이 많을 것이다.많은 프로젝트 팀들이 프로젝트를 진행하면서 어쩔 수 없이 고통스럽게 그들의 근시안을 조금씩 수정하게 된다. 가역성 -유연하고, 적응 가능한 소프트웨어를 만드는 방법은 DRY 원리, 결합도 줄이기, 메타데이터 사용하기 등이 있다.이들을 따른다면 중요하면서도 되돌릴 수 없는 결정을 가능한 한 줄일 수 있게 될 것이다.이는 우리가 프로젝트.. 2018. 10. 1.
[실용주의 프로그래머] 직교성 [실용주의 프로그래머] 직교성 -설계, 빌드, 테스트 그리고 확장하기에 쉬운 시스템을 만드는 데에 있어 직교성(Orthogonality)은 매우 중요한 개념이다. 직교성이란 -컴퓨팅에서 이 용어는 일종의 독립성(independence)이나, 결합도 줄이기(decoupling)을 의미한다.하나가 바뀌어도 나머지에 어떤 영향도 주지 않으면 서로 직교한다고 할 수 있다. 비직교적인 시스템 직교성의 장점 -시스템의 컴포넌트들이 고도로 상호의존적인 경우, 특정 국지적 부분만 수정하는 방법이란 없다. “” 관련 없는 것들 간에 서로 영향이 없도록 하라. “” -컴포넌트들이 각기 격리(isolate)되어 있으면 어느 하나를 바꿀 때 나머지 것들을 걱정하지 않아도 된다.해당 컴포넌트의 외부 인터페이스를 바꾸지 않는 한.. 2018. 9. 30.
Efficient Android Threading #7 Executor 프레임워크를 통한 스레드 실행 제어 Efficient Android Threading #7 Executor 프레임워크를 통한 스레드 실행 제어 이 글은 Efficient Android Threading 의 일부 내용만 발췌한 내용입니다.자세한 내용은 책을 구입해서 보세용.9.1. Executor -Executor 는 interface 로 void execute(Runnable command); 하나의 함수를 갖는다.단순하지만 강력하다. 이는 테스크를 만드는 것과 실행 사이에 분리를 확실하게 해주기 때문에 기본 Thread 인터페이스보다 더 자주 사용된다. -public class SimpleExecutor implements Executor { @Override public void execute(Runnable runnable){ new.. 2018. 3. 23.
반응형