기본 콘텐츠로 건너뛰기

Angular2+ Side Project - Map of Cafe (1)

Angular2+ Side Project - Map of Cafe (1)

# 서문

드디어 사이드 프로젝트 두 번째 글을 쓰네요 !

그 이름도 허접한 Map of Cafe !

어차피 사이드 프로젝트기 때문에 이름에 큰 의미를 두지는 않았습니다

오늘 다시 글을 쓸 내용은 .. 디자인과 대략적인 기능에 대한 공유 ? 입니다

첫 글을 올리고 나서부터 바로 작업을 했었는데 벌어먹고 사는 일이 우선이다 보니 이렇게 늦게 되었네요 ㅋㅋ

아래는 파일이구요, 파일당 최대 용량이 10MB라 두 개로 분할했습니다

압축을 풀면 디자인 파일인 map-of-cafe.xd 파일과 대략적인 기능을 정의한 map-of-cafe.xlsx 파일이 있습니다

압축 파일 내에 있는 파일들. 아래는 분할압축한 파일. map-of-cafe.z01 10.00MB map-of-cafe.zip 9.31MB

# 디자인 설명

메인화면(비로그인)

비로그인 메인 화면입니다

지도에는 후기가 등록된 카페에 대해서만 마커가 표시되고 최대 개수 제한을 둘 예정입니다

사용자가 위치정보 공유에 동의하면 현재 위치 주변에 있는 카페를 우선적으로 보여주고, 아닐 경우 지도 중심 좌표를 기준으로 검색을 합니다

지도는 최초에 구글 맵스만 사용하려고 했는데, 화면을 표시할 땐 OpenLayers를 사용하고 카페 검색 시에만 구글 맵스를 사용하는 것으로 계획을 변경했습니다

그 이유는 구글 맵스가 무료 사용량에 제한이 있어서 .. 최대한 사용량을 줄이려고 .. ㅎㅎ

우측 상단에 있는 Sign In 버튼을 누르면 로그인 화면으로 넘어가고, 돋보기 버튼을 누르면 검색창을 표시합니다

메인화면(로그인)

로그인 후 메인화면입니다

우측 상단에 메뉴들이 추가되고 사용자 이름을 표시해줍니다

커엽게 Hello, 사용자! 라는 식으로 표시합니다 ㅋㅋ

지도에 표시되는 내용은 동일합니다

카페 팝업창

지도에 있는 마커에 마우스를 올릴 경우 위와 같이 카페에 대한 정보를 팝업으로 보여줍니다

방문한 카페에 대한 정보를 기록하고 조회하는게 주 목적인 만큼 여러 정보들을 담고 있으며, 평점 등의 정보는 공란으로 표시할 예정입니다

검색영역

우측 상단의 돋보기 버튼을 누르면 표시되는 검색영역입니다

검색어 입력창에 카페명, 주소, 태그명을 입력해서 검색할 수 있고 페이징을 제공합니다

리스트에 표시되는 아이템은 마우스를 올리면 지도상에 있는 해당 카페의 마커 위로 팝업이 떠오릅니다

하단에 있는 아이콘 중 왼쪽은 작성된 글 수, 오른쪽은 방문기록 수 이며 글 등록 버튼을 클릭하면 글쓰기 화면으로 넘어갑니다

검색영역이 활성화 된 동안 우측 상단의 돋보기 버튼은 닫기 버튼으로 변경됩니다

상세메뉴창

상세메뉴창입니다

우측 상단에서 맨 왼쪽에 있는 아이콘을 클릭하면 표시되는 창입니다

회원정보 수정 클릭 시 회원정보 화면으로,

내가 작성한 글, 작성된 글 클릭 시 카페 글 리스트 화면으로,

내가 방문한 카페, 방문 기록 클릭 시 카페 방문 기록 화면으로 이동합니다

내가~ 가 붙는 메뉴는 클릭하면 본인의 글과 방문 기록만 보여줍니다

화면 아무곳이나 클릭하면 상세메뉴창이 닫힙니다

로그인, 패스워드분실, 회원가입 화면

로그인, 패스워드분실, 회원가입 화면입니다

셋 다 똑같아 보이지만 크게보면 메뉴가 조금씩 다릅니다 ㅋㅋ

특별한 내용은 없기에 패스하겠습니다

카페상세화면

카페 상세 화면입니다

제일 상단에는 카페에 대한 기본 정보들을 표시합니다

기본 정보에 있는 평점, 좌석 수 등은 사용자가 작성한 글에서 평가된 점수들로 평균을 내서 표시합니다

두 번째는 이미지 영역입니다

이미지 클릭 시 이미지 리스트 창이 표시됩니다

세 번 째는 방문 기록 영역입니다

해당 카페에 방문 기록을 남긴 사람들의 기록을 볼 수 있습니다

네 번째는 작성된 글 목록 영역입니다

작성일자, 닉네임, 평점, 내용을 표시하며 내용은 한 줄만 표시합니다

마지막은 태그 목록입니다

클릭 시 카페 글 리스트 화면으로 넘어갑니다

카페글리스트화면

카페 글 리스트 화면에선 작성된 글들을 기준으로 목록화하여 볼 수 있습니다

각 아이템은 작성일자, 닉네임, 평점, 이미지, 내용, 카페명을 표시합니다

이미지와 내용은 있을 경우에만 표시되며 둘 다 없거나 하나만 있을 수도 있습니다

이미지를 클릭하면 이미지 리스트 창이 표시됩니다

더 보기 버튼을 클릭하면 카페 글 상세창이 표시됩니다

카페 글 상세창

카페 글 상세창에선 작성된 글에 대한 전체 내용과 모든 평가 항목을 볼 수 있습니다

작성자의 경우 우측 상단에 있는 수정 버튼을 이용해 글쓰기 화면으로 넘어갈 수 있습니다

카페 글 상세창에선 이미지가 표시되지 않습니다

이미지는 밖에서 봅시다

이미지 리스트 창

이미지 리스트 창은 위와 같이 표시됩니다

검은 영역에 이미지를 맞춰서 표시하며, 작은 썸네일이 있는 곳을 보면 우측에 화살표를 이용한 페이징을 제공할 예정입니다

이미지 클릭 시 전체 화면으로 표시를 할 지는 고민을 해봐야겠네요

글쓰기 화면

글쓰기 화면입니다

평점 등의 항목은 슬라이더를 이용해 입력할 수 있도록 하고 이미지는 드래그 앤 드랍 혹은 영역 클릭을 통해 등록할 수 있습니다

내용과 태그는 필요에 따라 추가할 수 있으며 상단에 있는 카페명과 주소가 표시된 영역을 클릭하면 카페검색창을 표시합니다

카페검색창

카페 검색창에선 카페를 검색하고 선택할 수 있습니다

카페를 클릭하면 창이 자동으로 닫히며 글 작성 대상이 해당 카페로 변경됩니다

카페 방문 기록 화면

카페 방문 기록 화면에선 방문 기록을 시간순으로 볼 수 있습니다

읽기 전용 요소이기 때문에 검색 외엔 아무 역할도 없습니다

회원정보수정화면

회원정보 수정 화면입니다

닉네임과 이메일은 기존에 입력된 내용이 표시됩니다

각 내용에 기존과 다른 값을 입력하고 저장 버튼을 누르면 저장이 됩니다

이메일이나 패스워드가 변경되었을 경우엔 로그아웃 처리가 되며, 이메일 변경 시엔 인증 메일을 재발송 할 예정이었는데 이 부분은 사실 바뀔 수도 있을 것 같습니다

굳이 불필요하게 이메일 정보를 저장하기 보다는 최초 회원 가입시에 이메일로 회원가입을 위한 Private 링크를 보내는 게 나을 것 같기도 하고 ..

근데 그렇게 하면 패스워드 분실 시에 어떻게 찾게 할 것인지가 고민이네요

일단 이 부분은 나중에 생각해 보겠습니다

만약 바뀐다면 회원가입 화면도 변경이 될 것 같네요

# 마무리

이렇게 소개를 하고보니 디자인에 참 일관성이 없는 것 같네요 ㅋㅋㅋ

하지만 저는 디자이너가 아니고 사이드 프로젝트일 뿐이니 가볍게 한 번 시작을 해볼까 합니다

아 근데 뭔가 빠트린 것 같은데 .. DB 설계요?

DB 설계는 추후에 다시 들고 오겠습니다 ㅜㅜ 머나먼 코딩의 길

그럼 이만 .. !

from http://devs-diary.tistory.com/40 by ccl(A) rewrite - 2020-03-06 12:54:40

댓글

이 블로그의 인기 게시물

(주)레터플라이 채용 정보: 프로그래밍을 생각하면 가슴이 뛰는 개발자...

(주)레터플라이 채용 정보: 프로그래밍을 생각하면 가슴이 뛰는 개발자... Angular.js, Python, MySQL 중 한 가지 언어에 뛰어나신 분도 좋고 개발 업무 전반적으로 센스가 있으신 분도 환영합니다. 맡은 업무를 성실하게 수행해 나갈 수 있는 책임감과 태도를 갖고계신 분, 그리고 항상 새로운 방법론에 도전하고 포기를 모르는 분일수록 저희와 더욱 잘 맞을 것 같습니다. Angular.js, Python, MySQL 중 한 가지 언어에 뛰어나신 분도 좋고 개발 업무 전반적으로 센스가 있으신 분도 환영합니다. 팀 내 뛰어난 풀스택 개발자분들이 Angular.js, Python, MySQL 모두 작업 가능하시니 오셔서 함께 배우며 즐겁게 작업하시면 됩니다. 맡은 업무를 성실하게 수행해 나갈 수 있는 책임감과 태도를 갖고계신 분, 그리고 항상 새로운 방법론에 도전하고 포기를 모르는 분일수록 저희와 더욱 잘 맞을 것 같습니다. 개발 업무: 레터플라이의 핵심 기능인 편지, 사진을 제작하는 레터에디터, 포토에디터 개발. 이 기능들은 "모바일 웹을 통한 출력제품 생산 자동화 기술"(특허 출원 준비중)로서 레터플라이에서 자체개발했습니다. 근무 지역: 광화문역 5번출구 바로 앞 근무 환경: 책임과 존중을 중요시하는 수평적인 분위기, 도전적이며 서로에게 배우는 문화 근무 시간: 10-19시, 출근시간 자유 지정. 급여: 연봉/스톡옵션 협의 지원 방법: 팀 지원하기 더 많은 내용은 더 많은 내용은 더팀스 에서 확인하세요! from http://theteams.tistory.com/721 by ccl(A) rewrite - 2020-03-20 09:20:18

[django] django rest framework 로그인 과정 | 장고 로그인 | 인증...

[django] django rest framework 로그인 과정 | 장고 로그인 | 인증... django 는 기능이 참 너무 많다 ^^; 지금은 서버는 django로, 프론트는 angular를 붙여서 간단한 웹을 만들어 보려고 한다. 웹 만들때 항상 회원가입/로그인 기능은 맨 앞에 구현한다. 어떻게 구현하면 좋을까... 찾아보다가 이 기능을 구현할 수 있는 방법이 너무 많아서 정보를 찾기 더 어려웠다. 일단 나는 django에서 django rest framework라는 것을 사용해서 API를 만드려고 한다. 순수 django 튜토리얼에는 바로 template 랑 연결해서 설명하는 부분이 많았다. 나는 그냥 API 만 만들고 싶다고!! 그래서 찾은 것이 django REST framework. https://www.django-rest-framework.org/api-guide/authentication django REST framework 설치 using pip pip install djangorestframework settings.py INSTALLED APPS 에 추가해야함 INSTALLED_APPS = [ ... 'rest_framework', ] django REST framework 에서도 인증 관련해서 제공하는 것이 1개가 아닌 여러 개다. 나는 그중에 TokenAuthentication을 이용해서 로그인을 구현해 보려고 한다. TokenAuthentication Token authentication is appropriate for client-server setups, such as native desktop and mobile clients. 이렇게 나와있어서 내가 하려는 것과 일치해서 이걸로 결정 ~ 솔직히 처음 로그인을 구현하려고 하면 도대체 그 과정이 어떻게 되는지 모를 수 도 있다. 나는 쉽게 정리하면 아래와 같은 과정이라고 생각한다. 로그인 로그아웃...

[020] 파동함수를 쓰기

[020] 파동함수를 쓰기 [020] 파동함수를 쓰기 [020] 파동함수를 알면 우리가 원하는 뭔가를 알 수 있다고 했는데, 정작 파동을 함수로 쓰는 것은 아직 다루지 않았고, 양자역학 내용을 좀 더 진행하려면 왜 파동이 삼각함수로 써 지는지를 한번은 정리를 해야겠다. 수학이 많이 나올 예정이다. 앞에서 파동함수를 아래 형태로 쓸 수 있다고 했었는데, 왜 이런 형태가 되는지 알아보자. [020-01] 파동함수 사인파의 일반형은 코사인 (cos) 을 이용해 쓰지만, 사인 (sin) 과 코사인은 위상차이만 있는 함수들이고, 우리는 앞으로 사인을 이용해 문제를 풀 예정이라 사인을 이용하기로 한다. 파동함수는 양자역학에서 갑자기 나온 말이 아니고, 원래 파동을 함수의 형태로 쓴 것을 파동함수라고 부른다. 파동-입자 이중성을 가지니까 기존에 파동을 함수의 형태로 쓰던 그 모양을 가져다 쓴 것. 주교재의 16장에 있는 내용이다. [020-02] 펄스 - Pulse 아래와 같이 하나의 진동이 왼쪽에서 오른쪽으로 진행하는 상황을 생각해보자. 시간 t 일 때, 위치 x 의 밧줄의 높이를 y 라 하고, 셋의 관계를 기호로 쓰면, 그러면 아래의 관계가 성립한다. 이게 무슨말이냐면, 시간 t 일 때 위치 x 의 밧줄의 높이 와 시간 0 일 때 위치 x-vt 의 밧줄의 높이가 같다 는 말인데, 그림으로 보면, 왼쪽은 시간 0, 오른쪽은 시간 t 이고, t 일 때 P 의 높이와 0 일 때 높이가 같다는 것. [020-03] 파동을 식으로 써보자. 아래의 파동을 보자. 지금 내용부터는 사인이든 코사인이든 상관없는데, 위 그림이 사인이니까 아래의 식 으로 쓸 수 있다. A는 진폭이고, 주기, 진동수, 파장 같은 값을 아직 모르니까 a 는 아직 정해지지 않은 값 이다. 일반적으로 알고있는 삼각함수는 가로축이 각도 이지만, 우리는 공간을 진행하고 있는 파동을 다루니까 위의 형태로 써진다고 생각하자. x=0 에서 진폭이 ...