- Today
- Total
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 코틀린
- 책리뷰
- coroutine
- jlpt
- github
- 진짜학습지후기
- Android
- KotlinInAction
- 안드로이드
- Kotlin
- 진짜일본어
- suspend
- rxjava
- CustomTab
- n3문법
- 진짜학습지
- blog
- 일본어기초
- errorhandling
- androidstudio
- GIT
- 인공지능
- pullrequest
- 책추천
- 일본어문법
- PR
- 학습지
- ai
- posting
- webflux
목록분류 전체보기 (354)
코딩하는 개굴이
💡"해당 포스팅은 한빛미디어 활동을 위해서 책을 제공받아 작성된 서평입니다." Chat GPT 너는 누구냐?! 인공지능이라고 한다면 이세돌을 이긴 알파고가 첫 인식일 것이다. (물론 그 전의 SF 영화의 무서운 인공지능들을 제외하고는 말이다.) 그리고 그 이후 가장 큰 충격을 불러온 서비스가 있었으니 바로 대화형 인공지능인 챗GPT 이다. 사람의 말을 매우 잘 이해하고 대답 또한 자연스러워서 숙제를 대신한다거나, 잘못된 정보를 반환한다거나 등 여러 시각으로 세간의 주목을 받았던 이 인공지능은어떻게 사용하는지에 따라 사람마다 시간을 매우 줄여 줄 수 있는 수단이 되었다. 몇시간을 들여 요약해야하거나 찾아야하는 정보들을 한 줄에서 두 줄의 프롬프트(명령/대화) 로 끝낼 수 있다거나, 하나하나 수정해야하는 것..
Git 이란, 개발자들에게 뗄레야 떼기 힘든 소프트웨어 중 하나이다. 매 순간마다 사용하고 있으나, 실제로 정확히 어떤 역할을 하는지 어떤 상황에서 어떻게 명령해야하는지 주저될 때가 있다. 만일 제대로 모르는 상태에서 명령어를 사용하게 된다면 생각치 못한 결과를 만들어 크게 곤욕을 치를 수도 있다. (경험담이기도 하다.) 따라서, 이번 포스팅에서는 깃의 베이스를 제대로 알아보고자 한다. Git 의 등장 소프트웨어를 개발할 때 버전 관리 툴은 매우 필수적이다. 새로 코드를 작성하거나 기존 소스를 수정하거나 프로그래머는 소스의 과거 히스토리를 파악하거나 개발 시 현재 작업한 내역을 저장/보존해야한다. 이때 사용되는 툴이 버전 관리 툴이다. 버전 관리 툴은 현재 크게 SVN, Git 이렇게 2가지가 존재한다...
LFS 를 한번도 써본 적이 없는 상태에서 대략적으로 무엇인지만 알았다가 큰 코다친 경험으로 인해, 정확히 알아보고자 해당 포스팅을 작성하게 되었다. 다음에는 이런일이 없도록...!! LFS 란 무엇일까? LFS 란 무엇일까? 아래처럼 한방에 이해되도록 하는 취향 저격인 이미지가 있길래 끌어와보았다. 간략하게 말해서는 좌측의 뚱이처럼 우리가 입이 작은 스펀지밥인 github 에 100MB 크기가 넘는 파일들을 업로드 할 수 있도록 하는 기능이다. Git 은 본래 여러개의 작은 소스코드 파일들을 위한 버전 컨트롤 시스템(VCS) 이다. 따라서, 인식하지 못했을지 모르지만 Github 은 50Mb 부터 push 시 Warning 이 표시되고, 100Mb 부터는 push 시 Error 가 발생한다. 그러나, ..
💡"해당 포스팅은 한빛미디어 활동을 위해서 책을 제공받아 작성된 서평입니다." 프로크리에이트 그 활용도 이전에는 그림과 캘리그래피는 책상 앞에 종이와 연필, 색칠 도구, 서예 도구 등 필요한 것들을 잔뜩 쌓아둔 채 하나하나 도구를 바꿔가며 진행하는 것이 일반적이었다. 그러나, 이젠 매우 쉬운 방법이 생겼다. 디지털 캘리그래피는 이젠 아날로그의 질감부터 표현 방식을 큰 차이 없게 혹은 더 큰 장점으로 제공할 수 있게 되었고, 좋은 결과물을 얻을 수 있게 되었다. 이렇게 아이패드와 앱 하나로 모든 것이 가능해진 것인데, 그 중 대표적인 것이 "프로크리에이트" 이다. 아이패드의 필수 앱 중 하나로 불리며 비록 필기하려고 산 사람들 조차 취미로 그림을 그려보고자 사게 된다는 그 소문의 앱은 한때 본인 또한 지갑..
Reactive Programming RxJava에 대해 이해하려면 Reactive Programming 에 대한 이해가 먼저 필요하다. Reactive Programming 은 데이터 흐름과 전달에 대한 프로그래밍 패러다임으로, 기존의 명령형 프로그래밍은 컴퓨터 하드웨어를 대상으로 프로그래머가 작성한 코드가 정해진 절차에 따라 순서대로 실행되나, 리액티브 프로그래밍은 데이터의 흐름을 먼저 정의하고 데이터가 변경되었을 때 연관되는 함수나 수식이 업데이트되는 방식이다. 명령형 프로그래밍 방식은 변경이 발생했다는 노티를 받아 새로 실행하는 pull 방식이지만, 리액티브 프로그래밍은 데이터 소스가 변경된 데이터를 밀어주는 push 방식이다. pull 방식은 데이터를 사용하는 곳에서 데이터를 직접 가져와서 사용..
Dispatcher 란? 코루틴의 어떤 스레드에서 돌아갈지 정의하는 역할로써, Event Loop 를 통해 작동된다. Event Loop는 Call Stack 과 Callback Queue 의 상태를 반복적으로 체크하고, 함수를 실행할 시간이 되면 큐의 첫번째 아이템을 Call Stack 에 넣고 실행한다. 이렇게 반복하는데 이것을 tick 이라고 한다. Call Stack 이 구성되는 Dispatcher 는 아래 3가지가 있다. 각각 해당하는 스레드를 기준으로 콜스택을 구성하게 된다. Dispatchers.Main : UI를 구성하는 작업이 모여있는 쓰레드 풀 Dispatchers.IO : (파일 혹은 소켓을) 읽고 쓰는 작업이 모여있는 쓰레드 풀 Dispatchers.Default : 기본 쓰레드 풀..
이번 Google I/O Android 내용 중, 웹 관련 업데이트 사항에 대해 정리해 보았습니다. 직접 번역한 것이므로, 오타/오역이 존재 할 수 있습니다. 발견될 경우 공유 부탁드립니다. 개발자들은 여러가지 이유로 Android 내에 웹을 사용하게 되는데, Android 앱에서 웹 위젯을 재사용하여 타사 콘텐츠를 통합하거나, 전체 웹 앱을 플랫폼으로 가져오는 등 Android 는 이를 위해 많은 도구들과 기능을 제공하고 있다. 관련하여 이번 2023 Google IO 에서는 아래의 새로운 기능을 소개하고 있다. Privacy 개선과, large screen 에 대한 지원 추가 (webview 에서의 image drag and drop 등) 부분 Customtab 의 지원 PWA 의 새로운 기능들, 그..
해당 내용은 “Android CustomTab” 공식 문서를 기반으로 작성되었습니다. 직접 번역하였기 때문에 오역이 있을 수 있습니다. 발견 시, 댓글 등으로 공유 부탁드립니다. CustomTab 이란? 안드로이드의 웹 콘텐츠 안드로이드에서 웹 콘텐츠를 로딩하는 방법은 이전부터 사용되어왔지만, 예전 방법은 개발자에게 어려움을 줄 수 있다. 외부 브라우저를 실행하면 사용자에게 부담스러운 컨텍스트 전환을 하게 만들고, 웹뷰의 경우 웹 플랫폼의 모든 기능을 지원하지 않으며 브라우저와의 상태를 공유할 수도 없기에 유지 관리 과정에서 오버헤드가 발생하게 된다. CustomTab 은 무엇을 할 수 있을까? CustomTab을 이용하면 렌더링 엔진이 사용자가 선호하는 브라우저에서 웹 콘텐츠를 로드시킨다. Custom..
Dispatchers.Main 을 이용해 로직을 짜는데, 뭔가 이상하게 순서가 꼬였다 싶은 순간이 있을 수 있다. 보통의 개발자는 위에서부터 아래로 코드의 실행 순서를 가정하고 개발을 하곤하기에 Dispatchers.Main 의 정확한 이해는 중요하다. 따라서, 순서가 보장되게 이를 사용하려면 어찌 해야하는지 한번 알아보도록 하자. 그러기 위해서 Dispatcher이 무엇인지 코루틴의 동작은 어찌되는지 먼저 확인해보자. Dispatcher 란? 코루틴의 어떤 스레드에서 돌아갈지 정의하는 역할로써, Event Loop 를 통해 작동된다. Event Loop는 Call Stack 과 Callback Queue 의 상태를 반복적으로 체크하고, 함수를 실행할 시간이 되면 큐의 첫번째 아이템을 Call Stack..
코드 리뷰는 소프트웨어 개발 시 개발자에겐 매우 중요한 단계이다. 품질 향상과 버그 예방을 위해 개발자들이 코드를 검토하고 피드백을 주고 받는 과정이기에 항상 신중하고 공들여야하기도 하다. 그러나 이러한 코드 리뷰는 많은 시간과 노력을 필요로 하고 텍스트만으로 의사를 전달해야하기 때문에 효율적인 의사소통이 필요하다. 이를 위해 개발자들은 줄임말을 사용하곤하는데, 코드 리뷰 시 자주 사용되는 줄임말들을 정리해보자. NIT (Need Improvement or Suggestion): 개선이 필요한 부분이나 제안할 사항을 말한다. 주로 작은 스타일 또는 코드 품질 관련 문제에 대해 사용된다. DITTO (The Same as Before): 이전에 언급한 내용과 동일하다는 의미로 사용된다. 이전 피드백과 동일..