본문 바로가기

전체 글94

[MBTree] 기록#2: 채팅 화면 구현 채팅창 화면 구현 시, 멀티뷰 타입 RecyclerView 구현 프로젝트 구현 중에, 위와 같이 받는 사람의 위치와 말풍선이 다르고, 질문창도 띄울 때 여러 개의 뷰를 이용하여 리사이클러뷰를 만들어야 해서 찾아보던 중 멀티뷰 타입으로 리사이클러뷰를 구현할 수 있음을 알게되었다. 2022. 8. 15.
[Compose Layout] Column, Row, Box 사용법 Column(){ ... }: 수직 배치를 지원하는 레이아웃 Row(){ ... } : 수평 배치를 지원하는 레이아웃 - modifier: 크기, 동작, 모양을 변경하거나 사용자의 입력 처리 변수 - horizontalArrangement(Arrangement.Horizontal) : 수평 배치를 설정하는 변수 Android Compose 튜토리얼 | Android 개발자 | Android Developers Jetpack Compose는 네이티브 Android UI를 빌드하기 위한 최신 도구 키트입니다. Jetpack Compose는 더 적은 수의 코드, 강력한 도구, 직관적인 Kotlin API로 Android에서의 UI 개발을 간소화하고 가속화합니다. 이 developer.android.com [C.. 2022. 7. 24.
[MBTree] 기록#1: 웹소켓으로 안드로이드 채팅 구현 안드로이드에서 실시간 채팅 기능을 구현하고자 할 때, 웹서버에 저장하는 방법과 Firebase를 이용하는 방법이 있다. 서버에 저장하는 경우(Websocket이용), 추후 채팅에 대한 추가 기능 개발같은 것을 하게 된다면 보다 용이하지만 서버와 클라이언트 모두 웹소켓에 대한 이해가 필요하다. Firebase의 경우에는 웹소켓보다는 쉽게 학습이 가능하므로 빠른 시간 내에 구현이 가능하지만 반대로 복잡한 기능은 추가하기 어려운 경우를 만날 수도 있다고 한다. 나는 이번 프로젝트에서 단순 채팅 기능보다 랜덤 매칭 등 부가적인 기능을 더할 것이므로 웹 소켓으로 구현하고자 한다. WebSocket - 서버와 클라이언트 간에 socket connection을 유지하여 실시간 양방향 통신과 데이터 전송을 가능하도록 .. 2022. 7. 13.
[2022 롯데정보통신] 5월 신입채용 SW직무 채용 후기 서류 제출 자소서 문항은 1. 지원 직무가 본인의 커리어에 어떤 영향을 미칠 지 본인의 생각을 자유롭게 기재해 주세요.(700자 이내) 2. 지원 직무와 관련한 경험(교육, 프로젝트, 대외활동 등)을 3개 이내의 키워드로 기재해 주시고, 이에 대한 본인의 의견을 자유롭게 기재해 주세요. (700자 이내) 3. 공동의 목표를 달성하기 위하여 노력하였던 점과 목표 달성에 어떤 영향을 주었는지 기재해 주세요. 이렇게 3개였고, 평소 안드로이드 직무를 원하긴 했지만 SI이고, 우대 조건에 Spring과 같은 조건이 있었기에 학부 때 진행한 웹 프로젝트를 끌어다가 백엔드 위주로 적었고, 마지막 단락에만 안드로이드 프로젝트를 간단히 적으면서 '이후 Software직무에서 어떤 업무를 맡게 되어도 뜻깊게 임할 것입니.. 2022. 7. 12.
[백준] 1725번 히스토그램 자바 문제 (스택) 1725번: 히스토그램 첫 행에는 N (1 ≤ N ≤ 100,000) 이 주어진다. N은 히스토그램의 가로 칸의 수이다. 다음 N 행에 걸쳐 각 칸의 높이가 왼쪽에서부터 차례대로 주어진다. 각 칸의 높이는 1,000,000,000보다 작거나 같은 www.acmicpc.net 문제 풀이 문제 풀이에 대한 논리가 많이 어려웠다. 세그먼트 트리를 이용해서도 많이 푸는 방식인 것 같은데 나는 세그먼트 트리에 대해서 잘 몰라서 만만한(?) 스택으로 풀기로 했다. 다른 블로그 글들에 그림 포함해서 설명이 잘 나와있어서 알고리즘은 내가 보기 편한대로 다시 정리해보자면, 우선 히스토그램 순서대로 반복문을 실행하면서 높이가 증가하다가 감소하는 부분을 유의해야 한다. 왜냐하면 높이가 감소하는 순간 바로 그 .. 2022. 6. 29.
[안드로이드/Kotlin] Retrofit2 + okhttp 개념 서버 통신 라이브러리 OkHttp - REST API, Http통신을 간편하게 구현할 수 있도록 다양한 기능을 제공해주는 Java 오픈소스 라이브러리 - Retrofit 라이브러리의 베이스 Retrofit2 - Rest API 통신을 위한 라이브러리 - AsyncTask가 없이 Background스레드를 실행 -> CallBack을 통하여 Main Thread에서 UI를 업데이트 - OkHttp를 기반으로 더 안전하고 직관적으로 사용할 수 있게 만들어진 라이브러리 - Annotation사용으로 코드의 가독성이 좋고, 직관적인 설계 가능 - 통신 결과값을 JSON으로 변환해 줄 필요없이 바로 객체 대입 가능 - 결과값을 메인 스레드에서 바로 사용 가능 ✔️ okhttp의 경우 네트워크 Intercepter.. 2022. 6. 27.