반응형 전체 글243 Promise.all, 무엇이고 언제 사용해야 할까? 코드 리뷰 스터디에서 동료분으로부터 Promise.all의 존재를 알게 되었다. 들어본 적은 없었지만 설명해주신 걸 들어보니 복수의 요청을 한 번에 보내고, 프로미스도 전부 합쳐 한 번에 반환하는 핸들러였다. 하나라도 오류가 나면 Promise.all 전체가 거부되고 .catch가 실행된다. 해당 에러가 Promise.all 전체의 결과가 되는 거다. Promise.all(iterable) Promise.all() 메서드는 순회 가능한 객체에 주어진 모든 프로미스가 이행(fulfill)한 후, 혹은 프로미스가 주어지지 않았을 때 이행하는 Promise를 반환한다. 주어진 프로미스 중 하나가 거부하는경우, 첫 번째로 거절한 프로미스의 이유를 사용해 자신도 거부한다.(MDN 문서) const promise1.. Programming/Javascript, Typescript 2023. 3. 6. CodePush란? 내가 유지보수를 책임지고 있는 서비스의 앱은 React Native로 구현되어 있는데, JS 코드만 변경되었을 경우 CodePush를 사용해 간편하게 배포를 하고 있다. 사수분이 미리 세팅을 해 놓으신 상태에서 로컬 터미널에서 appcenter에 로그인하고 명령어만 입력하면 android, ios 배포가 불과 몇 분만에 끝난다는 게 실제로 해보니 더 신기했다. 세팅을 CodePush의 원리에 대해 좀 더 알아봤다. App Center 속 CodePush CodePush는 Microsoft의 서비스로, Visual Studio App Center의 여러 기능 중 하나다. App Center는 애플리케이션을 빌드, 테스트, 배포할 수 있는 DevOps 클라우드 솔루션이다. 배포된 후 분석 및 진단 서비스도 .. Programming/ETC 2023. 2. 24. 마이크로소프트 기업 채널 매니저 김성미님의 강의를 듣고 https://www.wanted.co.kr/events/article_23_01_25?utm_source=wanted&utm_medium=share IMF를 이긴 문과생의 선택: 자바 강사에서 Microsoft 세일즈까지 | 원티드 세일즈 직무에 관심이 있는 사람이라면, 혹은 코로나 팬데믹 등 외부 환경의 변화로 현재의 커리어에 위기를 겪고 있는 사람이라면 이번 인터뷰가 도움이 될 것이다. www.wanted.co.kr 원티드에서 주최한 김성미님과의 커피챗에 선정되어 처음으로 롯데타워의 오피스 층에 방문했다. 그린랩스, 패스트캠퍼스, 3M, 썸원, 은행, 중앙일보처럼 이름만 들어도 대단한 기업의 다양한 직군의 현직자분들이 참여하셨고, 덕분에 듣는 것만으로도 인사이트와 열정이 살아나는 커피챗이었다. 성미.. My/Careerlog 2023. 2. 22. [혼공학습단 9기] 혼.공.컴.운. - 14. 가상 메모리(필수미션 포함) 운영체제의 가장 핵심적인 두 역할: 프로세스 관리와 메모리 관리.지금까지 프로세스 관리 기법에 대해 알아봤으니 이제 메모리 관리 기법에 대해 알아보자. 기본 미션문제 1. 메모리 할당 방식에 대한 설명으로 올바른 것을 다음 보기에서 찾아써 보세요.보기:최초 적합, 최적 적합, 최악 적합(1): 최초로 발견한 적재 가능한 빈 공간에 츠로세스를 배치하는 방식(2):프로세스가 적재되룻 있는 가장 큰 공간에프로세스를 배치하는 방식(3): 프로세스가 적재될 수 있는 가장 작은 공간에 프로세스를 배치하는 방식 정답 최초 적합최악 적합최적 적합 14-1 연속 메모리 할당연속 메모리 할당: 프로세스에 연속적인 메모리 주소를 할당하는 것스와핑 스와핑(swapping): 메모리에 적재된 프로세스들 중 현재 실행되지 않는 .. Programming/Computer Science 2023. 2. 20. [혼공학습단 9기] 혼.공.컴.운. - 13. 교착상태 13-1 교착상태란 교착 상태란 무엇이며, 그를 표현하는 자원 할당 그래프와 교착 상태의 발생 원인을 예시를 통해 알아보겠습니다. 프로세스를 실행하기 위해 자원이 필요한데, 두 개 이상의 프로세스가 각자 가지고 있는 자원을 무작정 기다린다면 그 어떤 프로세스도 더 이상 진행할 수 없는 교착 상태가 된다. 식사하는 철학자 문제 식사하는 철학자 문제: 교착 상태를 설명하기 위한 아주 고전적이고 재미있는 문제 상황. 만약 원탁에 다섯 명의 철학자가 앉아 있고 서로의 사이사이에 총 다섯 개의 포크가 있고, 모두가 동시에 빈 포크가 어떤 것인지 생각하고 동시에 포크를 집어 식사를 해야 한다면, 영원히 아무도 식사할 수 없는 상황이 벌어질 수 있다. 교착 상태: 이렇게 일어나지 않을 사건을 기다리며 진행이 멈춰 버.. Programming/Computer Science 2023. 2. 20. [Next.js 13] 공식 문서 Data Fetching 1(Fundamentals ~ Caching) 나만의 홈페이지 만들기 프로젝트를 진행하면서 이제 data fetching을 해야 할 때가 왔다. 그런데 Next 13의 data fetching은 Next 12와 변경점이 굉장히 많았다.(12도 잘 모르는데) 관련 공식문서를 전부 번역해보면서 공부해보자. https://beta.nextjs.org/docs/data-fetching/fundamentals Data Fetching: Fundamentals | Next.js Learn the fundamentals of data fetching with React and Next.js. beta.nextjs.org https://github.com/acdlite/rfcs/blob/first-class-promises/text/0000-first-class-.. Programming/Next.js 2023. 2. 19. [JavaScript] new Date()로 생성된 시간을 한국 시간으로 바꾸기 최근 일하면서 특정 시간대에만 배너를 표시하는 작업을 한 일이 있었다. 당연히 쉽게 반영이 될 거라고 생각했는데, 실제 사이트에서는 마치 코드가 잘못된 것처럼 작동하지 않았다. 이유는 기업 서버가 미국(혹은 다른 나라)을 거쳐 가면서 new Date() 시간이 한국 시간이 아닌 다른 어딘가의 시간으로 출력됐던 것이었고, 이 때문에 항상 한국 기준 (UTC +8)으로 바꿔주는 작업이 필요했다. 소스코드 const now = new Date() // 서버 시간 기준 현재 로컬 시간 const GMTNow = now.getTime() + now.getTimezoneOffset() * 60 * 1000 // GMT 현재 시간 // now.getTime(): 1970년 1월 1일 00:00:00 GMT와 주어진 .. Programming/Javascript, Typescript 2023. 2. 18. 2023년 2월 8일 ~ 2023년 2월 16일 회고 첫 업무 메일 써보기, 비행기 예약, 오픽 갱신, 내일배움카드와 블렌더 수업, 퓨전 오마카세 먹기 처음으로 업무 메일도 보내보고, 배포하느라 신경도 많이 써서 피로도가 있던 한 주여서 주말에는 오픽 보러 간 것 빼고는 푹 쉬어줬다. 남는 시간에는 제주도 비행기 예약하고 여행 계획 세우느라 시간을 전부 보냈던 것 같다 ㅎㅎ 취업 후 내일배움카드로 뭔가를 배우는 게 꽤 큰 로망이었어서 신청을 해놨었다. 그런데 생각보다 그 기회가 빨리 찾아왔다. 홈페이지에 Three.js를 적용하기로 마음 먹은 후, 블렌더를 함께 배우고 싶어졌다. 내가 직접 JS로 컨트롤할 수 있는 요소를 창작하고 프로그래밍에 내 시각을 집어넣고 싶어졌달까! 시각화, 인포그래픽도 배워서 뉴욕타임즈까지 진출하고 싶어 하는 나니까... 욕심 부.. My/Riverlog 2023. 2. 16. [네트워크] SSL이란? Programming/Computer Science 2023. 2. 14. [혼공스터디 9기] 혼.공.컴.운. - 12. 프로세스 동기화(필수, 선택 미션 포함) 필수미션 1. 뮤텍스 락과 세마포에 대한 설명으로 옳지 않은 것을 고르세요. 뮤텍스 락은 임계 구역을 잠근 뒤 임계 구역에 진입함으로써 상호 배제를 위한 동기화를 이룹니다. 세마포는 공유 자원이 여러 개 있는 상황에서도 이용할 수 있습니다. 세마포를 이용해 프로세스 실행 순서 제어를 위한 동기화도 이룰 수 있습니다. 세마포를 이용하면 반드시 바쁜 대기를 해야 합니다. 답: 4 해설: 세마포는 공유 자원이 여러 개 있는 상황에 적용이 가능한 동기화 도구다. 바쁜 대기는 반복적으로 lock을 확인하는 것인데, 이는 자물쇠 방식을 활용하는 뮤텍스 락에 적용된다. 12-1 동기화란 프로세스들은 서로 협력하여 실행되기도 한다. 이런 프로세스들의 실행 순서와 자원의 일관성을 보장하기 위해 반드시 동기화되어야 한다... Programming/Computer Science 2023. 2. 13. [JavaScript] 화살표 함수 정의 전통적인 함수 표현보다 더 간편하게 함수를 작성할 수 있는 대안이다. 기본 형태 let func = (arg1, arg2, ...argN) => expression // 아래 함수 표현식의 축약 버전이다. let func = function(arg1, arg2, ...argN) { return expression; } // 인수가 하나도 없다면, 괄호를 비워 놓는다. 이 때 괄호는 생략 불가하다. let sayHi = () => alert("안녕하세요!") sayHi() 본문이 여러 줄인 화살표 함수는 '중괄호'와 'return'을 사용해야 한다. let sum = (a, b) => { let result = a + b retun result } alert(sum(1, 2)) // 3 + 화살표 함.. Programming/Javascript, Typescript 2023. 2. 9. 2023년 2월 1일 ~ 2023년 3월 1일 회고 집 재계약, 대보름, 빈소년합창단, 제주도 여행 계획, career week 그리고 제주도 2월 첫 주도 어느새 후딱 지나갔다! 업무, 홈트 CS 공부, 알고리즘 스터디, 사내 스터디 그리고 자격증까지(적고 보니 많구나) 준비하다보니 정말 시간이 빠르게 지나간다. 대학생 때부터 살고 있는 주택 계약을 연장했고, 대보름을 맞아 가족들과 부럼 깨물고 맛있는 것도 먹고 달님에게 소원도 빌었다. 그리고 나의 영혼(ㅎㅎ)을 깨끗하게 해주었던 빈소년합창단의 525주년 기념 신년음악회는 이번 주의 하이라이트였다. 독일어 노래가 많아 이해하기는 쉽지 않았지만 예술에 대한 소년들의 열정, 협동이 아름다워 최근 본 공연 중 가장 열심히 박수를 쳤던 것 같다. 전 세계에서 노래에 대한 열정으로 모인 소년들의 목소리도 물론 .. My/Riverlog 2023. 2. 8. [Next.js 13] Next.js 13버전의 서버 중심 라우팅과 클라이언트 사이드 네비게이션 정리 이번 주에 공식문서 Page and Layouts 까지 읽었고, 이번엔 Next.js의 Linking and Lavigating에 대해 배워 보자. 따로 링크되지 않은 모든 설명은 Next.js 공식문서가 출처다. Routing: Fundamentals | Next.js ... beta.nextjs.org 서론: Next.js 13은 서버가 라우팅하고 클라이언트가 네비게이트한다. pages 디렉토리와는 달리, app 디렉토리의 new! 라우터는 서버 중심 라우팅을 사용한다. 이는 Server Component와 서버에서의 data fetching와 궤를 같이 하는 것이다. 클라이언트는 router 지도를 다운 받을 필요가 없다 . (app directory의 모든 컴포넌트들은 디폴트로 RSC(React .. Programming/Next.js 2023. 2. 5. [혼공스터디 9기] 혼.공.컴.운. - 11. CPU 스케줄링(선택 미션 포함) 11-1 CPU 스케줄링 개요 운영체제는 CPU를 어떻게 프로세스에 배분할까? CPU 스케줄링: 운영체제가 프로세스들에게 공정하고 합리적으로 CPU 자원을 배분하는 것. 이는 컴퓨터 성능과도 직결되는 중요한 문제다. 프로세스 우선순위 입출력 집중 프로세스: 비디오 재생 등 입출력 작업이 많은 프로세스. 실행 상태보다는 대기 상태에 많이 머무른다. CPU 집중 프로세스: 복잡한 수학 연산, 컴파일 등 CPU 작업이 많은 프로세스. 대기 상태보다는 실행 상태에 더 많이 머무른다. CPU 버스트: CPU를 이용하는 작업 입출력 버스트: 입출력장치를 기다리는 작업 운영체제는 각 프로세스의 PCB에 우선순위를 명시하고, PCB에 적힌 우선순위를 기준으로 먼저 처리할 프로세스를 결정한다. 그렇게 자연스레 우선순위가.. Programming/Computer Science 2023. 2. 5. [혼공학습단 9기] 혼.공.컴.운. - 10. 프로세스와 스레드 (미션 포함) 운영체제의 핵심 개념인 프로세스와 스레드에 대해 공부해보자 기본 미션 1. 다음은 프로세스 상태를 보여주는 프로세스 상태 다이어그램입니다. 1부터 5까지 올바른 상태를 적어 보세요. 생성 상태 준비 상태 실행 상태 종료 상태 대기 상태 10-1. 프로세스 개요 프로세스: 보조기억 장치에 저장된 프로그램을 메모리에 적재하고 실행한 것 프로세스 직접 확인하기 포그라운드 프로세스: 사용자가 보는 앞에서 실행되는 프로세스 백그라운드 프로세스: 사용자가 볼 수 없는 공간에서 실행되는 프로세스(유닉스에서는 데몬, 윈도우에서는 서비스) 프로세스 제어 블록 프로세스 제어 블록(PCB): 빠르게 번갈아 수행되는 프로세스의 실행 순서를 관리하고, 프로세스에 CPU를 비롯한 자원을 배분하는 도구. 프로세스를 식별하기 위한 .. Programming/Computer Science 2023. 2. 4. 이전 1 2 3 4 5 6 7 8 ··· 17 다음