분류 전체보기 208

(React) Route - createBrowserRouter

BrowserRouter 를 쓸 것인가 createBrowserRouter 를 쓸 것인가?BrowserRouter 보다 createBrowserRouter 를 써야 하는 이유는 다음과 같다.하부 링크가 가능 (링크 화면에서 한번 더 링크)각 링크 컴포넌트 별로 에러 처리가 가능데이터 Fetch 가능일단 맛보기로 BrowserRouter 를 간단한 소스코드를 소개 (React v5에서는 Switch를 v6에서는 Routes를 사용)import {BrowserRouter,Routes,Route,Link} from "react-router-dom"; function App() {   return (                     } />         } />               ); } creat..

lambda, map, filter, reduce

lambda 함수를 고정으로 정의해 놓지 않고 필요시에 간단한 형식으로 실행하는 무명함수lambda 파라미터1, 파라미터2, ... : 연산 (파라미터1....)def adder(a, b):     return a + badder_lambda = lambda a, b: a + bdef to_upper(s):      return s.upper()to_upper_lambda = lambda s: s.upper() 프로그래밍을 편의를 위해 미리 정의해 둔 함수들 (map, filter, reduce)map map(function_to_apply, list_of_inputs)입력값의 수 = 처리후의 값의 수items = [1, 2, 3, 4, 5] squared = []for i in items:     sq..

data science/python 2025.01.25

CORS (Cross-Origin Resource Sharing) 란?

기본적으로 웹브라우저는 시큐리티상 다른 Origin(도메인, 프로토콜, 포트) 리소스에의 액세스를 불허한다. 주로 아래와 같은 효과가 있다. 1. API 주소만 안다고 하면 아무렇게나 액세스하여 데이터를 훔쳐갈 수 있는데 이를 방지하는 효과.2. CSRF(Cross-Site Request Forgeries) 를 방지하는데 예를 들면 사용자가 특정 사이트에 로그인 상태에서 스팸메일의 악성 링크를 클릭하면 로그인 세션으로 API 에 접근하여 원치 않는 결과를 초래 할 수 있다. 위의 예에서는 웹 페이지는 example.com 으로 부터 발행되서 그 안에서 api.example.com/func 을 액세스하고 있지만 엄격히 말해 서브도메인도 별도의 도메인으로 취급되므로 아래와 같은 에러가 발생하게 된다. 각각 ..

(React) html, css, 외부 javascript화일, 구글폰트 사용하기

1. CSS     준비된 CSS 화일을 폴더에 둔다. 예) my.css    React Component 화일에서 아래와 같이 임포트import "./my.css" 2. 구글 폰트 URL 사용    CSS 화일의 선두에 아래와 같이 임포트@import url("https://fonts.googleapis.com");@import url("https://fonts.gstatic.com");@import url("https://fonts.googleapis.com/css2?family=League+Spartan:wght@100..900&family=Roboto:wght@700&display=swap"); 3. HTML   return ( )  에 준비된 HTML body 태그 내부를 붙여넣기    css ..

digital filters in Python

1초간 30 샘플링(30Hz)의 노이즈를 가미한 5초간 진폭이 1Hz 인 사인파를 생성한 후iirfilter 함수로 N-order = 4,  고주파수 노이즈(>2.5Hz)를 Butterworth 형태의 lowpass 필터의 계수를 구하여 적용한다.import numpy as npimport scipy.signalnp.random.seed(42)  # for reproducibilityfs = 30  # sampling rate, Hzts = np.arange(0, 5, 1.0 / fs)  # time vector - 5 secondsys = np.sin(2*np.pi * 1.0 * ts)  # signal @ 1.0 Hz, without noiseyerr = 0.5 * np.random.normal(si..

Color & Font

https://youtu.be/km2P_KQJyO0?si=6x8z8UXe6MoJ1bTd 요약MaterialApp, Scaffold, AppBar ... 등은 클래스(위젯)이고 각각의 클래스는 생성자로서 또 다른 클래스를 받아 들이게 된다. 클래스의 생성자를 설정할시에는 프로퍼티명 : 설정 클래스 형식으로 하게 된다.프로퍼티명을 지정하는 이유는 입력순서를 신경쓰지 않아도 되고 설정하지 않은 프로퍼티는 디폴트설정을 사용하게 된다.각 클래스 프로퍼티 참조https://api.flutter.dev/flutter/widgets/widgets-library.html#classes widgets library - Dart APIwidgets library The Flutter widgets framework. To ..

Mobile/flutter 2024.09.10

Redis Pub/Sub

사용용도: 인터 PC간 통신, 인터 프로세스 통신, 인터 쓰레드 의 한방향 리얼타임 메세지 통신  ※  Redis :  메모리상의 데이터 구조체로서 퍼포먼스와 다양성으로 유명일본 모TV방송사의  PGA일본투어 생방송에 영어 선수명, 순위정보등의 Telop을 리얼타임으로 일본어로 변환하는 프로젝트에 사용. pip install redis Publisher (제공자) import redis # Connect to local Redis instance redis_client = redis.StrictRedis(host=''localhost'', port=6379, db=0) channel = ''my_channel'' while True:     message = input("Enter a message: "..

data science/python 2024.09.09