이번엔 대충 라이브러리는 깔려 있으니 바로 진행해 보는것으로 하겠다.1. 요구사항 분석 및 설계 수정추가기능을 조금 수정. 그날 날짜, 기분 생각을 입력하면, 그 감정까지 함께 저장하는 형태로 진행matplotlib로 주간 감정 변화 시각화부분이 있으므로 UI 추가PyQt를 쓰기 귀찮으므로 tikinter사용현재까지 저장된 기록들을 리스트로 좌측에 표시별도 날짜 입력 추가 (Defaut : 오늘 날짜)기준시 : KST추가로 디렉토리txt파일을 기반으로 좌측에 리스트를 추가. 우측에 해당 내용이 나오도록 수정. 2. 기본 기능 작성from textblob import TextBlobtext = "비가와서 허리가 아프다. 기분이 별로 좋지않다."blob = TextBlob(text)sentiment = bl..
전체 글
GPT에게 언어와 주제를 추천받았다.웬만한 언어는 다 해봤지만 Rust는 해본적이 없으므로 Rust로 개발 하기로 결정1. Rust 환경 설치별다른 설치파일같은거 없이 그냥 명령어 실행만 하면 되는 것 같다.curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh 2. Rust 프로젝트 설계확장자는 rs를 쓴다. 프로젝트를 위해 프로젝트 폴더와 rs파일을 세팅해 두었다.2-1. 요구사항 분석일단 GPT에서 요구한 사항은 다음과 같다.1. 파일 입력을 받기2. 단어 등장 횟수 집계3. 상위 10개 단어 출력 3. 파일 작성기본적인 구조는 c++와 유사한 듯 하다.일단 파일 읽기 부터 작성해 볼것이다. 기본적으로는 디렉토리에 있는 txt파일 전체를 읽..
Node.js는 단일 스레드 이벤트 루프 모델로 높은 동시성을 제공하지만, I/O 처리 방식에 따라 성능이 크게 좌우됩니다. 이번 글에서는 실제 운영 환경에서 흔히 접할 수 있는 I/O 병목 상황과 이를 해결하기 위한 구체적인 기법들을 정리합니다.1️⃣ 비동기 I/O의 기본 개념Node.js는 libuv라는 C 기반 라이브러리를 통해 파일, 네트워크 등 모든 I/O를 비동기로 처리합니다. 이벤트 루프가 차단되지 않도록 콜백, 프라미스, async/await 형태로 비동기 작업을 큐에 등록하고, 완료 시 이벤트를 발생시켜 콜백이 실행됩니다.I/O 버퍼링: 대부분의 I/O는 내부 버퍼를 사용해 데이터를 임시 저장합니다. 버퍼가 가득 차면 프로세스가 블로킹될 수 있으므로, 적절한 버퍼 크기를 설정하는 것이 중..
서론2024년 말부터 공식 릴리스가 발표된 TypeScript 5.0은 정적 타입 체크뿐 아니라 런타임에서도 타입 검증이 가능하도록 하는 기능을 도입했습니다. 이 기능은 프론트엔드에서 API 응답, 외부 모듈 인터페이스, 또는 사용자 입력에 대한 신뢰성을 한층 높여 주는 핵심 요소가 될 수 있습니다.핵심 포인트--strictFunctionTypes 강화와 함께 런타임 검증이 가능해짐as const assert 문법으로 타입 안정성 보장빌드 시점에 타입 검사 코드를 삽입하는 트랜스파일러 옵션 제공아래에서는 이 기능들의 개념부터 실무 적용 예시, 그리고 성능 영향을 정리합니다.1. 런타임 타입 검증이 필요한 이유1‑1. 외부 데이터와의 상호작용웹 애플리케이션은 대부분 REST API, GraphQL, Web..