LoginSignup
8
1

More than 3 years have passed since last update.

プログラミング初心者がFlaskとSQLAlchemyで開発してHerokuにデプロイしてみた。

Posted at

初投稿です。

少し前にバズった記事、

を読ませていただいて、「Progateを一度やった程度の初心者」という言葉に励まされて、僕もFlaskを学んで見ました。製作期間は1週間ほど。

結果出来上がったものがコレになります。

端的に言うと、自分の持っているものをリスト化してみようっていうものです。ミニマリストとか断捨離する人向け。断舎離したものも表示できるので捨てたものを思い出すために使うのにもいいかなって思ったり。作ってるときは「すごいのができるぞー」と思っていたんですが完成したらしょぼいなこれ誰が使うんだよ……。(自分すら使ってない)

今回はHerokuにデプロイまで実践してみるのが目的なので、これで許してください。

学習に使用したサイトなど

Flaskチュートリアル

ほぼこのサイトからコードを流用したり、コピペしたりさせていただきました。多少記述が古かったりしましたが、ググれば出てくるので問題なし。Herokuへのデプロイはエラーが出まくったので参考にならなかったかもしれない。

Paiza Flask入門

唯一Flaskが学べるプログラミング学習サービスだと思います。ProgateやドットインストールにはFlaskがないので。

簡潔でわかりやすい講座だったと思います。FlaskチュートリアルにはないSQLAlchemyのデータベースの連結についても解説されています。あと声が可愛い(重要)。最初の2ヶ月分が1ヶ月分の料金で利用できます。

Pycharm Professional

IDEは初めて触ったのですが、非常に優れていると思いました。Google Chromeとこれだけ立ち上げれば開発できるので初心者に優しいと思います。学生はプロフェッショナルが無料で使えるのでぜひ使いましょう。

感想:意外と簡単?

とりあえず完成させるのは意外と難しくない、というのが最初の感想です。Flaskは上記の記事にも書かれている通り、優れたチュートリアルがありますし、Hello Worldするだけなら一瞬です。プログラミング学習している人はProgateなどの学習サイトを何周もするよりも、一旦作ってみるのがいいと思います。自分で作ったものが動くのは最高に気持ちいです。

ただ、何がなんだかわからないまま写経したり、よくわからないけど動くって部分が多数あるのでやっぱりきちんと学ぶには時間が足りていないなと感じます。

そして、Flaskはやっぱり日本語情報が少ないです。参考書はほぼなく、Teratailや個人のブログ、Qiitaなどを参考に作りました。ときにはStack Overflowの英文も頑張って読みました。英語は雑魚なのですが、意外と簡単な英語で書かれているし、コードのみを見ても参考になるので食わず嫌いは良くないと思いました。とくにこだわりがないのなら初めてはRailsがいいのかなってやっぱり思いました。

あと最後にちょこっと触れたGitが全くわからなかったのでやらねばという気持ち。addしてpushしただけ。なんだブランチとマスターって(困惑)

次にやろうと思うこと

Djangoで開発してみたいです。Flaskではログイン処理がうまく理解できておらず、ユーザーを削除したらログアウトさせる処理が書けませんでした。なのでユーザー削除機能は実装しませんでした()Djangoならそのあたりいい感じにしてくれそうなので。

あと、Gitの基礎的なことはわかるようにしたいです。

おわりに

プログラミング苦しいけど楽しい!多分これからも苦しんで苦しんで、ちょっとだけ楽しくなるのを繰り返していくのだと思います。

あと、最初から最後まで一人でやってみて、情報の取捨選択とかコード改変技術とか、自走力のようなものがついた気がしました。これからもがんばります。

それと、これからはQiitaで開発日記を書いていこうと思います。いかに短い記事であろうとエラーの解決につながると気づいたので。偉大なる先人の知恵…!

プログラミング初心者の人へ。
Twitterにいるエンジニアはつよい人ばっかりなので絶望しそうになりますが、僕のようなよくわからんモノを公開してしまう人間もいるので気を確かに持って一緒に頑張りましょう。

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