devlog of ShinJe Kim

[TIL] 2019-08-16 (금)

|

Today I Learned

  • ConstraintLayout 안에서는 match_parent를 되도록이면 쓰지 않아야 한다.
  • 코드의 일부분이 변경되었을 때 다른 부분을 수정하지 않아도 되도록 코드를 짜야 한다. 예를 들면 안드로이드의 ConstraintLayout 안에서 제약을 걸 때, 수직으로 나란히 놓인 1,2,3번 위젯이 있다고 치자. 이 위젯들의 start와 end를 모두 parent에 걸어도 상관은 없다. 하지만 위젯의 width가 변경되거나, 포지션이 변경될 때 모든 위젯의 코드를 수정해주어야 한다. 이를 방지하려면 1번 위젯만 parent에 제약을 걸고 나머지 2,3번 위젯의 start와 end는 1번 위젯의 start와 end에 걸면 된다. 그럼 나중에 레이아웃을 변경하고 싶을 때 1번 위젯의 너비/위치만 변경해주면 2,3번 위젯의 너비/위치는 자동으로 변경된다.
  • mediator 디자인 패턴: 복잡한 관계 속에서 모두가 1:1 관계를 가질 수 있도록, 중재자를 중간에 두는 것.
  • 의존성이 낮고, 일관적인 코드를 짜는 것이 중요하다.

Comments