Posts by Tag

Tip

[Flutter] 왜 copyWith()를 사용할까?

작성 날짜:

Flutter로 개발을 하다보면 copyWith()란 메소드를 사용하거나 마주칠 일이 자주 있다. TextStyle, Theme 등 다양한 클래스에서 copyWith() 를 제공하고 있다.

[Dart] Enum(Dart 2.17)

작성 날짜:

오늘은 Dart의 enum에 대해 정리를 해보려고 한다. Dart 2.17 버전이 나오기 전까지는 enum의 사용성이 좋지 않았다. 하지만 2.17 버전부터는 enum의 확장성이 class처럼 꽤 좋아졌다.

[Dart] extends vs implements vs with

작성 날짜:

상속이란 기존에 존재하는 클래스(슈퍼 클래스)를 재사용하거나 확장하는 새로운 클래스를 만드는 것을 말한다. 이러한 상속은 당연히 객체지향 언어인 Dart에도 존재한다.

[Flutter] precachePicture()를 통해 svg 파일을 캐시에 저장하기

작성 날짜:

이전에 precacheImage()를 통해 이미지 파일의 로딩 시간을 줄이는 법(https://terry1213.github.io/flutter/flutter-precacheimage/)을 정리했었다. 다른 이미지 파일들은 해당 방법으로 캐시에 저장할 수 있지만, svg 파일에는 ...

[Flutter] ModalBottomSheet 높이 조절

작성 날짜:

Flutter에서 대부분의 위젯들은 쉽게 높이를 설정할 수 있다. SizedBox나 Container으로 위젯을 감싸고, height를 설정해주면 된다.

[Flutter] 특정 위젯의 위치로 스크롤 이동

작성 날짜:

한 화면에 담아야할 정보가 너무 많아져서 스크롤이 길어질 때가 있다. 이때 사용자가 매번 화면 드래그를 통해 스크롤을 이동시켜야하면 매우 불편하다. 따라서 특정 위젯의 위치로 스크롤을 이동시키는 기능이 필요하다.

[Android Studio] 새로운 폴더 생성하는 법

작성 날짜:

새로운 폴더 생성하는 방법이 게시글로 작성할 만한 주제인가 싶기도 하다. 그런데 Android Studio에서 새로운 폴더를 생성하는 방법이 조금 특이하다.

[Flutter/Web] url에서 샵(#) 없애기

작성 날짜:

요즘 플러터로 웹 개발을 해야할 일이 생겼다. 네비게이션(페이지) 작업을 하다가 우연히 url이 눈에 들어왔다.

[Jekyll] Magnific Popup을 통한 이미지 확대 기능 추가

작성 날짜:

블로그에 글을 올리다 보니 몇몇 사진의 경우 확대해서 볼 수 있으면 좋겠다고 생각했다. 링크를 사용해서 간편하게 구현할 수 있지만 보는 입장에선 불편할 것 같았다. 그래서 다른 url로 이동하지 않고 게시글 내에서 확대할 수 있게 하는 방법을 찾다보니 Magnific Popup라는...

[Android Studio] 전체 변경(Replace All)

작성 날짜:

Android Studio를 통해 개발할 때 변수나 함수의 이름을 변경해야할 때가 있다. 그런데 만약 이름을 변경하려는 변수나 함수가 너무 많은 파일에서 사용되었다면 이를 하나씩 전부 찾아서 변경하는 건 불가능하다. 이런 경우에 전체 변경(Replace All) 기능을 사용하면 된...

[Android Studio] 전체 검색(Find All)

작성 날짜:

현재 파일 내에서의 검색은 워낙 많은 곳에서 사용하기 때문에 대부분 알 것이다. 그런데 파일 내에서만 검색할 일만 생기지는 않다. 프로젝트 전체 검색이 필요할 때가 굉장히 많았는데 일일이 찾다가 지쳐버렸다. (지금 생각해보면 굉장히 미련한 짓이었다. 다음부터는 미리 찾자...)

[Xcode] 폰트 자동 조절(Automatically Adjusts Font) 기능

작성 날짜:

가끔 어르신들 핸드폰을 보면 텍스트가 필자의 핸드폰의 텍스트보다 훨씬 클 때가 있다. 텍스트 크기를 설정 기능을 제공하고 있기 때문에 유저는 이를 사용해 텍스트 크기를 자유롭게 변경할 수 있다. 아이폰도 마찬가지이다. 필자의 아버지도 아이폰을 사용하시는데 텍스트 크기를 많이 크게 ...

[Xcode] 코드 재정렬(Re-Indent) 방법

작성 날짜:

열심히 프로그래밍을 하다보면 간혹 분명 내가 짠 코드인데 알아보기가 어려울 때가 있다. 코드를 짤 때 identation을 완벽하게 한다면 괜찮겠지만 사실 완벽하게 하기는 어렵다. 이는 Xcode에서도 마찬가지이다. 그럴 때 필요한 게 코드를 재정렬해주는 기능이다.

[Rouge] 지원하는 언어 리스트 (List of supported languages)

작성 날짜:

블로그를 작성할 때 자주 사용하는 것이 Rouge이다. Rouge를 통해 다양한 언어의 코드를 보기 좋게 하이라이트(highlight) 할 수 있기 때문이다. 그런데 내가 지금까지 블로그에 사용했던 언어 종류만 봐도 C, JavaScript, Swift, Dart, Shell 5가...

[Flutter] 자동 주석 기능(Auto Comment)

작성 날짜:

Flutter에선 괄호 뒤에 자동으로 주석을 달아주는 편리한 기능을 제공한다. 덕분에 코드의 구조를 더 쉽게 파악할 수 있다. 그런데 사용하다가 보면 해당 기능이 꺼져있어서 다시 키고 싶을 수 있다. 혹은 반대로 주석 때문에 난잡하다고 생각해서 해당 기능을 끄고 싶을 때가 있다.

[Flutter] 코드 자동 정렬(Reformat) 하는 법

작성 날짜:

열심히 프로그래밍을 하다보면 간혹 분명 내가 짠 코드인데 알아보기가 어려울 때가 있다. 코드를 짤 때 identation을 완벽하게 한다면 괜찮겠지만 사실 완벽하게 하기는 어렵다. 이는 Flutter에서도 마찬가지이다.

맨 위로 이동 ↑

코딩문제

맨 위로 이동 ↑

Document

[Dart/Document]A tour of the Dart language - 10. Classes

작성 날짜:

목차로 돌아가기 Classes Dart는 클래스와 혼합 기반 상속(Mixin-Based Inheritance)을 포함하는 객체 지향 언어(Object-Oriented Language)이다. 모든 오브젝트는 클래스의 인스턴스이고, 모든 클래스는 Object(모든 Dart 오브젝트의 ...

[Dart/Document] A tour of the Dart language - 9. Exceptions

작성 날짜:

목차로 돌아가기 Exceptions Dart에서 exception을 throw 하고 catch할 수 있다. exception은 개발자가 기대하지 않는 일이 일어났다는 것을 알려주는 에러이다. 만약에 exception이 잡히지 않으면 exception을 발생시킨 isolate가 중단...

맨 위로 이동 ↑

Error

[Flutter] Failed to start the Dart CLI isolate(null). 에러

작성 날짜:

오늘 특정 프로젝트의 패키지를 최신 버전으로 변경하는 작업을 진행했다. 버전 변경 중 특정 패키지의 디펜던시 문제 때문에 Flutter를 최신 버전으로 업그레이드했다.

[Flutter] Unable to find bundled Java version. 에러

작성 날짜:

안드로이드 스튜디오를 Arctic Fox 버전으로 업데이트했다. 업데이트 후 iOS 시물레이터에선 Flutter 어플이 정상적으로 돌아갔지만, Android 에뮬레이터에서 실행하려고 하니 빌드 자체가 되질 않았다.

맨 위로 이동 ↑

DecodingFlutter

맨 위로 이동 ↑

WidgetOfTheWeek

맨 위로 이동 ↑

Package

[Flutter] GetX 정리

작성 날짜:

최근 주변에 상태 관리 툴로 GetX를 사용하는 사람들이 많아지고 있다. ‘나도 GetX를 한번 사용해볼까’하는 생각도 들었지만, Provider를 배운지도 얼마 되지 않아서 익숙해지고 있는 중이라 나중에 사용해보기로 마음먹었다.

맨 위로 이동 ↑

Web

[Flutter/Web] url에서 샵(#) 없애기

작성 날짜:

요즘 플러터로 웹 개발을 해야할 일이 생겼다. 네비게이션(페이지) 작업을 하다가 우연히 url이 눈에 들어왔다.

맨 위로 이동 ↑

Warning

맨 위로 이동 ↑

Etc

[CS] SOLID 원칙 - 1. 정의

작성 날짜:

객체 지향 프로그래밍에서 기본이 되는 5가지 원칙이 있다. 각 원칙의 앞자를 따와서 SOLID 원칙이라고 부르는 이 원칙은 프로그램의 유지보수성, 확장성, 재사용성을 향상시키기 위해 만들어졌다.

맨 위로 이동 ↑