개발 에러 메시지 읽는 방법... 개발자라면 꼭 알아야 할 디버깅 첫걸음
·
개발/Articles
코드를 실행했더니 빨간 글씨가 쏟아집니다. “SyntaxError”, “TypeError”, “Traceback” 같은 낯선 단어들이 화면에 가득하고, 어디부터 봐야 할지 막막하죠. 개발 입문자에게 에러 메시지는 마치 외계어처럼 느껴질 수 있지만, 사실 그것은 프로그래밍 언어가 주는 가장 친절한 힌트입니다. 다만 그 구조와 읽는 순서를 몰라서 어렵게 느껴질 뿐입니다. 이번 글에서는 에러 메시지를 어떻게 읽어야 하는지, 무엇부터 보면 되는지, 그리고 에러 메시지를 분석하는 실습 방법까지 하나하나 정리해보도록 하겠습니다.핵심 요약에러 메시지는 위에서부터 읽는 게 아니라, 아래부터 차근차근 읽어야 합니다.Traceback (most recent call last):는 에러가 발생한 경로 추적을 시작한다는 신호..
파이썬 설치된 버전 확인하는 방법과 명령어 설정하기
·
개발/Python
파이썬을 설치했는데 python을 입력하면 동작하지 않거나, 이상한 버전이 실행된 적 있으신가요? 특히 macOS나 리눅스 환경에서는 python이 Python 2를 가리키는 경우도 많아, 개발자에게는 혼란이 생기기 쉽습니다. 이번 글에서는 현재 내 컴퓨터에 설치된 Python 버전 확인 방법, 그리고 명령어(python, python3)를 올바르게 설정하는 방법을 단계별로 정리해드립니다. Windows, macOS, Linux 각 운영체제별로 설명하며, 실습 가능한 명령어도 함께 제공하니 끝까지 따라오시면 Python 개발 환경 이해에 큰 도움이 될 거예요.핵심 요약Python 버전은 python --version, python3 --version으로 확인할 수 있습니다.운영체제에 따라 python 명..
개발을 할 때 가상환경을 설치하는 이유?
·
개발/Articles
개발 환경을 세팅할 때 가장 먼저 듣는 말 중 하나는 "가상환경부터 만들자"입니다. 특히 Python, Node.js처럼 다양한 외부 라이브러리와 버전 관리가 중요한 언어에서는 가상환경이 거의 필수입니다. 하지만 초보자에게는 이 개념이 다소 낯설게 느껴질 수 있습니다. "그냥 설치해서 쓰면 되지, 굳이 왜 따로 공간을 만들어야 하지?"라는 의문도 생기기 마련이죠. 가상환경은 서로 다른 프로젝트가 서로 영향을 주지 않도록 독립된 실행 공간을 만드는 기술입니다. 하나의 컴퓨터 안에 프로젝트마다 다른 패키지 버전과 설정을 분리해서 사용할 수 있게 도와줍니다. 이번 글에서는 가상환경의 개념부터 설치 이유, 실제 활용 예시, 관련 도구까지 하나씩 정리해보도록 하겠습니다.핵심 요약가상환경은 프로젝트마다 별도의 개발..
깃허브 액션이란 무엇이며 사용하는 방법은?
·
개발/Git
안녕하세요. 휘입니다. 요즘 간단한 프로그램을 만들어 자동화 솔루션으로 사용하고 있는데요. 하루에 한 두번 정도 사용하는 프로그램을 위해 별도의 리소스를 마련하는 것도 번거로운 일이 아닐 수 없습니다. 이럴 때는 깃허브에서 제공하는 무료 자동화 서비스인 '깃허브 액션'을 활용할 수 있는데요. 깃허브 액션을 사용하면 원하는 이벤트(푸시, 풀 리퀘스트 등)에 대해 자동으로 코드가 실행되도록 할 수 있습니다.깃허브 액션이란?깃허브 액션(GitHub Actions)는 깃허브에서 제공하는 자동화 솔루션입니다. 프로그램을 개발하고 구동하는 과정에서 반복되는 작업을 자동으로 처리할 수 있게 도와주는데요. 예를 들어, 코드가 푸시되면 자동으로 테스트를 실행하거나, 특정 브랜치에 변경 사항이 병합되면 자동으로 배포가 되..
'DOMContentLoaded' vs 'window.onload' 차이점은 무엇일까?
·
개발/HTML
오랜만에 티스토리 코드를 보수하다가 페이지 로드 이벤트에 대해 알아보게 되었다. 작동 방식이 잘 구분되지 않아 헷갈렸던 부분이 DOMContentLoaded와 window.onload였는데, 이번 기회에 정리해보려고 한다.핵심 정리DOMContentLoaded는 HTML 문서가 모두 로드되었을 때 실행되며, CSS나 이미지 로딩이 끝나지 않아도 실행할 수 있다.window.onload는 HTML뿐만 아니라 이미지, CSS, 폰트 파일 등 모든 리소스가 완전히 로드된 후 실행된다.빠른 실행이 필요하면 DOMContentLoaded를, 모든 요소가 준비된 후 실행하려면 window.onload를 사용한다.DOMContentLoaded: HTML이 준비되면 실행DOMContentLoaded 이벤트는 HTML ..
크론(Cron) 표현식 개념 및 사용 방법
·
개발/Git
크론(Cron) 표현식이란 특정한 시간이나 주기로 작업을 예약할 때 사용한다. 이번에 깃허브 액션을 사용하면서 관련 개념들을 공부할 겸 정리해 보았다.크론 표현식의 기본 구조크론 표현식은 공백으로 구분된 5개 또는 6개의 필드(연도 추가 시)로 구성되며, 각 필드는 다음과 같은 의미를 갖는다. 필드는 가장 왼쪽이 분이며 그 다음이 시, 일, 월, 요일, 연도에 해당한다.필드설명허용되는 값분 (Minute)작업이 실행될 분0 - 59시 (Hour)작업이 실행될 시0 - 23일 (Day of the Month)작업이 실행될 날짜1 - 31월 (Month)작업이 실행될 달1 - 12 또는 Jan, Feb, Mar 등요일 (Day of the Week)작업이 실행될 요일0 - 6 (0 또는 7이 일요일) 또는 ..
티스토리 블로그 자동으로 키워드 링크 매칭하기
·
개발/티스토리
티스토리와 같은 블로그에서 글을 쓰다보면 키워드에 지난 글 링크를 걸어야 할 때가 많다. 보통 이럴 때는 다음과 같은 과정을 거치게 된다. 키워드와 관련된 지난 글을 찾는다. 지난 글의 링크를 복사한다. 에디터로 돌아와 지난 글의 링크를 건다. 그런데 이는 키워드가 많아지면 상당히 귀찮은 일이 되며, 또 지난 번에 어떤 글을 썼는지 모두 기억하고 있기도 쉽지가 않다. 이를 자동으로 매칭할 수 있는 방법은 없을까? 다음 자바스크립트 코드를 사용하면 블로그 콘텐츠의 내용을 글자별로 뽑아 자동으로 링크를 걸 수 있다. 이를 위해서는 키워드와 이에 해당하는 링크를 매핑시켜줘야 하는데, 한 번 설정한 다음에는 각 본문에 처음으로 등장하는 해당 키워드가 링크 태그로 바뀌게 된다. document.addEventLi..
티스토리에서 LazyLoading 구현하는 방법
·
개발/티스토리
티스토리와 같은 블로그 플랫폼에서는 이미지를 많이 사용하는 경우가 빈번하기 때문에 레이지 로딩(LazyLoading)을 필수적으로 구현해두는 것이 좋다. 이번 글에서란 레이지 로딩이란 무엇이며 이를 사용하는 이유와 더불어 이를 구현하는 코드를 정리해보려고 한다. 레이지 로딩이란? 레이지 로딩이란 사용하지 않는 리소스(예: 이미지)를 식별하여 필요할 때만 로드하는 방식이다. 그렇다면 레이지 로딩을 사용하는 이유는 무엇일까? 예를 들어, 블로그 이미지 하단에 있는 이미지는 굳이 처음부터 로딩할 필요가 없다. 레이지 로딩을 사용하는 이유는 누군가는 블로그 하단까지 글을 읽지 않을 수도 있으며, 또 당장 필요한 리소스가 아니기 때문이다. 이러한 문제점을 해결하기 위해 레이지 로딩은 중요한 리소스만을 먼저 불러온..