-
mobx를 이용한 flutter 상태 관리
들어가며 상태 관리란 무엇일까요? 위키 설명을 따르자면 텍스트 필드 같은 여러개의 UI 컨트롤의 상태를 관리하는 것을 의미합니다. 예를 들자면, 회원 가입창에 이메일이 유효하면 전송 버튼이 활성화되고 유효하지 않으면 단추가 비활성화되는것 같은 상황은 상태에 따른 UI 컨트롤이 관리되는 경우입니다. 그래서 뭐가 다른건데? 사실 이래선 기존이랑 뭐가 다른지 알 수가 없습니다. 여기서는 flutter 를 예를 들어보도록 하겠습니다. flutter의 구성은 widget 들의 조합입니다. 최상위 root widget 에서 하위 widget 을 포함하는 전형적인 tree 구조를 가집니다. 어디선가 비슷하죠? react...
-
java GC
시작에 앞서.. java GC 를 다루게 된 것은 별다른 이유가 있는 것은 아닙니다. java 개발을 하고 있고 언젠가 봐야지 하며 미루던 것을 하나씩 정리 하려고 합니다. 앞으로도 java 또는 개발에 필요한 기초를 하나씩 점검해 보고자 합니다. Hello World? Stop the World! GC 를 실행하기 위해 JVM 이 어플리케이션 실행을 멈추는 것. stop-the-world 가 발생하면 GC 를 실행하는 쓰레드를 제외한 나머지 쓰레드는 모두 작업을 멈춤 GC 를 튜닝 한다는 것은 “stop-the-world” 의 시간을 줄이는 것. 객체와...
-
Retrofit2
인트로 kotlin 개인 스터디 진행 중 어느 정도 기본 문법이 익숙해 지니 네트워크를 통한 데이터 취득을 해볼까? 하는 마음에 네트워크 통신 라이브러리 검토 중 문득 팀동료에 메세지가 생각났다! 이번 포스팅은 retrofit2에대한 간략한 소개를 진행 합니다. retrofit2 retrofit2이란 okhttp + rxkotlin + json파싱 라이브러이가 혼합된 네트워크 통신 라이브러리 입니다. 개발자가 네트워크 통신 시 신경 써야한 시스템 오류, 스레드 처리, 문자열 파싱 처리등에 편의성을 제공 하며,REST api 통신에 특화 되어 있습니다. 웹서핑 결과 kotlin 언어 도입과 마추어...
-
App Design
처음으로 모바일 디자인을 시작하면 작은 화면에서의 해상도 대응에 어려움을 토한다. 보통 디자이너들은 px 의 단위와 친숙하기 때문에 실제 모바일 환경에서 어떤 단위를 쓰는지 모르는 경우가 많기 때문이다. 그래서 이번에 모바일에서 사용하는 기본 단위와 해상도에 대응하는 방법에 대해 소개하려고 한다. 기본 단위 안드로이드의 기본 단위는 dp(density independent pixels)이고, IOS의 기본 단위는 pt (Point) 이다. dp 와 pt 는 모두 픽셀과 같은 좌표 개념이며, 개발자에게 가이드 명세서를 제공 할 때 오브젝트 사이의 간격과 크기, margin 등을 이...
-
Spring Security?
웹 어플리케이션을 개발하다보면 회원인증, 접근권한 관련하여 고민하게 됩니다. 직접 관련로직을 구현하다 보면 누락이 생기기도 하고, 관리도 힘들어 지기도 하고… 그래서 이런 인증과 권한을 관리하기 위해 JAAS, Spring Security, Apache Shiro 등 여러 Java프레임워크가 존재하는데 그 중 Spring Security에 대해서 알아보고자 합니다. Authentication Spring Security의 대략적인 구조는 아래와 같습니다. 1 사용자 인증 요청 2 사용자 자격 증명 (아이디, 패스워드) 기반으로 Authentication Token 생성 3 인증을 위해 AuthenticationManager에 Authentication Token을 전달받아, authenticate 메소드를 호출 4 AuthenticationManager를 구현한...