랜덤 팀짜기 로직
2022. 6. 8. 22:56
dev-log/기타기타🎸
기본 아이디어 인수: 인원 목록, 팀 당 인원수(or 팀 개수) 인원 각각에 난수로 생성한 id 부여하기 id 기준으로 정렬하기 팀 당 인원수(or 팀 개수)에 맞게 쪼개기 코드 참고 (자바스크립트) https://github.com/ahnanne/picnic/blob/main/utils/getRandomTeam.ts GitHub - ahnanne/picnic: 봄소풍 >__
[Next.js] Next.js의 프리 렌더링(pre-rendering) 옵션 3가지 / SSG, SSR, ISR
2022. 6. 1. 16:33
dev-log/Front-End
Next.js의 프리 렌더링 옵션으로는 잘 알려진 SSG와 SSR 두 가지 외에도 ISR라고 불리는 한 가지 방식이 더 존재한다. 이 세 가지 프리 렌더링 방식의 특징과 차이점에 대해 알아보자. 참고로 하나의 애플리케이션에서 하나의 방식만 사용해야 하는 것은 아니며, 필요에 따라 어떤 페이지에선 SSG 방식을 사용하고 나머지 페이지에선 SSR 방식을 사용하는 것도 가능하다. 또한 이 방식들과 클라이언트 사이드 렌더링 방식을 혼합하여 사용하는 것도 가능하다. (즉 어떤 페이지의 특정 부분은 전적으로 클라이언트 사이드에서 렌더링 되도록 하는 방식) ❓Pre-rendering이란? Next.js에선 기본적으로 모든 페이지를 프리 렌더링한다. 즉 HTML이 클라이언트 사이드에서 자바스크립트를 통해 생성이 되는 ..
[이미지 갤러리 만들기] 04. Supabase에 데이터 추가하기
2022. 5. 29. 18:39
dev-log/Project
원글: Building an Image Gallery with Next.js, Supabase, and Tailwind CSS (Lee Robinson / 2022년 3월 28일) * 오역 있을 수 있습니다. 댓글이나 이메일로 말씀 부탁드립니다. Supabase에 데이터 추가하기 Supabase 클라이언트는 이미 준비해뒀으니, images 테이블에 있는 모든 이미지를 select 할 수 있습니다. const IMAGE_TABLE = 'images'; const { data } = await supabaseAdmin.from( IMAGE_TABLE ).select( '*' ); 우리는 getStaticProps 내부에서 데이터를 가져오려고 합니다. getStaticProps는 데이터를 서버에서 가져올 수 ..
[일반 프로그래밍 개념] 데이터 타입 - 2. 컴파운드 타입
2022. 5. 29. 16:44
dev-log/Rust
컴파운드 타입(compound type)은 여러 개의 값을 하나의 타입으로 그룹화한 타입 러스트에선 두 가지의 컴파운드 타입을 지원 튜플(tuples) 배열(arrays) 변수의 타입 확인하기 컴파운드 타입에 대해 알아보기 전에, 컴파운드 타입이 어떻게 이루어졌는지 잘 살펴보기 위해 변수의 타입을 출력하는 함수를 만들어 놓자. (학습용 및 디버깅 목적) // main.rs /** 변수의 타입을 출력하는 함수 */ fn print_type_of(_: &T) { println!("{}", std::any::type_name::()); } *참고: https://stackoverflow.com/questions/21747136/how-do-i-print-the-type-of-a-variable 튜플 타입 고정..
[이미지 갤러리 만들기] 03. Supabase 세팅하기
2022. 5. 29. 15:05
dev-log/Project
원글: Building an Image Gallery with Next.js, Supabase, and Tailwind CSS (Lee Robinson / 2022년 3월 28일) * 오역 있을 수 있습니다. 댓글이나 이메일로 말씀 부탁드립니다. Supabase 세팅하기 Supabase를 이용하면 클릭 몇 번만으로 PostgreSQL 데이터베이스를 이용할 수 있어 백엔드를 정말 쉽게 구현할 수 있습니다. Supabase 대시보드(회원가입 해야 됨!)에서 다음과 같이 새로운 프로젝트를 구성해주세요. : "New project" 클릭 Organization 선택 (없으면 + New Organization 클릭해서 생성) 이름, DB 비밀번호를 고른 뒤 "Create new project" 클릭 이렇게 프로젝..
[일반 프로그래밍 개념] 데이터 타입 - 1. 스칼라 타입
2022. 5. 24. 00:34
dev-log/Rust
러스트는 정적 타입 언어 정적 타입 언어: 컴파일 시점에 모든 변수의 타입이 결정되어야 함. 동적 타입 언어: 런타임에 자료형이 동적으로 결정됨. 데이터 타입의 두 가지 부분집합 스칼라(Scalar) 타입: 하나의 값을 표현 컴파운드(Compound) 타입: 하나의 타입으로 여러 개의 값을 그룹화한 타입 스칼라 타입 1. 정수(integer) 2. 부동 소수점 숫자(floating point numbers) 3. 불리언(boolean) 4. 문자(characters) 정수(integer) 소수점 없는 숫자 정수 타입 중 부호가 있는 것은 i로 시작하고, 부호가 없는 것은 u로 시작 예: i16 / u32 부호가 있고 없고의 차이는 음수를 저장할 수 있는지 아닌지의 차이 러스트의 각 정수 타입에는 크기가 ..
[일반 프로그래밍 개념] 변수
2022. 5. 23. 00:18
dev-log/Rust
러스트에서 변수는 기본적으로 변경이 불가능 러스트는 불변성을 기본으로 하기 때문 필요한 경우에는 변경 가능한 변수로 선언할 수 있음. 예제 fn main() { let x = 5; println!("x의 값: {}", x); } 터미널에서 cargo run을 실행하면, x의 값: 5이라고 정상적으로 출력된다. fn main() { let x = 5; println!("x의 값: {}", x); x = 6; println!("변경된 x의 값: {}", x); } 터미널에서 cargo run을 실행하면, 다음과 같은 에러 메시지와 함께 컴파일을 할 수 없다는 컴파일러 에러가 발생한다. 러스트는 컴파일러 차원에서 이와 같이 친절하게 에러의 원인과 해결을 위한 도움말까지 제공해준다. error[E0384]: 불..
macOS에서 rust-analyzer 세팅
2022. 5. 22. 12:30
dev-log/Rust
2022.01.28 - [dev-log/Rust] - rustfmt와 RLS, rust-analyzer rustfmt와 RLS, rust-analyzer rustfmt rustfmt는 러스트의 formatting 도구로, 이를 이용하여 일정한 스타일로 코드를 작성할 수 있음. 설치하기 $ rustup component add rustfmt 러스트 파일에 대해 rustfmt 실행하기 $ rustfmt main.rs.. ahnanne.tistory.com ⬆ 오토 포맷팅을 위해 사용할 수 있는 툴인 rust-analyzer의 설치 및 사용 방법에 대해 포스팅한 적이 있다. 최근에 구입한 맥북으로 러스트 공부를 하기 위해 러스트 설치도 하고, 작성해두었던 위 포스팅을 참고하여 rust-analyzer도 설..