본문 바로가기

전체 글

[우테코 권장도서] 그림으로 배우는 HTTP 어쩌구저쩌구 2장 2장 간단한 프로토콜 HTTP 이번장은 좀 가볍게 넘어가도 괜찮을것 같다. 별내용이없다. 신기하긴한데 쓸모없는것들? 이거쓸까? 이런것들만 있다. 2.1 HTTP는 클라이언트 서버간의 통신을한다. HTTP는 서버랑 클라이언트가 분명존재하고 각각의 책임은 확실하다는것이다. 또한 요청없이 서버는 응답할수 없다는건데 그래서 서버가 먼저 반응해서 클라가 움직여야할때는 FCM(HTTP/2 기반이라한다)을 이용하던 소켓통신을 하던 다른 방법을 찾는것이라는걸 한번더 알 수 있게 해준다. 2.2 리퀘스트와 리스폰스를 교환하여 성립 당연한 이야기를 하며 OKHTTP에서 쫙 보여주는 HTTP 통신 내역들을 보여준다. 이에대해 좀더 원초적으로 필요할때 한번더 살펴보면 좋을것 같기도 하지만 여기에는 자세한 내용은 안나온다. H.. 더보기
[우테코 권장도서] 그림으로 배우는 HTTP 어쩌구저쩌구 1장 1.2.1 HTML 역사 최초 웹은 지식(문서)를 공유하기위한 시스템으로 출발하여 여러문서를 상호간 관련짓는 Hyper text에 의해 상호간 참조할수있는것이 키워드였다. www를 구성하는 기술로 문서기술로는 SGML을 기반으로한 HTML,문서 전송 프로토콜로는 HTTP 문서 주소 지정방법으로는 URL 을 사용하였다. www는 결국 처음에는 문서를 열람할수있는 웹브라우저 같은 클라이언트 어플리케이션이지만 현재는 일련의 시스템 자체를 www라고 칭한다. 1.2.2 HTML 역사 웹 브라우저 관련 역사가 나오는데 한번 쭉 보면 될것같다. 별 내용은 없고 HTML 표준이야기와 넷스케이프와 인터넷익스플로러 맞짱이야기 정도가 있다. 그리고 현재 파이어폭스 크롬 등등이 또 싸운다 이런이야기이다. 1.2.3 HTTP.. 더보기
[우테코 권장도서] 좋은코드 나쁜코드 1장 1장 코드품질 드디어 사랑스러운 책 좋코나코를 할수있어서 기쁘다. 책을읽는데 많은생각이 들고 요즘 겪는 문제를 고민해볼수있어서 좋았다. 이제 책을 읽으며 느낀 감상을 정리해보려고 한다. 서론 우리는 일상생활에서 소프트웨어에 많이 의존하고있다. 다양한 프로그램이 있겠지만 버그가 났을시 그냥 짜증나고 마는 프로그램(우리가 오류처리안하고 그냥 배째라 넘어가는 앱같은거 -> 문제있음), 하지만 누군가의 인생이 뒤틀릴수도 있는 신뢰도가 필요한 은행프로그램도 있을것이다(실제로 은행권 사람들은 개발에 부담이있어서 가벼운 부서로 소속되기를 원하는것도 봤다.) 어쩃든 이런 코드의 신뢰도 혹은 유지보수가 높은 코드를 짜려면 고품질의 코드를 짜려는 노력을 해야하고 이는 단순 하나하나를 뜯어보면 보잘것 없어보이지만 스노우 볼.. 더보기
안드로이드 비동기처리 어떻게하세요?(enqueue vs future) 비동기처리 뭐 쓰세요?(Thread pool은 어떻게 관리할까?) 내가 제일 좋아하는 주제가 나왔다. 내가 제일 좋아하는 "비동기처리, 오류처리, 그리고 레트로핏 라이브러리 까보기" 뭔가 이름이 ‘이브, 프시케 그리고 푸른 수염의 아내’ 같다 ㅋㅋㅋㅋㅋㅋ 어쩃든 주제가 무엇인가? 비동기처리 Thread관리에 따른 성능차이이다. // 이 글을 쓰기 시작한 시작한 날로부터 한달이 넘게 지나도록 학습하고있는 2023/07/10 기록 이 글을 쓰다가 이렇게 오래걸리고 돌아올줄 몰랐는데 이글은 결론적으로 Thread pool의 관리개념과 최적화 관련글이 되어버렸다.(얼탱이가 없네) 이 글 또한 오류처리처럼 방대한 개념을 모았고 학습기간도 오래되었기 때문에 글이 두서없을 가능성이 크다 그러므로 키워드 위주로 뽑아보.. 더보기
레트로핏은 어떤식으로 비동기처리를 할까? 부제: 레트로핏의 Thread pool 관리 및 어떤 Thread가 작업에 관여하는가? 서론 Retrofit은 아주 강력한 라이브러리라고 하는데 내부적으로 어떻게 쓰레드 관리,비동기처리를 하는지 궁금한적이 있지 않는가? Okhttp3를 사용하다가 Retrofit을 사용한 경험이 있는 사람들은 OkHttp에서는 callBack으로 넘겨주는 함수가 worker Thread에서 동작하여 ui를 변경하는 작업을 매번 runOnUiThread()를 붙여서 작업해야 했던 경험이 있을것이다. 신기하게도 Retrofit을 사용한 이후 callback 함수가 Main쓰레드에서 동작해서 runOnUiThread를 안붙여도 되었는데 그 이유는 무엇일까? 또한 enqueue의 인자로 넘겼던 callback 들은 어떤 과정을 .. 더보기
[제이슨 권장도서] 실무에 바로 적용하는 안드로이드 프로그래밍 11장 요즘 바빠서 블로그고 뭐고 힘들다 그리고 글을 쓰고있는데 주제가 너무 광범위하고 어려워서 callAdapter 할때같이 하나를 너무 오래 하고있다. 스터디에서 간만에 기록할만한 내용이 나와서 글로 정리했다. Room 안드로이드 진영의 ORM인 Room에 대해 다루는 장이였다. sqlite를 기반으로 구글에서 만든 라이브러리로써 편리하게 sqlite를 사용할수있도록 만들었다. 사실상 sqlite를 사용해보면 그냥 Room은 그때그때 사용법을 보면 사용할 수 있을정도의 수준이다. 현재 책에서 나온 단순 사용법은 SQL을 날것 그대로 사용하는 형태인 @Query를 제외하고도 단순한 crud는 제공함으로 이 기능도 이용하자 [Room 공식문서] https://developer.android.com/trainin.. 더보기
[제이슨 권장도서] 실무에 바로 적용하는 안드로이드 프로그래밍 2장 스터디는 진즉에 했는데 정리를 안해서 블로그에 한방에 올린다. 제이슨이 코틀린 컨퍼런스를 다녀와서 서역땅의 안드로이드 책을 추천해줘서 우리 스터디원 모두 읽게되었다. 근데 필요한것만 뽑아서 읽는거라 2장부터 시작한다!! 안드로이와 MVC 뭔가 이름이 거창해서 맨날 고민하던 것들을 깨부셔 줄수있는 획기적인 것이 나오길 바랐는데 그러지는 않았다. 하지만 사실상 알고 있는것들을 한번더 짚어줬고 살짝 모호 했던 것들을 책으로 봤으니 어디가서 이책에 나옴 하고 나의 의견을 강화시킬수 있는정도라고 생각한다. 사실상 나는 안드로이드로 개발을 시작해서 그런지 가장 모호하고 뭐가 분리가되고 이점이 있다는건지 모르겠는 아키텍쳐가 MVC 이다. 하지만 우테코 미션을 통해 콘솔에서 MVC를 구현하는것을 시도 해보았고 여기서 .. 더보기
[우테코 권장도서] 객체지향 사실과 오해 7장 7장 이제 실제 적용하고 코드로 구현하는것을 보여줬다 사실상 정리하고 뭐할건 없는것 같고 실제 이번 미션에서 적용해보고 있는데 나쁘지 않은것 같다. 기회가 된다면 UML을 공부하고 관련 플러그인깔아서 예쁘게 만들어놓고 개발을 시작해야겠다는 생각이 든다. 제이슨의 조언: Mermaid 를 사용해봐라 https://mermaid.js.org/intro/ 코드블럭에 mermaid 설정해주면 UML 보임 ^^ 티스토리는 이런거 지원안하는것 같은데 참 .... 타이포라도 해주는데 참...... 어쨋든 개쩐다 더보기