전체 글 16

[postgreSQL + ASP.NET CORE] ASP.NET Core MVC에 postgre 데이터베이스 연결하기

Startup.cs public void ConfigureServices(IServiceCollection services) { services.AddRazorPages(); services.AddDbContext(options => options.UseNpgsql( Configuration.GetConnectionString("DefaultConnection"))); services.AddControllersWithViews(); } ApplicationDbContext.cs using System; using Microsoft.EntityFrameworkCore; using System.Linq; using System.Threading.Tasks; using System.Collections.Gen..

Study 2021.03.17

[PostgreSQL] 쿼리문 공부 노트

데이터베이스에 연결하기 psql -h localhost -p 5432 -U suyong test -> Suyong 이라는 owner의 test 테이블로 가기 또는 psql에서 \c 데이터베이스 이름 테이블 만들기 CREATE TABLE 테이블이름 ( id INT, first_name VARVHAR(50), ….. ); 데이터 넣기 INSERT INTO 테이블이름( fisrt_name, last_name, gender, date_of_birth) VALUES (‘Anne’, ‘Smith’, ‘FEMALE’, DATE ’1988-01-09’); SELECT * FROM person; -> person 테이블의 모든 열(*) 나열 SELECT * FROM person ORDER BY [열 이름] ASC(or ..

Study 2021.03.17

수학 교육 게임 진행상황 (v031721)

Previously... 앞으로 해야 할 일은 저장할 플레이어 속성, 게임 속성 (Game State, player State) 지정 및 구축 필요하지 않은 기능 정리(시간, 과거 건물 생성 버튼) 라이팅 게임 저장 시스템 구축 Camera Controller에 연결된 카메라 각도 조절 레벨 넘어가는 시퀀스 근 한달이 흘렀다. 해야할 일이 많았기에 꾸준한 개발을 할 순 없었지만 상당히 많은 개선 사항이 있었다. 우선 위젯에서만 사용하던 플레이어 관련 변수를 PlayerState로 전부 넘겨주었다. 돈, 경험치, 레벨, 빌드레벨 등이 전부 int 혹은 float 형태로 구성되었고 저장하고 불러오기 쉽도록 해놓았다. 필요하지 않은 시간 기능은 없앴고, 레벨 넘어가는 시퀀스도 방법을 바꿔주었다. 앞으로 해야 ..

Unreal Engine 2021.03.17

[ASP.NET Core MVC] Mac에는 Package Manager Console이 없음 해결 방법

맥에선 PMC가 지원되지 않는다. 데이터베이스 마이그레이션은 그럼 어떻게 할까? 아래와 같이 차례대로 커맨더에 명령어를 실행해주면 된다. dotnet-ef 설치: dotnet tool install --global dotnet-ef dotnet-ef 업데이트: dotnet tool update 경로 환경 변수에 dotnet-ef 도구 추가: export PATH="$PATH:/Users/'사용자 이름'/.dotnet/tools" 프로젝트 폴더로 이동하여: dotnet restore dotnet ef 데이터베이스 마이그레이션: dotnet ef migrations add initial dotnet ef database update

Study 2021.03.17

[데이터구조 & 알고리즘] Hash Function - djb2 개요

djb2는 좋은 문자열 해시 함수이다. 훌륭하게 분산시키고 여러 키, 테이블 크기에서의 속도를 많이 줄여주어 다른 잘 알려진 함수보다 더 효율이 좋다. 이 알고리즘에서 왜 k를 33으로 쓰는 지 아직까지도 적절하게 설명은 안됐지만 다른 소수보다 훨씬 더 잘 작동한다. unsigned long hash(unsigned char *str) { unsigned long hash = 5381; int c; while (c = *str++) hash = ((hash

Study 2021.03.03

[데이터구조 & 알고리즘] 해시테이블 파이썬 코드 (CS Dojo)

CS Dojo의 코드입니다. class Hashtable: # Assumption: table_length is a prime number (for example, 5, 701, or 30011) def __init__(self, table_length): self.table = [None] * table_length ## An internal search function. # If it finds the given key in the table, it will return (True, index) # If not, it will return (False, the index where it would be inserted) # If the table is full, it will return (False..

Study 2021.03.03

[데이터구조 & 알고리즘] Hash Tables 및 Dictionaries 개요

Dictionary : collection or data structure of key/value pair. - search - insert - delete - O(1) Dictionary로부터 Hash Table을 만들려면 Dictionary의 키/값 쌍이 배열의 어떤 인덱스에 들어갈 지 결정해야 한다. 그 뒤 배열에 인덱스에 맞게 넣어준다. Hash function should be - fast to compute (컴퓨팅이 빨라야 함) - avoid collisions(충돌/중복을 막아야 함) : djb2 To avoid Collisions -Chaining Linked List를 만들고 포인터가 가르키게 한다. 새 키/값 쌍은 제일 앞에 위치한다. 여기서 n은 요소의 수, m은 배열의 길이이다. ..

Study 2021.02.26

[데이터구조 & 알고리즘] Stack 및 Queue 개요

Stack - Last in, first out. - 포인터는 항상 마지막 요소만 가르킨다. - 마지막 요소를 삭제하는 경우 포인터만 왼쪽으로 옮긴다. 굳이 삭제한 요소를 비울 필요는 없다. Queue - First in First out - 두 포인터, 하나는 맨 앞의 요소, 하나는 다음 요소가 들어갈 위치를 가리킨다. - 배열의 끝에 도달하면 포인터는 맨 처음 인덱스로 돌아간다. - 배열의 크기가 n인 경우 n-1개의 요소만 저장이 가능하다. - 포인터가 같은 곳을 가르키면 큐는 비어졌다고 간주된다. - 위와 같은 경우 빈 칸이 없으면, 꽉찼을 때 포인터가 같은 곳을 가르키므로 한 칸을 비워둬야 한다. Deque/Double-ended Queue - can remove/add data to eithe..

Study 2021.02.26