분류 전체보기
-
FastAPI 애플리케이션의 성능을 개선하기 위해 많은 자료를 찾아보고 정리해봅니다.예제 소개다음은 FastAPI의 기본적인 엔드포인트 예제입니다. Product라는 Pydantic 모델을 정의하고, products 리스트를 반환하는 엔드포인트를 구현했습니다. 각 섹션에서 이 코드를 조금씩 최적화하며 개선해 보겠습니다.from fastapi import FastAPIfrom pydantic import BaseModelapp = FastAPI()class Product(BaseModel): product_id: str price: float@app.get("/products/", response_model=list[Product])def read_products(): products =..
FastAPI 성능 최적화하기FastAPI 애플리케이션의 성능을 개선하기 위해 많은 자료를 찾아보고 정리해봅니다.예제 소개다음은 FastAPI의 기본적인 엔드포인트 예제입니다. Product라는 Pydantic 모델을 정의하고, products 리스트를 반환하는 엔드포인트를 구현했습니다. 각 섹션에서 이 코드를 조금씩 최적화하며 개선해 보겠습니다.from fastapi import FastAPIfrom pydantic import BaseModelapp = FastAPI()class Product(BaseModel): product_id: str price: float@app.get("/products/", response_model=list[Product])def read_products(): products =..
2025.01.15 -
AI 웹앱 개발자로서 Python은 이제 너무 중요한 언어인것 같습니다. 주력 언어로 Javascript와 Python은 계속 이어질것 같고 Python을 좀 더 딥하게 이해하고 숙달하기 위해 중요 개념들을 정리해봅니다.1. 객체지향 프로그래밍(OOP)선행 지식: Python 기본 문법, 함수연관 개념: 클래스, 상속, 다형성, 캡슐화객체지향 프로그래밍은 Python을 배우는 여정에서 꼭 익혀야 할 가장 중요한 개념 중 하나입니다.Python은 Java처럼 엄격한 객체지향 언어는 아니지만, 실제 프로젝트에 기여하기 위해서는 좋은 OOP 개념과 모범 사례를 반드시 이해해야 합니다.객체지향 프로그래밍은 단순히 클래스와 객체를 만드는 것이 아니라, 현실 세계에 맞게 코드를 구조화하는 방법을 배우는 것입니다...
시니어 파이썬 개발자로 나아가기위한 10가지 개념AI 웹앱 개발자로서 Python은 이제 너무 중요한 언어인것 같습니다. 주력 언어로 Javascript와 Python은 계속 이어질것 같고 Python을 좀 더 딥하게 이해하고 숙달하기 위해 중요 개념들을 정리해봅니다.1. 객체지향 프로그래밍(OOP)선행 지식: Python 기본 문법, 함수연관 개념: 클래스, 상속, 다형성, 캡슐화객체지향 프로그래밍은 Python을 배우는 여정에서 꼭 익혀야 할 가장 중요한 개념 중 하나입니다.Python은 Java처럼 엄격한 객체지향 언어는 아니지만, 실제 프로젝트에 기여하기 위해서는 좋은 OOP 개념과 모범 사례를 반드시 이해해야 합니다.객체지향 프로그래밍은 단순히 클래스와 객체를 만드는 것이 아니라, 현실 세계에 맞게 코드를 구조화하는 방법을 배우는 것입니다...
2025.01.15 -
Python 3.14: 주요 업데이트와 새로운 기능 Python 3.14의 세 번째 알파 릴리스가 공개되면서 많은 주목을 받고 있습니다. Python 커뮤니티는 매 릴리스마다 점진적인 개선과 주요 기능 추가를 통해 개발자들에게 강력한 도구를 제공하고 있습니다. 이번 3.14 릴리스에서도 눈에 띄는 새로운 업데이트가 포함되었습니다. 다음은 그 중 상위 5개의 주요 개선 사항입니다.1. 환경 변수 다시 로드 기능 추가os.environ은 Python 프로그램의 시작 시 정의된 캐시된 환경 변수를 보관합니다. 그러나 Python 스크립트 외부에서 환경 변수가 변경되었을 때 이를 반영하지 못하는 문제가 있었습니다. 이를 해결하기 위해 Python 3.14에서는 새로운 내장 함수 os.reload_environ(..
Python 3.14 출시 - 꼭 알아야 할 5가지 주요 기능Python 3.14: 주요 업데이트와 새로운 기능 Python 3.14의 세 번째 알파 릴리스가 공개되면서 많은 주목을 받고 있습니다. Python 커뮤니티는 매 릴리스마다 점진적인 개선과 주요 기능 추가를 통해 개발자들에게 강력한 도구를 제공하고 있습니다. 이번 3.14 릴리스에서도 눈에 띄는 새로운 업데이트가 포함되었습니다. 다음은 그 중 상위 5개의 주요 개선 사항입니다.1. 환경 변수 다시 로드 기능 추가os.environ은 Python 프로그램의 시작 시 정의된 캐시된 환경 변수를 보관합니다. 그러나 Python 스크립트 외부에서 환경 변수가 변경되었을 때 이를 반영하지 못하는 문제가 있었습니다. 이를 해결하기 위해 Python 3.14에서는 새로운 내장 함수 os.reload_environ(..
2025.01.15 -
모바일에서 디자인을 헤치는 android status바, system bar 확실하게 제거하는 방법을 알려드립니다.이방법, 저방법 다 해봤지만 잘 먹혔던것 소개 드립니다. 회색 바 제거StatusBar.hidden 속성을 true로 설정하면 상단의 회색 바가 제거됩니다.만약 SafeAreaView를 사용 중이라면, 이를 View로 교체하거나 스타일로 padding을 없앨 수 있습니다.import React from 'react';import { View, StyleSheet, StatusBar } from 'react-native';const App = () => { return ( {/* 상태바 스타일 조정 */} );};const styles = StyleShee..
React-Native android status바, system bar 제거모바일에서 디자인을 헤치는 android status바, system bar 확실하게 제거하는 방법을 알려드립니다.이방법, 저방법 다 해봤지만 잘 먹혔던것 소개 드립니다. 회색 바 제거StatusBar.hidden 속성을 true로 설정하면 상단의 회색 바가 제거됩니다.만약 SafeAreaView를 사용 중이라면, 이를 View로 교체하거나 스타일로 padding을 없앨 수 있습니다.import React from 'react';import { View, StyleSheet, StatusBar } from 'react-native';const App = () => { return ( {/* 상태바 스타일 조정 */} );};const styles = StyleShee..
2025.01.08 -
모바일에선 푸시 알림이 필수 기능중에 하나이다.그리고 푸시 알림을 특정 조건이 이루어지거나 내 커스텀 Admin에서 보내고 싶다면 API 사용은 필수이다. 새 캠페인에서 알림으로 보내는것은 한계가 있다. 고로 API로 만들어야 하는데 구현과정중 기존의 방식에서 HTTP v1 API로 이전됨에 따라 달라졌으므로 헷갈리는 부분을 짚어주고자 한다. 공식문서는 https://firebase.google.com/docs/cloud-messaging/migrate-v1?hl=ko&authuser=0이다. 기존 FCM API에서 HTTP v1로 이전 | Firebase Cloud Messaging2024년 데모 데이에서, Firebase를 사용하여 AI 기반 앱을 빌드하고 실행하는 방법에 관한 데모를 시청하세요..
친절한 Firebase Cloud Messaging 푸시 알림 API (feat.HTTP v1 API로 이전)모바일에선 푸시 알림이 필수 기능중에 하나이다.그리고 푸시 알림을 특정 조건이 이루어지거나 내 커스텀 Admin에서 보내고 싶다면 API 사용은 필수이다. 새 캠페인에서 알림으로 보내는것은 한계가 있다. 고로 API로 만들어야 하는데 구현과정중 기존의 방식에서 HTTP v1 API로 이전됨에 따라 달라졌으므로 헷갈리는 부분을 짚어주고자 한다. 공식문서는 https://firebase.google.com/docs/cloud-messaging/migrate-v1?hl=ko&authuser=0이다. 기존 FCM API에서 HTTP v1로 이전 | Firebase Cloud Messaging2024년 데모 데이에서, Firebase를 사용하여 AI 기반 앱을 빌드하고 실행하는 방법에 관한 데모를 시청하세요..
2025.01.03 -
keytool error: java.lang.Exception: Keystore file does not exist: path-to-debug-or-production-keystoreandrioid 앱 push 알림 api 사용을 위해 OAuth 클라이언트를 만들려고 한다.그런데 SHA-1 디지털 지문이 필요하단다.친절하게 command 쓰라고 google이 넣어놨다. 하지만 명령어 그대로 복사해서 쓰면 안된다.명령어를 잘 읽어보면 path-to-debug-or-production-keystore 즉 path 너가 똑바로 적어라는 소리다. 지금 단계는 개발중이기 때문에 debug.keystore를 쓸것이다. 해당 key store는 android -> app -> debug.keystore에 있다. ..
keytool error: java.lang.Exception: Keystore file does not exist: path-to-debug-or-production-keystorekeytool error: java.lang.Exception: Keystore file does not exist: path-to-debug-or-production-keystoreandrioid 앱 push 알림 api 사용을 위해 OAuth 클라이언트를 만들려고 한다.그런데 SHA-1 디지털 지문이 필요하단다.친절하게 command 쓰라고 google이 넣어놨다. 하지만 명령어 그대로 복사해서 쓰면 안된다.명령어를 잘 읽어보면 path-to-debug-or-production-keystore 즉 path 너가 똑바로 적어라는 소리다. 지금 단계는 개발중이기 때문에 debug.keystore를 쓸것이다. 해당 key store는 android -> app -> debug.keystore에 있다. ..
2024.12.31 -
window.matchMedia를 활용하여 React에서의 반응형 웹 구현을 위한 코드입니다.import { useEffect, useState } from 'react';export default function Home() { const [isMobile, setIsMobile] = useState(false); useEffect(() => { const mediaQuery = window.matchMedia('(max-width: 768px)'); const handleChange = () => setIsMobile(mediaQuery.matches); mediaQuery.addEventListener('change', handleChange); setIsMobile(med..
React와 Media Query: window.matchMedia를 활용한 반응형 스타일링window.matchMedia를 활용하여 React에서의 반응형 웹 구현을 위한 코드입니다.import { useEffect, useState } from 'react';export default function Home() { const [isMobile, setIsMobile] = useState(false); useEffect(() => { const mediaQuery = window.matchMedia('(max-width: 768px)'); const handleChange = () => setIsMobile(mediaQuery.matches); mediaQuery.addEventListener('change', handleChange); setIsMobile(med..
2024.12.28 -
(NOBRIDGE) ERROR Warning: TypeError: Cannot read property 'bubblingEventTypes' of null react-native-video 사용하려는데 위와 같은 에러가 난다면? 결론 부터 말씀 드리면 이 방법 저 방법 다 써보고 Xcode Clean Build Folder하고 해결 했습니다.네이티브 브릿지 문제 해결react-native-video가 네이티브 코드와 올바르게 연결되지 않았을 가능성이 있습니다.iOSXcode에서 프로젝트를 열고 Clean Build Folder 실행:메뉴: Product > Clean Build Folder이후 앱을 다시 실행:react-native run-iosAndroidGradle 캐시를 정리하고 빌드:cd an..
(NOBRIDGE) ERROR Warning: TypeError: Cannot read property 'bubblingEventTypes' of null(NOBRIDGE) ERROR Warning: TypeError: Cannot read property 'bubblingEventTypes' of null react-native-video 사용하려는데 위와 같은 에러가 난다면? 결론 부터 말씀 드리면 이 방법 저 방법 다 써보고 Xcode Clean Build Folder하고 해결 했습니다.네이티브 브릿지 문제 해결react-native-video가 네이티브 코드와 올바르게 연결되지 않았을 가능성이 있습니다.iOSXcode에서 프로젝트를 열고 Clean Build Folder 실행:메뉴: Product > Clean Build Folder이후 앱을 다시 실행:react-native run-iosAndroidGradle 캐시를 정리하고 빌드:cd an..
2024.12.18