class A { static int aa = 1; static void aaPrint() { print(aa); } } 코드를 짜면서 가끔씩 나오는 "static" 무슨 역할을 할까요? static 이란? "static"은 프로그래밍에서 여러 의미를 가지는 키워드 중 하나입니다. 일반적으로 static 키워드가 붙은 변수나 함수는 메모리에 한번 할당되어 프로그램이 종료될 때 해제되는 것을 의미합니다. void main() { final b = B(); //B클래스 선언 print(b.bb); //출력 2 b.bbPrint(); //출력 2 } class B { int bb = 2; void bbPrint() { print(bb); } } 기본적으로 클래스의 멤버변수나 멤버함수는 클래스 객체를 생성해야지..
해당 사진처럼 AppBar에 회색 밑줄을 표시하고 싶을 때는 AppBar의 shape 속성을 사용하면 간단하게 할 수 있다. AppBar( ... ... ... shape: Border( bottom: BorderSide( color: Colors.grey, width: 1, ), ), ),
StreamSubscription Stream 이벤트에 대한 구독 입니다. Stream.listen을 사용하여 Stream을 수신하면 StreamSubscription 객체가 반환됩니다. subscription은 리스너에게 이벤트를 제공하고, 이벤트를 처리하는 데 사용되는 콜백을 가지고 있습니다. subscription을 사용하여 이벤트 구독을 취소하거나 stream에서 이벤트를 일시적으로 중지할 수도 있습니다. listen 함수 정의 StreamSubscription listen(void onData(T event)?, {Function? onError, void onDone()?, bool? cancelOnError}); 이벤트를 처리하는 데 사용되는 콜백을 가지고 있습니다. onData onData..
하시는 일 잘되시길 바랍니다. Q. 플러터의 장점이 무엇인가요 ? A. 개발에 필요한 코드량이 줄어듭니다. - 플러터에서는 바로 사용할 수 있는 다양한 위젯은 제공합니다. 그리고 이 위젯들은 사용자가 자유롭게 커스터마이징을 쉽게 할 수 있어서 다른 프레임워크와 달리 현저히 적은 코드로 개발을 할 수 있습니다. 이로 인해 개발 시간도 절약할 수 있습니다. ex) 안드로이드에서 리스트뷰를 띄우기 위해서는 어댑터, 뷰홀더, 모델, 레이아웃 매니저 등 을 사용해야 리스트를 띄울 수 있습니다. 하지만 플러터에서는 간단한게 ListView위젯을 사용하면 리스트를 띄울 수 있습니다. A. 크로스 플랫폼 개발이 가능합니다. - 플러터를 사용하면 여러 플랫폼에서 실행되는 코드를 작성하고 관리할 수 있습니다. 개발자는 다..
Key 란? 위젯 트리에서 위젯이 움직일 때마다 현 상태를 보존하는 역할을 하는 Key입니다. Key를 사용해서 이전에 스크롤 한 위치를 기억해서 다른 페이지를 갔다가 다시 빌드 될 때 해당 스크롤 위치로 다시 갈 수 있고 컬렉션을 수정한 상태를 보존할 수 있습니다. 이렇게 들어서는 이해가 안 되니 아래에서 추가 설명하겠습니다. 아래에서 Tree에 대해서 보고 오면 더욱 쉽게 이해할 수 있습니다. https://jutole.tistory.com/70 [Flutter] Widget Tree / Tree 란 무엇인가? Tree 란 ? Flutter에 있는 3가지의 Tree를 알아보겠습니다. Widget Tree : 위젯 트리는 우리가 코드로 작성한 위젯들을 트리 형식으로 표현한 것입니다. 위젯 트리는 imm..
Tree란 ? Flutter에 있는 3가지의 Tree를 알아보겠습니다. Widget Tree 위젯 트리는 우리가 코드로 작성한 위젯들을 트리 형식으로 표현한 것입니다. 위젯 트리는 immutable 한 특성을 가지고 있어 트리가 변경되면 파기됐다가 다시 재생성 됩니다. 위젯 트리는 Element Tree와 1 대 1로 연결되어 있습니다. @override Widget build(BuildContext context) { return Scaffold( body: SafeArea( child: Row( children: [ StlColorTile(), StlColorTile(), ], ), ), ); } 이러한 코드를 작성했다면 위젯 트리는 다음과 같을 것입니다. Element Tree immutable 한..