0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

PythonのTkinterで動画視聴管理アプリを作成

Last updated at Posted at 2024-12-12

PythonのTkinterの学習のアウトプットとして、動画視聴管理アプリを作成しました。このプロジェクトでは、Windowsインストーラを初めて作成し、GitHubに公開しています。GitHub Actionsも活用しており、簡単なunittestを実施しました。

GitHub

video_learning_management


作成の目的

YouTubeやUdemyでの学習記録をまとめたいと考えたためです。


主な機能

  • 入力・登録フォーム
  • Excelデータベースへの保存機能
  • SQLite保存機能

使用したツール

  • innoSetup(Windowsインストーラ作成用)

Python環境があれば、データベースはExcelだけでなく、SQLiteも使用可能です。


使用ツールの補足: DB Browser for SQLite

DB Browser for SQLite
SQLite用のGUIツール「DB Browser for SQLite」を活用することで、SQL操作に慣れていない方でも簡単にデータベースを操作できます。


学習したこと

  • フォーム作成
  • Excelへの登録機能実装
  • SQLiteへのデータ保存機能実装
  • アイコン作成
  • 実行ファイル作成
  • innoSetupを使ったWindowsインストーラの作成

アイコン作成

プロジェクトフォルダ内に「ICON」フォルダを作成し、アプリ用のアイコンを作成して保存しました。


実行ファイル作成

pyinstallerを使用して実行ファイルを作成しました。


インストーラ作成

  • 使用ツール: innoSetup
    当初はcx_Freezeを試しましたが、Pythonの依存関係の問題でエラーが発生したため、最終的にinnoSetupを採用しました。innoSetupは依存関係をうまく処理してくれるため便利でしたが、設定には試行錯誤が必要でした。

テスト

  • 簡単なunittestを作成
  • GitHub Actions用のYAMLファイルを作成
  • Windowsインストーラを使用し、アプリをインストールして動作確認

苦労した点

  1. Pythonの依存関係:
    依存関係のエラーで何度も実行ファイルを作成し直す必要がありました。
  2. innoSetupの設定:
    初期設定ではエラーが発生し、フォルダ構成やスクリプトの記述を追加する必要がありました。

今後の課題

  1. 開発フローを覚え、機能を充実させていく。
  2. テスト:
    • Pytestを活用して厳密なテストを行う。
  3. インストーラ:
    • 他のツール(例: cx_Freeze)にも挑戦する。

このプロジェクトを通して、コード作成からテスト、実行ファイル・インストーラ作成、GitHub Actionsまでの一連の流れを学習できました。引き続きスキルアップを目指していきます。

0
1
0

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
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?