1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

頭文字を打つだけで文章ができていくアプリケーションを作る

Last updated at Posted at 2021-03-24

できたもの

まずはできたものがこちら。
ソースコード:https://github.com/lake429c/InfiniteMonkeyTheorem
InfiniteMonkeyTheoremDemo.gif

概要

標準出力・標準入力を利用するコンソールアプリケーション。
ひらがな一文字を入力すると、その文字から始まる単語と助詞・句読点が挿入されていく。
終了する際は「おわり」と入力。
Javaで作成。

  • Java SE 11
  • MySQL 8.0.23

製作時間 3時間半。
フローは以下の通り。
Untitled Diagram.png

製作過程

「頭文字を打つだけで文章ができていくアプリケーション」という構想はできていたので、まず必要な素材を集める。
日本語の語彙に関する辞書をここから入手。
分類語彙表-増補改訂版データベース コーパス開発センター -Center for corpus development-
CSV形式のテキストファイルなので、MySQLに取り込む。
文字コードはShift-JIS。
参考:http://blog.chatlune.jp/2018/03/01/mysql-import-csv/
テーブルを作るまでに問題発生。
ローカルファイルからインポートする機能がセキュリティの観点から無効になっていたので有効にする(クライアントとサーバーの両方で)
参考:https://mita2db.hateblo.jp/entry/2020/01/13/163218

Database:JP_Vocabulary
Table:bunruidb
が作成できた。
ここまで1時間。

プログラミングに入る。
1時間45分くらいで基本的な要素は完成。
残り気になる点は
・句読点と助詞の出現確率の調整
・ひらがな以外が入力されたときの処理

ひらがなであるかのチェック
参考:https://memo.morelents.com/java-kana-check/
45分くらいで単体テストも含め完成。

感想

素材の準備・調査・テストケース作成も含めているとはいえ、これくらいの開発でこの作業速度は遅い。
アプリの開発以外の部分(MySQLやJUnitの使い方)に時間がかかっていた印象なので、そこはある程度覚えるべきと感じた。
またテストケースの作り方が甘いと個人的には思う、要勉強。
参考:https://yamakisso.hatenablog.com/entry/2018/11/29/055324

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?