[TIL #33] 마법의 엘리베이터
·
Camp/T.I.L.
https://school.programmers.co.kr/learn/courses/30/lessons/148653 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 모듈러 뺑뺑이 돌리는 문제.접근법은 명확한데, 특정 테스트 케이스를 통과하지 못해서 평소보다 많은 시간을 투자했다. 먼저 첫 접근부터.// 음수층은 없음// 하지만 음수층이 있는 것 처럼 생각 가능// 모듈러 지옥function solution(storey) { let total = 0; let carry = 0; while (storey > 0) { let digit ..
리눅스 업데이트 미러에 카카오 미러 적용
·
Study/Others
간만에 라즈베리 파이를 켜서 이것저것 설정했다.업데이트 경로를 바꾸려는데, 원래 하던 대로 수정하려고 하니 이런 창이 날 반긴다. ``/etc/apt/sources.list.d/ubuntu.sources``라는 경로로 옮겼다는 내용이다.그럼 저기로 가보자. 오우... 먼가 다르긴 다르다.찾아보니, 다음과 같은 내용을 아래에 추가하고 저장하면 된다. # Kakao Update PathTypes: debURIs: http://mirror.kakao.com/ubuntu/Suites: noble noble-updates noble-securityComponents: main universe restricted multiverseSigned-By: /usr/share/keyrings/ubuntu-archive-k..
[TIL #32] 자바스크립트와 싱글톤
·
Camp/T.I.L.
싱글톤싱글톤에 대해 아시는가.전역에서 단 한 번만 초기화되어 항상 같은 인스턴스를 공유하는 것을 두고 흔히 싱글톤이라 한다. 그럼 두 번 초기화되는 일은 없어야 할 것이다.하지만 그게 발생할 수도 있다.노드의 모듈 임포트 구조는 왜 이래야만 했는가... 하는 의문도 있다.  싱글톤이지만 싱글톤이 아니다import DungeonState from './dungeonState.js';import EnemyAttackState from './enemyAttackState.js';import MonsterDeadState from './monsterDeadState.js';이러한 임포트가 있다고 하자.임포트 하는 ``.js`` 파일의 이름은 실제로 카멜 케이스를 따르고 있다. 그런데 이래도 임포트는 된다.imp..
[TIL #31] 상태 업데이트의 벽
·
Camp/T.I.L.
서버가 존재하는 온라인 멀티플레이어 게임은 모두 상태 업데이트에 큰 노력을 쏟을 것이다.플레이어 A와 B가 같은 곳에 있다면, 둘은 서로 같은 상태로 동기화되어야 한다.A는 움직였지만 B의 화면에서 A가 움직이지 않았다면 대형 사고다. 지금의 과제에서 가장 어려운 부분 또한 그런 내용이다.명확한 상태 동기화를 위해 고민해야 할 부분이 많다.어떤 주기로 동기화할 것인지, 어떻게 동기화할 것인지와 같은 내용이 되겠다.  1. Interval Manager 활용서버 내에서 벌어지는 주기적인 활동을 ``Interval Manager``를 통해 관리할 수 있다.하지만 강의에서 이를 최대한 활용하지 않는다는 느낌이 들었다.이걸 어떻게든 활용해 보려고 했다. const updateLocationHandler = ({..
프로세스와 스레드
·
Camp/Standard
소프트웨어 개발을 하다 보면 프로세스, 스레드, 메모리 영역, 컨텍스트 스위칭, 레이스 컨디션, 세마포어, 뮤텍스, 그리고 데드락과 같은 개념들을 접하게 된다. 1. 프로세스와 스레드프로세스(Process)정의: 프로세스는 실행 중인 프로그램의 인스턴스를 의미한다.운영 체제에서 프로그램이 실행되면 해당 프로그램에 대한 프로세스가 생성된다.특징:독립적인 메모리 공간: 프로세스는 고유의 메모리 공간(코드, 데이터, 힙, 스택)을 가지게 된다.자원 할당의 단위: 운영 체제는 프로세스 단위로 메모리, 파일 디스크립터 등의 자원을 할당한다.프로세스 간 통신(IPC): 프로세스들은 서로 독립적이므로 통신하기 위해서는 특별한 메커니즘(파이프, 소켓, 공유 메모리 등)이 필요하게 된다. 스레드(Thread)정의: 스레..
삼각 함수
·
Camp/Challenge
https://flowery-scarf-deb.notion.site/70b115514ac649be987f9ffab492e48e?pvs=4 발제를 위한 삼각함수 자료
[TIL #30] 모의 면접을 준비하며
·
Camp/T.I.L.
모의 면접에서 메인 토픽뿐만 아니라, 그 연계질문까지 공개하는 건 이례적이라는 생각이 든다.애초에 미리 고지한다고 그 꼬리로 가는 것이 가능한 건지 의문스럽기도 하다.대답에 따라 꼬리 무는 것도 달라지지 않나.그 의도는 모르겠으나, 일단 준비된 질문들에 대해 생각해 보자.  전송 계층 프로토콜에 대한 설명- 꼬리1 : IP의 한계- 꼬리2 : 오류 제어, 흐름 제어대칭키, 비대칭키 암호화에 대한 설명- 꼬리1 : 혼합 암호 사용- 꼬리2 : HTTPS로드 밸런싱에 대한 설명- 꼬리1 : 로드밸런싱 알고리즘- 꼬리2 : 헬스 체크  전송 계층 프로토콜전송 계층은 4번째 계층으로 종단 간 통신을 담당한다.신뢰성 있는 통신을 위한 여러 기능(흐름 / 혼잡제어 및 오류 검출 및 수정)을 수행한다. 프로토콜엔 T..
I/O Completion Port
·
Camp/Challenge
https://flowery-scarf-deb.notion.site/I-O-Completion-Port-IOCP-9e7399ddfe1e4a2d97a5bc3f5fcdfbc7 I/O Completion Port(IOCP) | Notion현대 네트워크 환경에서의 의의flowery-scarf-deb.notion.site 과제 제출용으로 노션에 정리해 두었다.
BCNF 정규화
·
Camp/Challenge
https://flowery-scarf-deb.notion.site/BCNF-aef78e9d63634cf5b78c2f8952a0dd86?pvs=74 BCNF 정규화 | Notion정규화란?flowery-scarf-deb.notion.site 과제 제출용으로 노션에 정리해 두었다.
[TIL #29] 점 찍기
·
Camp/T.I.L.
https://school.programmers.co.kr/learn/courses/30/lessons/140107 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 변의 길이가 ``d``인 정사각형에 ``k``의 간격으로 점을 찍는 문제. 최초 접근은 피타고라스 정리를 매 사이클마다 계산하지 않고 $\sqrt{2} ≒ 1.414...$를 활용하려고 했다.이러면 숫자가 커질수록 발생하는 오차를 말끔히 해결할 수 없다는 걸 깨닫고 선회. 다음 방법은 이것.function solution(k, d) { let count = 0; const dSquared..