반응형
날이 갈 수록 어려워지는 플러터
젠장
다음달 부가세 기간이라 원가계산기보다 부가세계산기를 만들어보자 라는 마음이 들었습니다. 바로 스케치 작업했고
코드를 짜기 위해 MVVM 모델로 클래스를 나누어놨습니다. 문제는 Model 쪽에 선언한 변수를 View 클래스에도 쓰고 싶었는데 잘 진행이 안되었습니다. 그러던 와중에 Model 변수를 캡슐화 즉 Getter and Setter 작업이 필요하다는 것을 알게 되었습니다.
Flutter는 변수를 선언하면 공공재가 됩니다. 공공재가 되다보니 한 곳에서 변수의 값이 바뀌면 다른 곳에 쓰이던 같은 변수의 값이 변하게 되는 불상사가 발생됩니다. 그래서 이러한 일을 막기 위해 Model에 있는 변수는 _priavte 하게 먼저 선언을 해주고 필요한 곳에서 쓸 수 있게 public(공공재) 작업을 위해 Getter and Setter 작업을 해줍니다.
class book {
String _flutterdoit = '완판' ;
//Getter
String get flutterdoit => _flutterdoit
//Setter
set (String flutterdoit) => _flutterdoit
}
get, set 옆에 쓰인 flutterdoit 이 공공재 변수명이 되었습니다.
다른 클래스에서 사용가능합니다. getter는 그 변수의 값을 가져오는 것이고, setter는 해당 변수의 값을 저장하는 것입니다.
즉 어플 화면에 flutterdoit의 변수의 값 '완판'을 노출하고 싶을 때는 getter
'완판' 이라는 변수의 값으로 주문이 안되게 만들고 싶으면 setter를 사용하면 되는 것 같습니다.
728x90
반응형
'Flutter-플러터 > 플러터 공부' 카테고리의 다른 글
플러터 숫자 천원단위 콤마 입히기 Format (0) | 2022.12.06 |
---|---|
Flutter Path_Provider. 데이터 저장소 (0) | 2022.12.05 |
[Navigator] Flutter (1) | 2022.12.03 |
카카오 API 받기 (0) | 2022.11.30 |
TextFormField 위젯 (0) | 2022.11.28 |