전체 글 177

[팀 구르미즈] 6~7주차 활동

9월 3~4주차 진행상황 공유하려고 한다.이 앱을 학교측에서도 사용하면 좋을 것 같아 창업동아리를 신청하였다. (내일 합격 팀 발표 날인데 두구두구..) 9월 하반기는 추석 연휴도 껴있어서 정신없이 시간이 지나갔던 것 같다. 현재 완성된 와이어프레임 기반으로 디자인도 거의 완성 완료하였다.(디자인 파트 정말 수고하셨습니다ㅎㅎ)  유저 측 디자인은 위와 같다. 디자인팀에서 1차적으로 디자인을 끝내고 피드백을 통해 완성되었다. 다들 열심히 피드백 해준 결과이다~!어드민쪽 디자인이다. 유저/어드민 메인 컬러를 다르게 한 것이 눈에 띄는 특징이다. 아래 일반/기간/반복 페이지만 약간 수정하면 디자인은 끝날 것 같다. 프론트 측은 폰트, 컬러세팅 같은 기본 설정을 완료하고 UI 작업 중이다.백엔드는 서버 환경 세..

[팀 구르미즈] 4~5주차 진행상황

무더웠던 9월 1~2주차 진행상황을 기록하고자 한다.현재 와이어프레임은 거의 완성 되었고 디자인은 작업 진행 중이다.프로젝트 주제는 강의실 예약 플랫폼으로 재학생, 관리 담당 교직원 모두에게 유용하도록 구성하였다.메인 페이지는 위와 같다.지도를 띄워 아래 건물 리스트에서 클릭하면 위치를 표시하도록 구성하였다.상단의 날짜, 인원 정보를 선택하여 필터링 기능을 적용하였다. 위 페이지는 유저 입장에서 강의실 예약 페이지로 원하는 건물에 들어가서 자신이 원하는 강의실을 선택하여 강의실의 정보를 확인할 수 있다.이후 개인정보와 사유를 기입하여 신청하도록 플로우를 설계하였다.신청현황 페이지에서 자신의 예약 이력을 확인할 수 있다. 어드민 페이지에서도 마찬가지로 위와 같은 식으로 강의실 현황을 확인할 수 있다.강의실..

[팀 구르미즈] 2~3주차 활동

8월 31일 유니브 2차 스터디를 통해 우리 구르미즈팀 2~3주차 진행 상황 발표 시간을 가졌다. 발표 목차는 아래 순서로 진행하였다. 기획 파트사용자관리자 디자인 파트 일정 소개   우리의 앱 이름은 빌리지(Billage)로 하게 됐다! 센스있는 앱 이름인 것 같다 ㅋㅋ (상우형👍) 아래는 현재까지 진행중인 사용자 와이어프레임 부분이다 (총 3개 페이지) 재학 인증 부분은 우리가 직접 학생증 이미지 파일을 확인하면서 유저를 승인할 예정이다.     아래는 관리자 플로우 부분이다. 아직 와이어프레임이 완성되지 않아서 아이데이션으로 설명하였다. (총 3개 페이지) 우리의 디자인 컨셉은 이름에 걸맞게 빌리지 이미지를 추가할 예정이고 메인 컬러는 보라색, 노란색을 통해 멋지게 꾸며볼 예정이다. (디자인, 앱..

[팀 구르미즈] 1주차 활동

첫 주차 미션은 위와 같았다. 우리학교 유니브 노션을 기반으로 앞으로 회의록이나 각종 정보들을 공유할 예정이다.🧑‍💻프로젝트 아이디어 선정 팀원들의 다양한 아이디어 제안이 나왔다.우리 팀이 직접 처음부터 끝까지 하는 프로젝트인 만큼 직접 사용할 수 있고 접근성이 좋은 아이디어가 좋다고 생각했다.투표를 통해 진행한 결과 '학교 강의실 대여 앱'이 압도적인 투표 수로 선정 되었다👏👏학교 강의실을 빌리려면 항상 과사에 전화해서 사용가능 여부를 확인해야 한다. + 신상정보도서관 스터디실 빌리는 것처럼 강의실도 어플화하면 편리하고 접근성이 좋아질 것 같다.  아이디어 선정이 됐으니 바로 다 같이 필요한 기능들을 생각해보았다. 일단 앱의 큰 틀은 학교측이 권한을 갖게 하도록 어드민/일반 유저 두 역할로 나누..

[스프링 MVC] 서블릿과 쓰레드

서블릿이란클라이언트의 요청을 처리하고, 그 결과를 개발자가 편하게 사용하도록 도와주는 자바 기술 위처럼 개발자가 비즈니스 로직에만 집중할 수 있도록 나머지 과정을 자동화해주는 기술이 서블릿이다. 서블릿 흐름을 살펴보면 아래와 같다. 1. 웹 브라우저에서 localhost:8080/hello URL로 요청을 보낸다. 2. WAS에서 request, response 객체를 생성한다.3. request, response를 파라미터로 담은 Servlet을 생성한다. 4. Servlet이 끝나면 response 객체의 내용을 기반으로 HTTP 응답을 생성한다.서블릿 컨테이너란 톰캣처럼 서블릿을 지원하는 WAS를 서블릿 컨테이너라고 한다. 특징서블릿 객체를 생성, 초기화, 호출, 종료하는 생명주기 관리서블릿 객체는..

스프링MVC 2024.08.13

연관관계 조인 전략에 대하여

컬렉션과 조인한다는 것은 데이터베이스 테이블로 보면 일대다 조인입니다. 컬렉션 즉시 로딩은 항상 외부 조인을 사용합니다. 이부분 설명에서 이해가 안되는 부분이 있었습니다. 회원 테이블과 팀 테이블을 조인할 때 회원 테이블의 외래 키에 not null 제약조건을 걸면 모든 회원은 팀에 소속되므로 항상 내부 조인이 가능합니다. 그럼 반대로 팀 테이블에서도 똑같이 제약조건 설정하면 되는거 아닌가? 생각이 듭니다. 결론적으로, 외래키는 항상 다 쪽에 있으므로 불가능 합니다. 그래서 팀 테이블에서 회원 테이블로 일대다 관계 조인할 때, 회원이 한 명도 없는 팀을 내부 조인하면 팀까지 조회되지 않는 문제가 발생합니다. 따라서 일대다 관계를 즉시로딩할 때 항상 외부 조인을 합니다. 그래야 모든 팀을 조회할 수 있습..

[백준] 6588번 파이썬 python

시간초과로 고생했다.. 에라토스테네스의 체 구현방법 꼭 숙지하자 import math import sys # 에라토스테네스의 체 == 주어진 범위 내의 소수 리스트 반환하는 효율적인 알고리즘 def sieve_of_eratosthenes(n): prime = [True for _ in range(n+1)] prime[0] = prime[1] = False for i in range(2, int(math.sqrt(n)) + 1): if prime[i] == True: for j in range(i*i, n+1, i): prime[j] = False return prime max_n = 1000000 prime_list = sieve_of_eratosthenes(max_n) while True: n = in..

알고리즘 2024.02.29

[프로그래머스] 두 원사이의 정수 쌍/파이썬 python

분류: 구현 ## 틀린 코드 import math def solution(r1, r2): answer = 0 answer += (r2-r1+1)*4 cnt = 0 for i in range(1, r2): for j in range(math.ceil(math.sqrt(r1**(2) - i**(2))),int(math.sqrt((r2**(2) - i**(2))))+1): if j == 0: continue cnt += 1 cnt *= 4 answer = answer + cnt return answer x,y축과 그 사이 점들을 따로 분리해서 구하려고 하였음 - x,y축에 있는 점 갯수 - 1~(r2-1)사이에 있는 점 갯수 x 4 이런식으로 로직을 짰는데 테스트코드에서는 맞았지만 제출 시 런타임 에러.. 일..

알고리즘 2024.02.28