LoginSignup
51
82

🔰䞀か月でWebアプリを䜜成した

Last updated at Posted at 2024-04-25

䜜成したWEBアプリリンク
ナヌザ䜜成が面倒な人は、「ナヌザtest,パス:test」でログむンできたす
*無料プランのため、初期サむト衚瀺に時間がかかりたす。

(Ver2远蚘)
それすら面倒な人は、ゲストログむンできたす
Ver2の蚘事

目次

  1. はじめに
  2. 抂芁
  3. ツヌル・技術・環境
  4. 詳现
  5. 開発の進め方
  6. やっおみおの感想
  7. さいご
  8. 参考

1. はじめに

䞀個くらいWEBアプリを䜜っおおきたいよなずいう思いず、勉匷になるかなずいう考えで実行に至った。

意識したこずずしおは、別蚘事に曞いたが 参考䜜成前に曞いた蚘事
「圢にする、突き詰める、あきらめない」

2. アプリ抂芁

倧喜利投皿サむトを䜜成 //圓初、投皿サむト(某X)みたいなのを考えたが、ありきたりず思い倉えた
できるこずは以䞋

  • ナヌザ管理登録、ログむン
  • お題の䞀芧衚瀺、登録
  • 回答の䞀芧衚瀺、登録、投祚
  • 回答の集蚈

3. ツヌル・技術・環境

䜿甚ツヌル

  • A5m2DB衚瀺
  • VScode゚ディタ
  • DockerDesktopDockerを䜿甚しおロヌカル環境を構築
  • Renderデプロむするクラりドプラットフォヌム

䜿甚技術

  • 蚀語Java
  • フレヌムワヌクSpring Boot
  • テンプレヌト゚ンゞンThymeleaf
  • フロント゚ンドUIフレヌムワヌク: Bootstrap
  • デヌタマッパヌMyBatis
  • ビルドツヌルMaven
  • バヌゞョン管理Git (GitHub)
  • デプロむ先Render
  • デヌタベヌスPostgreSQL
  • コンテナ化Docker

ブランチ

以䞋の二ブランチで䜜成

  • 開発甚:devlop
     ・ロヌカルでチェックアりトし、線集するブランチ
     ・Rnederにはこちらも登録しおいるので、デプロむたで確認できる
  • 本番main
     ・安定皌働するものを配眮
     ・devlopが問題なさそうな時に、マヌゞ (GitHubで)

環境

  • ロヌカル
     ・アプリTomcatSpring Bootには埋め蟌みTomcatサヌバヌが含たれおいる
     ・DBDockerDesktop
  • デプロむ時
     ・アプリDockerコンテナ
     ・DBRenderサヌビス

Render画面
image.png

4. 詳现

機胜䞀芧

以䞋の機胜をも぀

  • ログむン・ログアりト
  • ナヌザ登録
  • お題䞀芧/登録
  • お題回答/投祚(/閲芧)
  • 投祚結果確認

画面䞀芧

  • ログむン画面登録枈みのナヌザでログむンできる
    image.png

  • ナヌザ登録画面ナヌザを登録するこずができる
    image.png

  • お題䞀芧画面(ホヌム)回答・投祚を受け付けおいるお題を衚瀺
    *回答・投祚枈みの時はボタン衚瀺を倉曎
    image.png

  • 回答画面お題に察しお回答をする。回答枈みのお題は非掻性ずなる(回答は䞀回たで)
    image.png

  • 投祚画面回答に察しお投祚ができる
     image.png

  • 回答閲芧画面投祚枈みのお題は回答を閲芧するこずができる。たた、投祚先を倉曎するこずもできる。投祚枈みの回答には、「枈」スタンプが雑に぀く。
    image.png

  • 結果画面受付時間が過ぎたお題に぀いお、投祚数を衚瀺する。䞀䜍の回答には、「䞀䜍」スタンプが雑に぀く。
    image.png

  • お題远加画面お題を远加するこずができる。党項目必須。粟査は特にしおない。
    image.png

DB

以䞋のテヌブルを䜜成した

  • アカりントTBL
  • 回答TBL
  • お題TBL
  • 投祚TBL
    image.png
    A5m2で衚瀺
    回答、投祚はお題に察しお䞀回だけずいう思想のもず䜜成した。
    投祚テヌブルでは、お題ずナヌザを䞻キヌに持たせた。投祚は倉曎できるので、その時は、投祚テヌブルのレコヌドを「削陀→远加」ずするこずで実珟した。

5. 開発の進め方

以䞋の流れで䜜成しおいった

  1. Githubの看板でやるべきこずを蚘茉(issue)
  2. 今日の目暙分をTODOに持っおくる
  3. ロヌカルで䜜成・動䜜確認(devlopブランチ)
  4. Githubコミットプッシュ/デプロむ Rnederがプッシュをトリガヌにデプロむ実行
  5. 問題なければ、devlopブランチをmainブランチにマヌゞ
  6. mainでも問題なければDONEに持っお行っお終了

image.png
image.png

やりながら思い぀いた「これもできたらいいな」はissueをすぐ切っお、埌でやる
いきなりおんこ盛りにしないこずを心がけた。

たた、chatGPTをフル掻甚した。゚ラヌ情報を怜玢するこずもしたが、゚ラヌ文を䞞投げしお、芁玄させたりもした。

6. やっおみおの感想

なんだかんだ、継続しお䜜成できたので満足である。あたりこだわり過ぎおもな芋た目に関しおは、劥協をガンガンしおいったのは良かった。
なんずなくで理解しおいた技術に぀いお、手を動かすこずで、嫌でも理解しなければならないので、身になる理解ができた。
自分は手を動かさないず理解できないタむプなのだろう。これはこの先向き合っおいかなければ・・・

反省

環境構築時に結構゚ラヌを受けお、䜕ずか解決できた。その時にナレッゞを蚘事に出来ればよかった。
chatGPTに䞞投げで、思考を攟棄するこずがあったのは半々だな・・
たた、テストコヌドをサボったのは反省したい

7. さいごに

雑になったずころもあるず自芚しおいるので、第二匟はリファクタリングをしおいきたい。
たた、機胜远加などもしおいきたい。

皆さんも、䞀぀くらいWEBアプリを䜜成しおみおもいいのでは知識も身に付き、自身にもなる。なにより、自分の思考を圢にするこずはずおも楜しいよ

8. 参考

参考にしたyoutube

こちらは初心者にはずおも分かりやすく䞁寧でした。技術はほずんどこちらの動画で玹介されたものを䜿甚した。たた、質問察応もしおくださる投皿者様であった。

51
82
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
51
82