m0er / raptoz Goto Github PK
View Code? Open in Web Editor NEW사용자들의 필요에 따라 동적으로 생성되고 없어지는 다이내믹 카페. Raptoz.
사용자들의 필요에 따라 동적으로 생성되고 없어지는 다이내믹 카페. Raptoz.
Tag 입력할 때 AutoComplete 기능 추가.
차후에 컴포넌트화 시킬 때, /autocomplete/{collectionName}/{userInput} 식으로 API 설계하면 괜찮을듯.
Generic 사용하지 않고 피드 받아야 하는 것들을 특정 몽고 DB 컬렉션에 담아놨다가 notification 으로 보여주고, 사용자가 보거나 지우면 제거하는 식으로 개선.
후다닥 끝내자 ㅋ
토즈를 준카페로 바라본다면, 카페는 쓰레드처럼 구체적인 이름을 가지지 않기 때문에 이름 검색만으로 충분하다고 생각됨.
자신의 MyPage에 들어갔을 때, Edit 버튼을 눌러 자신의 정보를 수정할 수 있는 뷰 추가.
Toz -> Post
기능 추가 (내가 쓴 전체 Post 최신 순으로 정렬)
사용자간 메세지를 보내고 자신의 인박스에서 볼 수 있는 기능 필요.
Post 클릭 했을 때 조회수 업데이트를 해야함.
새로운 컨텐츠(포스트, 커멘트 등)에 대한 푸싱 기능 필요.
Vert.x 적용으로 푸시 해결하자. (헤로쿠에서도 사용 가능!)
#1 이건 좀 쉬움 ㅋ
waterdrop 브랜치로 가기 위한 첫 걸음.
DAO쪽 만들고 테스트 하는데 시간이 너무 오래 걸림.
기존에 컨트롤러 정도만 만들어 둠. 마저 완성해야함.
Repository 쪽은 정리됐고. 이제 컨트롤러, 서비스, 뷰 하나하나씩 바꿔야 함.
생각해보니 너무 커스텀 스타일이 많음. 최대한 Bootstrap 이용해서 css를 줄여야 컴포넌트 만들기도 쉬워질듯.
SELECT 쪽에 특화된 QueryDSL 도입 살펴보기.
포스트에 태그를 추가할 수 있는데 관리 할 수가 없음.
포스트 수정 페이지에서 태그 수정을 할 수 있도록 해야함.
list 페이지의 Post 리스팅 할 때 사용하는 핀터레스트 스타일 레이아웃을 jQuery 플러그인으로 변경해서 재사용하기 쉽게 만듬.
현재 버전의 가벼운(light) 랩토즈와 동적 카페 모양새의 물방울(waterdrop) 랩토즈를 각각의 브랜치로 분리.
admin으로 로그인 했는데 user46 번으로 글 써지는 현상 알아보기
http://dribbble.com/session/new
https://www.thefancy.com/login
여기 참고해서 만들면 괜찮을 것 같아!
Ember.js 도입해서 아키텍처를 개선해보자.
mypage mongodb 기반 server, view 코드 작업
현재는 CR 까지만 구현돼 있음. UD 관련된 뷰가 필요.
또한, C 할 때 Tag 넣는 폼이 없고 컨텐츠 작성 폼이 Textarea가 아님.
Spring Data MongoDB 기반으로 검색 및 리스팅 가능하도록 수정해야 함.
차후 모바일 환경을 고려해 Ember.js 같은 MV* 프레임워크를 도입하고 REST API 스타일로 교체하자. 클라이언트 단에선 왠만하면 JSON만 핸들링 하도록 하자.
list 페이지에 현재 아무 컨텐츠도 출력하지 않고 있음.
Heroku에 올려보자~
Post 모달 레이어를 만들 때 Reply가 하나도 추가돼지 않은 상태에서 레이어를 만들고, 후에 Reply를 추가함.
모달 레이어를 만들 때 Reply가 하나도 없는 사이즈 기준으로 위치되기 때문에 Reply가 많아지면 레이어가
화면 하단에 위치하는 버그가 있음.
뷰에서 원하는 데이터 모양이 다를 수 있으나 서버단에선 List 형태로 값만 던져주는 형태로 개발.
현재 마이페이지 레이아웃이 아직 화정되지 않았음. 레이아웃과 컨텐츠를 확정해야 함.
또한, 내가 보는 마이페이지와 남이 보는 나의 마이페이지도 고민해 봐야함.
JSR303 빈 밸리데이션 추가. (http://docs.oracle.com/javaee/6/tutorial/doc/gircz.html)
클라이언트부터 서버단까지 일관성있게 가자(http://blog.springsource.org/2012/08/29/integrating-spring-mvc-with-jquery-for-validation-rules/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+SpringSourceTeamBlog+%28SpringSource_Team_Blog%29)
Post 작성할 때..
토즈를 가벼움(light) 브랜치의 쓰레드가 아닌 물방울(waterdrop) 브랜치의 준카페 개념으로 바라봤을 때,
토즈가 다른 토즈를 포함할 수 있어야 하므로 새로운 UI가 필요함.
마이그레이션 전에는 DB에서 Post, Reply를 몇 개 가져와서 정렬한 후 보여주는 식이었는데, 나중에 피드 줄 것 고려해서 아예 Activity라는 도메인을 새로 만들생각.
지금 어느정도 구현은 해놨는데 대략 방식이.. FootPrintable 인터페이스를 '활동내역'에 포함시킬 도메인(현재는 Post, Reply)에 구현한 뒤, Activity<? extends FootPrintable> 도메인 객체를 Post, Reply가 저장될 때 DB에 저장.
Activity 도메인에는 사용자 정보, 생성 시간, 뷰에 보여줄 텍스트, 그리고 실제 컨텐츠 객체(Post, Reply...)를 필드로 가짐.
list 페이지에 있는 최근 사용자 활동 내역에서 보여줘도 될 것 같고, 아직 기획에는 없지만 친구 팔로잉이나 내가 속한 토즈 또는 내가 참여한 Post가 업데이트 되면 피드로 써도 괜찮을 듯.
혹시 더 괜찮은 아이디어 있으면 피드백 줘~
로그인 및 회원가입 할 때 예외처리 필요.
Spring Security 적용해보자
화면에 동적으로 컨텐츠를 추가하기 위해선 Ajax로 가져온 데이터를 파싱해서 각각의 DOM을 만들고 추가해 줘야 하는데, JSP Tag를 사용해봐야 JS로 값 세팅하는 부분이 꽤 만만찮음.
다음 템플릿 엔진 사용을 고려해보자:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.