전체 글
안드로이드에서 적용해본 템플릿 메소드 패턴
Anti-OOP: if를 피하는 법 : NHN Cloud Meetup (toast.com) Anti-OOP: if를 피하는 법 : NHN Cloud Meetup Anti-OOP: if를 피하는 법 meetup.toast.com 참고해서 프로젝트에 적용해봤다. 내가 진행하는 프로젝트에서는 다이얼로그 클래스는 하나이지만 다양하게 활용할 수 있도록 모드를 이용해서 dialog를 show 했다. - 이전 코드 private fun registerADialog() { val dialog = customDialog() dialog.mode = 1; dialog.show(...) } private fun registerBDialog() { val dialog = customDialog() dialog.mode = 2..
안드로이드 Sharedpreferences commit vs apply
void apply () 호출후 곧바로 리턴되어 스레드를 블록시키지 않는다. 커널모드에서 파일 저장을 알아서 처리. boolean commit () 호출시 스레드는 block 되고 커널에서 파일 저장 완료. 함수는 리턴되고 스레드는 다시 작동하며 처리결과를 true/false 로 반환한다. 굳이 결과값이 필요 없다면 apply 를 사용하는게 반응성면에서 좋다. sharedPreference결국은 파일에 저장하는 데이터인데 별도 스레드에서 비동기 처리할 필요가 있다고 볼 수 있다. commit 호출시 동기 처리 apply 호출시 비동기 처리되므로 apply 를 사용하면된다.
드로이드나이츠 2021 테스트코드편
[드로이드나이츠 2021] 강사룡 - Android Testing Best Practices - YouTube 드로이드나이츠 2021 Android Testing Best Practices Why should I write test code 코드 생산성 증대: 확신을 갖고 시스템을 수정할 수 있음. 효율적으로 버그를 잡을 수 있음 코드 변경(특히 Refactoring)을 쉽게 할 수 있다. modular한 설계에 도움: Single responsibility Why should we write test code? 협업을 위해 반드시 필요 여름휴가 중 내 코드에서 장애가 난다면? or 몇 개월 뒤의 내가 갑자기 내 코드를 다시 보게 된다면? 협업을 촉진: 코드 주인이 아니더라도 코드를 수정할 수 ..
cs 질문 HTTP
HTTP와 HTTPS 차이점 HTTP (Hyper Text Transfer Protocol) 암호화가 추가되지 않은 기본적인 프로토콜 HTTPS (Hyper Text Transfer Protocol Secure) SSL(보안 소켓 계층)을 사용해서 안전하게 데이터를 주고 받을 수 있도록 만든 프로토콜 HTML (Hyper Text Markup Language) 웹 페이지를 만들 수 있는 언어 HTTP Procotol 서버/클라이언트 모델을 따르는 프로토콜이다. TCP/IP 위에서 작동하고, 어떤 종류의 데이터를 전송할 수 있도록 설계됨 클라이언트는 URI을 이용해서 서버를 접속 후 데이터를 요청할 수 있다. 서버는 클라이언트의 요청을 해석하고 응답을 한다. Connectionless 서버에 연결하고 응답..