#アプリ開発課題
今回の実装ルールと目的
目的
- 10日前後を目安に簡易webアプリを開発する。
- Webアプリケーションの開発する基本部分の理解
- 誰でも開発ができるような構造を心がける。
- レスポンス、リクエスト、データ登録、ファイル出力の部分を理解する。
- バージョン管理ツールの使用方法(クローン、コミット、プッシュ、プルリクエスト)が扱えるようにする。
- アプリケーションのデプロイ方法を知る。
- CICDについて理解をする。
※CICDとは
継続的インテグレーション/継続的デリバリーの略
この内容を一通りできるようになると何が得られるか
- 基本的なWebアプリケーションの仕組みが理解できる。
- SQLなどでデータ操作が理解できる。
- バージョン管理ツールの使用方法が理解できる。
- Linuxでのコマンド操作を少し理解できる。
実装ルール
誰が開発しても似たような実装になるような構造にするため、極力外部のライブラリを使用せずにpythonの標準ライブラリのみを用いて開発をする。
他の言語でのリプレイスやリファクタリングなどの視野を考え、より柔軟により汎用性を考えて開発に臨む。
共通化できる部分やツールは別途作成する。
改めて今回開発する機能について
- アカウント登録機能の実装
- アカウント情報の検索機能の実装
- アカウントの情報ファイル出力処理の実装
- アカウント登録画面
- 検索画面
- ログイン画面
- ログインパスワードハッシュ化(暗号化処理)
余裕があったらしたいこと
- フロント部分をVue.jsなどを利用する。
- pythonにしかできない機能を実装する。
他開発するツールとして
- テーブル作成ツール(DDLツールを作成しテーブル作成を簡易化させるため)
- データ登録ツール(指定したデータベースにcsvファイルを指定してテーブルに登録させるため)
#### 事前準備
- ローカルにpython=3.9.0をインストールしていること
- バージョン管理としてGithubのアカウントを作成していること
- html,css,python,SQL,データ操作言語、マークアップ言語、スクリプト言語をなんとなく理解できていること(全く理解がなくても大丈夫です。)
環境
- MacOs(Windowsでも問題ないです)
Windowだとlinuxが使用できないためPowershellもしくはコマンドプロンプトになります。
使用する開発言語
バックエンド:python
フロントエンド:Vue.js(余裕があれば)
データベース:sqlite3(python標準ライブラリでインストール不要なため)
開発の大まかな流れについて
①ローカルにpythonで仮想環境を構築
②仮想環境内にメインのディレクトリを構築
③②で作成した環境下で開発
④②で作成したディレクトリがGithub上でのリポジトリとして扱うこととする
進捗
- ログイン画面 (済)
- アカウントの情報ファイル出力処理の実装 (済)
- アカウント登録画面 (済)
- 検索画面 (済)
- 簡易的な画面設計書 (済)
- テーブル作成ツール (済)
- データ登録ツール (済)
- アカウント登録機能の実装 (済)
- アカウント情報の検索機能の実装 (済)
- パスワードハッシュ化処理(済)
スケジュール感覚
以下の内容を実施した後の完成イメージ
→ https://qiita.com/noss08327439/private/b6c3db2d271c6c1ea92f
1日目:仮想環境構築、簡単な設計、テーブル作成ツール開発、データ登録ツール開発
→ https://qiita.com/noss08327439/private/5bcc9e81650236f944ba
2日目:htmlで画面作成(アカウント登録画面、検索画面)
→ https://qiita.com/noss08327439/private/d03371bbd4a09cc3fcda
3日目:アカウント登録画面とバックエンドの紐付け
→ 実施内容取りまとめ中
4日目:検索画面とバックエンドの紐付け
→ 実施内容取りまとめ中(開発済み)
5日目:動作確認
→ 実施内容取りまとめ中(開発済み)
6日目:ログイン画面作成
→ 実施内容取りまとめ中(開発済み)
7日目:ログイン処理実装、動作確認
→ 実施内容取りまとめ中(開発済み)
8日目:総合動作確認&Herokuでのデプロイ
→ 実施内容取りまとめ中(開発済み)
9日目:バッファ
10日目:バッファ
P.S
開発状況は随時こちらに記載していくので参考にしてください。
以下のURLにて開発状況を適宜更新しています。
https://github.com/nosscafe66/noss/tree/main/Dev/Kadai