Flutter Dart Mode내가 필요해서 만든 앱이지만 혹시나 필요한 사람이 있을까 해서 스토어에 올려두었는데 몇 개월이 지나고 보니 몇몇 의견이 달려 있었다. 그 중 가장 많은 요구사항은 다크모드를 적용해 달라는 거였다. 나는 다크모드를 사용하지 않아서 전혀 신경
갤러리 앱에는 왜 셔플 모드가 없을까? 라는 생각에서 출발한 Shuffle Gallery 개발 로그
간단한 아이디어를 앱으로 만들고 싶었는데 android 말고 ios에서도 돌려보고 싶어서 크로스 플랫폼 개발 환경을 사용해보기로 하였다. 여러 선택지가 있었지만 flutter가 기존 android studio에서도 개발 가능하기 때문에 이를 사용해 보기로 하였다.
undo git --amend 새로운 commit으로 작성해야 하는데 실수로 --amend 옵션으로 작성해서 덮어씌워지는 경우가 있다. 이 경우에 되돌아가는 방법에 대하여.
하나의 branch만 clone하는 방법. 그리고 다른 branch를 추가하거나 모든 branch를 사용하는 방법.
더 이상 사용하지 않거나 유지보수되지 않는 함수를 사용할 경우 경고 메세지를 보내게 할 수 있는 방법인 deprecated 속성에 대하여
git을 사용하는 경우 아직 commit이 완전히 작성되지 않았지만 이 내용을 공유하거나 저장하고 싶을 경우가 있다. 이런 경우에 wip 기능을 이용한 commit관리 방법을 소개한다.
c++11 부터 사용할 수 있는 using키워드는 typedef 와 동일하게 type의 별칭을 만드는 키워드이다. 얼핏 사용하다 보면 같은 기능을 가진 것으로 보이지만 하나의 큰 차이점이 있다. 바로 template의 별칭을 지정할 수 있느냐 없느냐의 차이이다.위의 특
std::enable_shared_from_this 을 사용하거나 std::shared_ptr을 사용하여 객체를 생성하고자 할 때 private 생성자로 인한 컴파일 에러를 수정하는 방법
수정된 여러 파일들이 있는 경우 하나 혹은 몇 개만 되돌리고 싶을 때 checkout 명령어를 사용하는 방법
객체지향 언어인 C++에서 다형성(Polymorphism)을 사용하려면 보통 raw pointer, 혹은 smart pointer를 사용한다고 알려져 있다.하지만 reference로도 동일하게 다형성을 구현할 수 있다.
기본 매개변수(Default Parameter)가 있는 함수는 override하면 의도하지 않은 동작을 할 수 있다.어떤 함수에 대해서도 상속받은 기본 매개변수 값은 절대로 재정의하지 말자Effective C++의 한 항목 제목이다. 왜 절대 하지 말라는지 아래 코드와
C++11의 특성을 이용한 Thread-safe Singleton 구현 방법
Singleton은 인터페이스를 통해 추상화하지 않고 해당 클래스를 그대로 참조하므로 mock을 만드는데 어려움이 있다. 이를 #MockingNonVirtualMethods 을 사용하여 해결하는 방법