분류 전체보기
-
[CRLF] CRLF란 무엇일까?컴퓨터지식/운영체제 2023. 11. 3. 13:35
가끔 git 업로드 할 때나, 데이터 통신을 할때, 서로 다른 OS에서 문자열을 처리할 때 CRLF에 대한 경고문을 보게 된다. 여기서 말하는 CRLF란 무엇일까?? CR + LF CRLF는 CR 과 LF 가 합쳐진 말이고, 타자기에서 유래되었다. CR CR은 Carriage Return의 약자로 Carrige는 타자기 등의 기계에서 다른 부분을 이동시키는 것을 만한다. 즉, 종이를 움직여서 현재의 커서를 제일 왼쪽으로 이동한다는 말이다. LF LF는 Line Feed의 약자로 모니터의 커서 위치나 프린터 인쇄 위치를 한줄 아래로 내리는 것을 말한다. CRLF 결론 적으로 CR+LF인 CRLF는 현재의 커서를 제일 왼쪽으로 움직이기 + 한줄 아래로 내리기 인것이다. 그러므로 IDE나 메모장, Word 등..
-
[Dart] extends와 implements의 차이??Flutter 2023. 11. 2. 14:44
공통점 둘 다 class가 다른 class를 상속받을 때 사용한다. class A extends B{} class C implements D{} 차이점 Java 에서는 extends는 class가 class를 상속받을 때, implements는 interface를 상속받을 때 사용했는데 Dart에서는 조금 달라 정리해본다. Dart에서는 interface라는 키워드가 대신 이를 상속 받을때 extends로 하냐, implements로 하냐에 따라 부모 class 내의 method 내용을 채워야 하느냐 마느냐(재정의)에 차이를 둔다. Java에선 implements로 상속받으면 부모 interface의 method 안의 내용이 없기 때문에 자식 class에선 method안에 내용을 채워야 했다. Dart에..
-
[Dart] Dart에서의 static, const와의 차이점?Flutter 2023. 11. 1. 16:56
static static은 class 내에 귀속되어 고정되는 변수나 함수를 선언할 때 사용. 서로 다른 여러개의 인스턴스를 생성해도 static으로 지정한 값은 공유되어 참조한다. static을 사용한 변수는 내부에서도 this. 을 붙이지 않는다. static 키워드를 사용하여 생선한 method는 인스턴스를 생성하지 않고 직접 호출할 수 있다. = 좀 더 편리하게 사용하기 위해 사용 const class와는 상관없다. cosnt는 상수를 정의할 때 사용되고 런타임 때 변경 불가능하다. = 코드의 안정성을 위해 사용
-
[Dart] "toString"과 "as String" 차이?Flutter 2023. 10. 31. 13:10
"toString"과 "as String"은 애초에 전혀 비슷하지도 않은 다른 문법이다. 그냥 to랑 as 가 있어서 처음 보는 사람은 헷갈릴 여지가 있는 것 뿐. toString toString은 타입을 변환시켜주는 것이다. int a = 4; a.toString(); 하면 a가 String으로 변환돼어서 '4'가 되는 것 String을 다시 int로 변환시켜주고 싶다면 int.parse(a); as String 이건 그냥 as 뒤에 String이 붙은 것 뿐이다. String 뒤에 다른 어떤 class나 타입이 들어가도 상관없다. 그래서 dart에게 이건 String 타입이라고 알려주는 것 뿐 String a = '4'; final b = a as String; 이렇게 하면 a가 String이 아니면..
-
[Flutter] FocusNode 활용Flutter 2023. 10. 30. 15:52
TextField가 여러개 있다면, 원하는 Field에 Focus를 줄 수 있게하는 위젯이다. 보통 키보드의 엔터키를 누르거나, 다음 버튼을 터치했을 때 Cursor가 자동으로 넘어가게 할 때 유용하다. final FocusNode _focusNode = FocusNode(); 이렇게 선언 후 controller처럼 Textfield 하나 당 focusnode 하나를 할당해주면 된다. TextFormField( autovalidateMode: AutovalidateMode.always, autofocus: true, controller: _textEditingController, focusNode: _focusNode, decoration: InputDecoration( label: Text( 'Ente..
-
Flutter 생명 주기Flutter 2023. 10. 23. 14:21
- Flutter의 화면은 위젯으로 이루어져 있다. - 모든 위젯은 위젯트리에 의해 관리되고 있다. - Stateless 위젯은 한번 생성되면 절대 바뀌지 않기 때문에 상태 변환을 하려면 완전 삭제 후 다시 생성해야 한다. - Stateful 위젯은 상태 관리를 위한 별도의 State 객체와 링크하여, 위젯을 제거하지 않고도 상태를 변화시킬 수 있다. Stateful WidgetLifeCycle 상태 설명 처음Constructor와 CreateState() 를통해 Stateful 위젯이 생성된다. 여기까지만 하면 사실상 Stateless 위젯임. 그리고 상태관리를 해주는 State 객체에 연결(mount)된다. initState() 제일 처음 mount 되었을 때 실행되는 함수. 한번 불리면 다시 불리지..
-
[Flutter] Text 위젯의 overflow 속성 - 글자 수가 길어 넘어갔을 때Flutter 2023. 10. 19. 11:59
Text 위젯을 사용할 때 글자수가 너무 많아 부모 Container의 크기를 넘어갔을 때 Text( '글자 크기가 너무 길어서 넘어가요 넘어가요 넘어가요', overflow: TextOverflow.ellipsis, ) 와 같이 overflow: TextOverflow.원하는 모양 을 넣어주면 글자 크기가 화면을 넘어갔을 때의 보이는 모습을 설정해 줄 수 있다. clip, fade, ellipsis, visible 등이 있다.
-
[Flutter] IntrinsicHeight 한줄 정리Flutter 2023. 10. 19. 11:50
Intrinsic = 본질적인, IntrinsicHeight 위젯으로 감싼 위젯은의 자식은 부모 위젯이 제한한 고유한 높이에 자신의 높이를 맞춘다. IntrinsicHeight( child:Row( children:[ Container( height: 200, ), Expanded( child: Column( children: [ Text('1'), Text('2'), Text('3'), ] ), ), ] ) ) 이런 코드가 있으면, Expanded로 높이가 지정되어 있지 않은 Column의 높이는 200으로 맞춰진다.