Project PERION
当プロジェクトは「PERION」といったメンズファッション通販サイトです。
通販サイトを選定した理由としては、CRUD, session, ファイル処理、マークアップなどITスクールで学習したものを活かすことができ、
「基本に充実する」といった共通の目的に一致したためです。
PERIONは韓国のMMORPGに登場する戦士の村で、「戦士のように、強い気持ちで生きていきたい」といった気持ちを込め、名付けました。
全体目次
プロジェクト概要
プロジェクト説明
※プロジェクトの詳しい説明と過程につきましてはこちらより
ページの日本語はGoogle翻訳を使って臨時的に翻訳しております。
フロントエンド
商品詳細 |
カート |
![](https://github.com/HyonHyonKOR/team-project/assets/134394081/5bada663-7fbd-47e7-8e1f-ea348bff3071) |
![](https://github.com/HyonHyonKOR/team-project/assets/134394081/af7a73e7-40f4-4a23-8f17-f6f53eea2831) |
JavaScriptのfetch、JSON、SpringBootの@ResponseBodyアノテーションなどを活用し、カートを具象しました。
カートページは翻訳機を使う場合、レイアウトが崩れたため、そのまま展示しました。ご了承いただければと思います。
+ Rendering
1. Indexの5000x3000、4mb以上のJPEG画像を約1900x1000までリサイズし、webpに変換することでレンダリング速度を改善しました。
2. 通販サイトの場合、SEO対策が重要であるため、Metaタグを活用しました。
3. 一部のscriptにdeferを適用し、htmlのparsingを改善する努力をしました。
4. 一部のjsにEvent Delegation通して、不要なEvent Handlerを減らす努力をしました。
## バックエンド
+ 商品関連
商品登録(管理者) |
商品詳細・修正・削除(管理者) |
商品リスト一覧(ユーザー) |
商品詳細(ユーザー) |
![](https://github.com/HyonHyonKOR/team-project/assets/134394081/ed3802b5-4154-4600-bb50-f3b1a623ee7b) |
![](https://github.com/HyonHyonKOR/team-project/assets/134394081/d157e335-693b-4d75-97ef-98ba8efe78f5) |
![](https://github.com/HyonHyonKOR/team-project/assets/134394081/615c5401-a8ac-428e-ae48-5ef80bd59336) |
![](https://github.com/HyonHyonKOR/team-project/assets/134394081/5bada663-7fbd-47e7-8e1f-ea348bff3071) |
管理者ページから商品・写真・在庫などをDB、resourceフォルダーに登録し、クライアントページからそのデーターを読む形です。
+ 注文
会員注文ページ |
会員注文ページ |
会員注文ページ |
会員注文完了ページ |
![](https://github.com/HyonHyonKOR/team-project/assets/134394081/c87ca19e-c70c-4eab-abeb-6b3c9467621f) |
![](https://github.com/HyonHyonKOR/team-project/assets/134394081/62e3c23d-53e0-407b-821b-d5faf677370e) |
![](https://github.com/HyonHyonKOR/team-project/assets/134394081/df9c0645-97ad-400a-8f44-d4d159dd3616) |
![](https://github.com/HyonHyonKOR/team-project/assets/134394081/5bada663-7fbd-47e7-8e1f-ea348bff3071) |
+ 管理者ページ
売上はペンディング、非会員注文一覧はまだ、バグの問題で紹介することはできませんでした。まだ原因が分からないため、後ほど解決したいと思います。
+ 認証(Spring Interceptor)
未認証ユーザーの要請は会員ログインページに、権限があい会員の要請は404エラーページをリターンして、認証を強化しました。
権限外の要請がある場合は、log4jを通して、WARNログを残すようにコードを作成しました。
解決できなかった点:一部のページではInterceptorが適用されない現象があるので、今後改善してみたいと思います。
## リファクタリング
- 近いうちにAWSへのdeployを計画中
- 会員登録機能にAJAXを追加し、フロントエンドからもバリデーションチェックを追加
- ページ処理のバグを改善する予定
## 参考資料
- 商品写真360枚: https://www.coor.kr/
- インデックスページのイメージ: https://unsplash.com/ko
- ロゴ: https://www.figma.com/
- Kakao Map API, Kakao アドレスAPI : https://developers.kakao.com/
- Sweetalert2: https://sweetalert2.github.io/
- SVGおよびフォント: https://fonts.google.com/