본문 바로가기

전체 글42

setInterval과 Page Visibility API로 정확한 대기시간 알려주기 0.TL;DR문제팬사인회까지 남은 시간을 보여줘야 했기에 setInterval을 사용해 1000ms마다 1초가 줄어들도록 구현하였으나, 탭 비활성화로 인해 1초당 최대 60000ms까지 오차가 발생비대면 팬사인회는 연예인 1명 당 60~120초로 진행되기에, 만약 오차가 누적되어 30초 정도가 지연된다면 사용자는 불쾌한 경험을 하게 될 것고려한 해결 방안1초마다 서버에서 시간을 가져오기정확한 시간을 출력할 수 있지만, 많은 유저가 접속할 경우 서버에 부담탭이 활성화 될 때, 서버에서 시간을 가져오기서버의 리소스를 1번보다 적게 사용하지만, 변경 이전 시간이 잠깐 보여 사용자 경험에 악영향가짜 audio로 강제로 탭의 비활성화 막기클라이언트 리소스 사용 + 모바일 환경이라면 오디오 점유 이슈 발생 가능성결.. 2024. 1. 25.
메모리 / 운영체제 (면접을 위한 CS 전공지식 노트) 컴퓨터의 기억장치, CPU도 메모리에 저장된 명령어들을 불러와서 실행하는 장치일 뿐 1. 메모리의 계층 레지스터 : CPU안의 작은 메모리 캐시(L1, L2, L3도 있음) 메모리(RAM) / 주기억장치 저장장치(HDD, SSD) / 보조기억장치 → SDD라고 적혀있는데 오타인듯? 캐시 데이터를 미리 복사하는 임시 저장소 빠른 장치와 느린 장치의 속도 차이로 인한 병목 현상을 줄이기 위한 메모리 속도 차이를 해결하기 위한 계층을 캐싱 계층이라고 함 지역성 캐시를 효율적으로 쓰려면? 자주 사용하는 데이터를 캐시에 설정해야 프로그램은 일반적으로 시간적으로나 공간적으로 가까운 데이터에 자주 접근 이걸 각각 시간 지역성과 공간 지역성이라고 함 한 번 사용한 데이터를 일정시간 캐시에 보관함(시간 지역성) 메모리를.. 2024. 1. 25.
🌟SSAFY 우수 프로젝트, 비대면 팬사인회 서비스 <스타게이트>회고 1. Why?삼성 청년SW아카데미 첫 프로젝트가 마무리 되었다. 처음으로 팀장을 맡은 프로젝트인데, 팀원들과 함께 열심히 한 결과 현직 개발자분에게 심사를 받아 우수 프로젝트로 선정될 수 있었다. 또 개인적으로도 베스트 멤버(싸피에서는 매주 10팀 중에 최고의 멤버를 뽑는다)에 뽑히기도 했다.  하지만 처음 기획했던 추가 기능 부분들을 구현하지 못하는 등 아쉬운 점들도 많았다. 이러한 부분들을 더욱 발전시키기 위해 이번 글에서는 프로젝트를 회고하고, 계속해서 이어나갈 것과 보완해야할 점을 정리해보고자 한다. 프로젝트 요약🌟프로젝트 Github🌟관리자 관점 시연영상🌟팬 관점 시연영상기간 : 23.07.04 ~ 23.08.18(7주간)팀원 : 6명(Frontend 3인, Backend 3인)역할 : F.. 2024. 1. 23.
💳 카드 혜택, 기프티콘 서비스 <모익> 회고 1. Why? 모익도 삼성 SW아카데미에서 7주동안 기획과 개발을 진행한 프로젝트다. 주제를 선정해서 하는 특화 프로젝트로 핀테크 도메인을 선택해 진행되었다. 또한 처음으로 내가 회원관리쪽을 맡은 프로젝트이기도 하다. 이번 글에서도 프로젝트를 회고하면서 Keep, Problem, Try를 정리해보자. 프로젝트 요약 💳프로젝트 Github 💳시연영상 기간 : 23.08.21~23.10.06(7주간) 팀원 : 6명(Frontend 3인, Backend 3인) 역할 : Frontend 개발자 사용 기술 Frontend : Next.js, TypeScript, Tailwind CSS, React Query Collaboration : Notion, Figma, Git, GitLab 2. 기획 우리의 주제는 "카.. 2024. 1. 21.