본문 바로가기

컴퓨터 활용/노년에 즐기는 코딩125

[웹 개발] 웹 프레임워크 '장고' 웹 프레임워크 '장고' 장고(Django)는 파이썬으로 작성된 고급 웹 프레임워크입니다. 장고의 목표는 복잡한 웹사이트 개발을 빠르고 쉽게 할 수 있게 하는 것입니다. 장고는 "배터리 포함(batteries-included)" 접근 방식을 채택하여, 개발자가 웹 애플리케이션 개발 시 필요할 수 있는 많은 공통 기능들을 프레임워크 내에 이미 구현해 놓았습니다. 이러한 접근 방식은 개발 속도를 크게 향상하고, 개발자가 애플리케이션의 핵심 기능 개발에 더 집중할 수 있게 합니다. 장고의 주요 구성 요소 모델(Model) 장고의 모델은 데이터베이스의 레이아웃을 파이썬 클래스로 정의합니다. 모델을 통해 데이터베이스 스키마를 생성하고 데이터베이스와의 상호작용을 추상화합니다. 이를 통해 개발자는 SQL 쿼리를 직접 .. 2024. 3. 16.
[Web] 웹사이트의 기본 기능, CRUD 웹사이트의 기본 기능, CRUD 웹사이트를 운영하면서 가장 중요한 기능 중 하나는 CRUD입니다. CRUD는 Create(생성), Read(읽기), Update(업데이트), Delete(삭제)의 약자로, 웹사이트의 데이터를 관리하는 기본적인 네 가지 작업을 의미합니다. 이러한 작업들은 웹사이트의 동적인 기능을 가능하게 만들며, 사용자들이 웹사이트와 상호 작용할 수 있는 방법을 제공합니다. Create(생성) 생성은 새로운 데이터를 만들어 데이터베이스에 추가하는 과정을 말합니다. 예를 들어, 블로그에 새 글을 작성하거나 회원가입을 통해 새로운 사용자 계정을 만드는 것이 여기에 해당합니다. 사용자가 웹사이트에 정보를 입력하고 제출 버튼을 누르면, 그 정보는 데이터베이스에 새로운 레코드로 저장됩니다. Read.. 2024. 3. 15.
[웹 개발] '프런트엔드(Frontend)'와 '백엔드(Backend)' '프런트엔드(Frontend)'와 '백엔드(Backend)' 웹 개발에서 '프런트엔드(Frontend)'와 '백엔드(Backend)'는 웹 애플리케이션의 두 주요 구성 요소입니다. 각각은 사용자와 서버 측에서 발생하는 다양한 작업과 기능을 담당하며, 웹 애플리케이션의 사용자 인터페이스와 데이터 처리 및 저장 등의 기능을 제공합니다. 이들은 상호 보완적인 관계에 있으며, 함께 작동하여 사용자에게 매끄러운 웹 경험을 제공합니다. 프런트엔드 (Frontend) 프런트엔드는 사용자가 직접 상호작용하는 웹 애플리케이션의 클라이언트 측 부분입니다. 사용자 인터페이스(UI)와 사용자 경험(UX)을 담당하며, 웹사이트의 디자인, 구조, 행동 및 콘텐츠를 구현합니다. 사용자가 웹사이트를 통해 볼 수 있고 상호작용할 수 .. 2024. 3. 15.
[파이썬] Jupyter Notebook 사용에서 폴더 지정 Jupyter Notebook 사용에서 폴더 지정 Jupyter Notebook을 사용할 때 특정 폴더를 작업 공간으로 지정하는 방법은 여러 가지가 있습니다. 가장 기본적인 방법은 Jupyter Notebook 서버를 시작할 때 터미널이나 명령 프롬프트에서 작업할 폴더를 지정하는 것입니다. 다음은 이 과정을 거치는 몇 가지 방법입니다. 기본 폴더 변경하기: Jupyter Notebook을 실행하기 전에, 터미널이나 명령 프롬프트에서 작업할 폴더로 이동합니다. 해당 폴더에서 jupyter notebook 명령어를 실행합니다. 이렇게 하면 Jupyter Notebook이 현재 폴더를 기본 작업 공간으로 사용합니다. 명령어로 직접 폴더 지정하기: 터미널이나 명령 프롬프트에서 jupyter notebook --.. 2024. 3. 14.
[파이썬] Jupyter Notebook의 마술 명령어 Jupyter Notebook의 마술 명령어 Jupyter 노트북에서 매직 커맨드는 주로 두 가지 유형으로 나뉩니다: 라인 매직(line magic)과 셀 매직(cell magic)입니다. 사용 사례 라인 매직(line magic): %로 시작하는 매직 커맨드로, 한 줄에 대해서만 영향을 미치며 셀 내 다른 코드와 함께 사용할 수 있습니다. 라인 매직은 해당 라인에서만 작동하며, 주로 설정 변경, 환경 변수 설정, 또는 시스템 명령어 실행 등에 사용됩니다. %timeit range(100) 이 라인 매직 커맨드는 한 줄의 코드 실행 시간을 측정합니다. 셀 매직(cell magic): %%로 시작하는 매직 커맨드로, 셀 매직을 선언한 셀 전체에 영향을 미칩니다. 셀 매직은 해당 셀의 모든 코드에 적용되며,.. 2024. 3. 13.
[Sigil] 전자책 표지에 대하여 전자책 표지 SVG(Scalable Vector Graphics) 요소를 사용하여 EPUB 전자책의 표지 이미지를 포함시키기 위한 HTML 코드의 일부입니다. SVG는 웹 상에서 확장 가능한 벡터 그래픽을 정의하기 위한 XML 기반의 마크업 언어입니다. 이 코드의 각 부분을 자세히 설명하겠습니다. : 이 태그는 SVG 문서를 정의합니다. SVG 요소 내에 들어가는 모든 도형, 그래픽, 텍스트 등은 이 태그 내부에 위치해야 합니다. xmlns="http://www.w3.org/2000/svg": 이 속성은 SVG의 XML 네임스페이스를 정의합니다. 모든 SVG 문서는 이 네임스페이스를 가지고 있어야 유효합니다. height="100%" 및 width="100%": SVG 요소의 너비와 높이가 부모 요소의 .. 2024. 3. 12.
[FastAPI] FastAPI 설치하고 서버 실행하고 API 엔드포인트 만들기 파이썬 가상환경을 아나콘다에서 만들기 아나콘다에서 가상환경을 만드는 명령어는 `conda create -n 가상환경이름 python=x.x`입니다. 여기서 가상환경 이름은 'fastapi-app'이고, 가상환경 파이썬 버전은 'Pythone_3.8'입니다. 만들어진 가상환경을 활성화하는 아나콘다 명령은 'conda activate 가상환경이름'입니다. 여기서는 'conda activate fastapi-app'입니다. 가상환경이 활성화되면 프롬프트 앞에 가상환경 이름이 괄호 안에 새겨집니다. FastAPI 설치 이어서 FastAPI를 설치합니다. 설치 명령은 'pip install fastapi'입니다. 아나콘다 프롬프트 터미널에서 위 명령을 주면 다음과 같이 설치가 진행됩니다. FastAPI 서버 uv.. 2024. 3. 11.
[HTML] 캔버스에 텍스트를 추가 캔버스에 텍스트를 추가 캔버스에 텍스트를 추가하는 것은 fillText() 또는 strokeText() 메서드를 사용하여 수행할 수 있습니다. 이 메서드들은 캔버스의 2D 컨텍스트에 속해 있으며, 텍스트 문자열과 텍스트를 시작할 x 및 y 좌표를 인자로 받습니다. 다음은 캔버스에 "길이 글인가?" 텍스트를 추가하는 예시 코드입니다: 여기서 ctx.font을 사용하여 텍스트의 크기와 폰트를 설정할 수 있습니다. fillText() 메서드는 지정된 위치에 실제 텍스트를 채워넣고, strokeText() 메서드는 텍스트의 윤곽선만 그립니다. 이 코드는 캔버스의 (100, 150) 위치에 "길이 글인가?" 텍스트를 70픽셀 크기의 Arial 폰트로 그리는 작업을 수행합니다. 2024. 3. 10.
[HTML] 인라인 요소를 위한 컨테이너, span 태그 인라인 요소를 위한 컨테이너, span 태그 태그는 HTML에서 인라인 요소를 위한 컨테이너입니다. 이 태그는 자체적으로는 시각적 변화를 주지 않지만, 클래스, id 또는 스타일 속성을 이용하여 스타일을 적용하거나, JavaScript를 통한 상호작용을 위해 요소를 식별할 때 사용됩니다. 태그는 텍스트의 일부분에 스타일을 적용하거나 특정 텍스트를 문서의 나머지 부분과 구분하고 싶을 때 유용합니다. 이는 태그와는 다르게 블록 레벨 요소가 아닌 인라인 요소로서, 문서의 흐름을 방해하지 않고 특정 텍스트에만 영향을 줍니다. 예를 들어, 텍스트 내부에 단어나 문장에 특별한 스타일을 적용하고 싶을 때 태그를 사용할 수 있습니다: 이것은 평범한 문장입니다. 그리고 여기에 빨간색으로 강조된 단어가 있습니다. 위 예제.. 2024. 3. 9.