[Tistory] WithContext 개념 (feat Coroutine, Dispatcher)

WithContext ? 코루틴 라이브러리에서 제공하는 함수, 코루틴의 실행 컨텍스트(쓰레드 or 디스패처)를 바꿀 때 사용 현재 코루틴이 실행 중인 컨텍스트에서 다른 컨텍스트로 잠깐 전환해 중괄호 블록 안의 코드를 실행할 수 있다. 시간이 오래 걸리는 작업을 메인 쓰레드에서 분리해 UI를 차단하지 않게 하거나, 다른 쓰레드 or 디스패처에서 실행해야 하는 코드가 있을 경우 사용 WithContext의 장점 가볍기때문에 컨텍스트를 쉽게 바꿀 수 있다. 즉 디스패처를 쉽게 전환한다는 걸 의미 Coroutines ? 코틀린에서 비동기 처리를 위한 프로그래밍 방식 Coroutines의 특징 1. 협력형 멀티 태스킹 Co + Routine, 즉 협력하는 함수다. 이 함수에 진입할 수 있는 진입점도 여러개고, 함..

[Tistory] 쉿! 엄마가 코딩 공부하는 줄 알아요 – bitburner

어떤 것이든 처음 시작할 땐 막막하기 마련이다. TV에서 자주 접하는 대중 스포츠 ‘야구’만 해도 그렇다. 아웃, 1루·2루·3루, 홈런·안타 등 관심이 없어도 지나가면서 들어봤을 법한 익숙한 개념부터 지금은 거의 사라져 가는 네이버후드플레이, 아무리 봐도 알쏭달쏭한 보크까지. 간단한 규칙도 이해하기 벅찬데, 저 멀리 바다 건너에 있는 메이저리그 선수 이름까지 외워야 한다면? ‘대략 난감’하다. 과거 메이저리그를 보려고 마음먹었던 필자도 이러한 상황과 맞닥뜨려야 했다. ‘어떻게 하지?’ ‘룰 북을 일일이 읽기엔 지루하고’ ‘그렇다고 TV 중계로만 익히기엔 시간이 너무 오래 걸리는데…’ 그런데 의외로 손쉽게 이를 해결할 방법이 있었으니… 그 비밀은 바로 게임이다. 야구계의 풋볼 매니저 OOTP 로 ..

[Tistory] [IT 5분 잡학사전] Day3 – 인터프리터 vs 컴파일 언어 / 자바와 코틀린 (+) 코루틴

🌿 오늘 TIL 3줄 요약 – 인터프리터 언어는 실행할 때마다 ‘인터프리터’라는 프로그램이 컴퓨터에게 코드를 기계어로 번역해주고 대표적인 언어로는 Python, JavaScript, PHP가 있다. – 컴파일 언어는 프로그램 전체를 스캔하여 이를 모두 기계어로 번역한다. 대표적인 언어로는 C, C++, Java가 있다. 🌿 오늘 읽은 범위 에피소드 6 ~ 에피소드 10 🌿 책에서 기억하고 싶은 내용을 써보세요. 1. [에피소드 8] 파이썬이 C언어보다 느린 이유는 ? – 프로그래밍 언어는 크게 인터프리트 언어(interpreted language), 컴파일 언어(compiled language)로 번역된다. 인터프리트 언어 컴파일 언어 – 동시 통역으로 비유 가능 (실행 할 때마다 ‘인터프리터’라는 프로..

[Tistory] [알고리즘][X] 카테고리 별 상품 개수 구하기

문제 설명 다음은 어느 의류 쇼핑몰에서 판매중인 상품들의 정보를 담은 PRODUCT 테이블입니다. PRODUCT 테이블은 아래와 같은 구조로 되어있으며, PRODUCT_ID, PRODUCT_CODE, PRICE는 각각 상품 ID, 상품코드, 판매가를 나타냅니다. Column nameTypeNullable PRODUCT_IDINTEGERFALSE PRODUCT_CODEVARCHAR(8)FALSE PRICEINTEGERFALSE 상품 별로 중복되지 않는 8자리 상품코드 값을 가지며, 앞 2자리는 카테고리 코드를 의미합니다. 문제 PRODUCT 테이블에서 상품 카테고리 코드(PRODUCT_CODE 앞 2자리) 별 상품 개수를 출력하는 SQL문을 작성해주세요. 결과는 상품 카테고리 코드를 기준으로 오름차순 정렬..

[Tistory] [React] 라우터(Router) 사용 방법, 리액트 페이지 이동, Link useNavigate 사용방법

문제발생 리액트에서는 페이지 이동을 원할 때 a태그를 사용을 권장하지 않는다. 이유 – 1. 페이지 새로고침 방지, 2. 내부라우팅, 3. 브라우저 히스토리 관리 위와 같은 이유로 리액트에서는 라우터(Router)라는 라이브러리를 사용하여 페이지 이동을 권장한다. 그렇다면 라우터는 어떻게 사용할까? 문제해결 1. 라우터 다운로드 npm install react-router-dom 2. index.js 수정 (라우터 적용) import React from “react”; import ReactDOM from “react-dom/client”; import { BrowserRouter } from “react-router-dom”; // 라우터 라이브러리 임포트 import “./index.css”; imp..

[Tistory] 스케치

원소로 이루어진 모든 비인간의 언어를 인간의 언어로 번역하는 기술을 적용한 데모버전을 발표했다. 각 개체들의 고유 주파수, 생물학적 행동/심리학적 자료를 분석하여 패턴화를 시키고 단어/혹은 알파벳을 대입하였다. 분석이 끝난 소리들에 대한 번역이 즉각적으로 송출된다. 번역의 정확도를 높이기 위해 현재 다양한 상황에서 벌어지는 소리와 번역본의 데이터를 수집하는 과정에 있다. 이 영상은 00에 발생한 산불 현장을 촬영한 모 방송국의 파일 속 소리들을 번역한 영상이다. ex) “I” “I” “Go” “Go” “I” “You” “go” “Finally” “To” “God” “Heaven” “I” “Good” “Bye” “Hea..ven” 화마 속 생명 세계의 대화는 모든 것이 재로 돌아감과 동시에 끝이 났다. 더..

[Tistory] [일기] 230417 출근길, 수면, 수면습관, 카페인, 티벡, 적당한 알코올, 특허, 상표

230417 출근길 지하철 운동은 뭐가 있을까 찾아봤다. 나는 발뒤꿈치 뜨는 게 할만해 보인다. 미니 까치발 자세도 흥미롭고 무릎자극해 주는 것도 흥미롭다. https://lifeij.tistory.com/3558 https://m.health.chosun.com/svc/news_view.html?contid=2013041002240 회사용 키보드: 핸드폰과 따로 연결해서 쓸 수 있도록 질 좋은 수면 질 좋은 수면에 관심이 많다. 규칙적인 시간에 자고 빛을 줄이라고 한다. 좋은 수면습관 수면공간 분리 카페인 분해 카페인 분해는 12시간 정도 걸리니 커피는 오전에 마셔라 카페인의 반감기는 5~7시가 카페인 40mg 규칙적인 수면 자기 전 2시간 동안 무언가 먹지 않기 좋은 습관과 좋은 잠은 함께 다닌다. ..

[Tistory] 정보처리기사 실기 요약[8]~[12]

https://velog.io/@ehgur062300/%EC%A0%95%EB%B3%B4%EC%B2%98%EB%A6%AC%EA%B8%B0%EC%82%AC-%EC%8B%A4%EA%B8%B0-%EC%9A%94%EC%95%BD8-%EC%84%9C%EB%B2%84%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%A8-%EA%B5%AC%ED%98%84 정보처리기사 실기 요약[8] 서버프로그램 구현 빌드 도구구현 도구테스트 도구형상 관리 도구웹 서버 : 정적 콘텐츠(CSS, Javascript, Image)처리 / Apache 웹 서버웹 애플리케이션 서버 : 동적 콘텐츠(Servlet, JSP)처리 / Tomcat데이터베이스 서버 : MySQL, Ora velog.io https://velog.io/@eh..

[Tistory] [WEEK03] DAY24 & 다익스트라 / DFS / BFS / 위상정렬 패턴

https://velog.io/@yerimii11/WEEK03-DAY24-%EB%8B%A4%EC%9D%B5%EC%8A%A4%ED%8A%B8%EB%9D%BC-DFS-BFS-%EC%9C%84%EC%83%81%EC%A0%95%EB%A0%AC-%ED%8C%A8%ED%84%B4 2021년 11월 25일에 작성된 게시글 아카이브입니다. (사유: 블로그이전) [WEEK03] DAY24 & 다익스트라 / DFS / BFS / 위상정렬 패턴 https://terms.naver.com/entry.naver?docId=3579618&cid=59086&categoryId=59093https://suri78.tistory.com/202경로를 여러군데 거친 최종 최소 거리를 구해야 할 때 사용BF velog.io 위상정렬 htt..

[Tistory] [Kotlin] 코루틴 이해를 위한 배경 지식

안녕하세요. 황진성입니다. 최근에 이직을 했고, 합류한 팀에서 비즈니스 로직 틈틈이 코루틴을 사용하는 것을 확인했습니다. 저는 비동기, 병렬 처리 등에 대해서 제대로 공부하거나 사용해 본 적이 없어서 코드를 명확하게 이해하는 것이 힘들었습니다. 단순히 공식 문서에서 예제 한두번 돌려보고 대충 이해하고 쓰기만 했습니다. 꼼꼼히 코드 리뷰를 해주실 때 잘못 사용된 부분을 알려 주시긴 하는데, 언제까지 이렇게 개발할 수 없었습니다. 이 참에 코루틴에 대해 어느 정도 자세히 알아보고자 합니다. 코루틴과 코루틴을 감싸고 있는 이야기를 모두 해볼까 하는데, 여러 개의 포스트로 나눠서 차근차근 정리해 보겠습니다. 1편에서는 “코루틴을 감싸고 있는 이야기”에 집중해서 이야기해보겠습니다. 동시성(Concurrency)과..