どんなwebアプリかというと、フレームワークに沿って、アイデアを作ったり、目標を設定したりするwebアプリです。
ブログの文章の筋書きなんかを決めるのにも役立つので、ぜひ使ってみてください!
webアプリを作った理由
webアプリを作ったのですが、そもそもプログラミングができたわけではありません。
webアプリを作るにあたって、1からPythonというプログラミング言語を勉強しました。
勉強開始からwebアプリの発表まで、約3ヶ月ほどかかっています。
Pythonを覚えるだけならば、意外とすぐ覚えられるのですが、webアプリになると覚えることが爆増します。
今回のwebアプリ制作にあたって、必要になった知識を一覧にすると、こんな感じ
- HTML
- CSS
- データベース
- Django
- Python
- Linux
どんな感じで勉強していったのか、話しますと…
プログラミング勉強 1ヶ月目
僕がPythonの勉強を始めたのは、2021年初頭です。2021年の抱負として、プログラミングを覚えるというのを目標にし、勉強を開始し始めました。
初めは「そもそもPythonとはなんぞや?』ってところから入ったので、理解を深めるために本を読んでみました。『Python1年生』なんかが非常に分かりやすかったです。
その次に、Pythonの構文を勉強し始めました。ただ、Pythonの構文はそこまで難しくないので、初心者レベルであれば、2週間あれば到達できると思います。
僕は、Pythonの勉強を2週間した後、Pythonで何がしたいのか考えて、スクレイピング(webブラウジング自動化)などの初歩的な部分を練習してみたりしました。
Pythonの勉強に使っていた教材は、主にYoutubeです。「はやたす」さんのPython文法解説が非常に分かりやすかったのでおすすめ。
https://www.youtube.com/watch?v=MRotgsk5SPM&list=PL4Y-mUWLK2t2rISQza73yNiz6_8HTaQiY
スクレイピングについては深追いせず、プログラミング勉強1ヶ月目は、ブラウザでPythonを動かせるサービス『Google Colaboratory』なんかを使って、簡単な計算をすることができるようになりました。
1ヶ月目の最後に、Pythonで何をしたいのか精査した結果、結局プラグラミングをした結果を世界に発表したいと思い、2ヶ月目の目標をwebアプリの学習に定めます。
Pythonには、webアプリ系の開発ライブラリがいくつかあって…
- Django
- Flask
- Bottle
- Tornado
- web2Py
なんかがあるんですが、その中から特徴と学びやすさから、Djangoを選択しました。というのも、Djangoは非常に機能が豊富で、ログインやデータベースなど、様々な機能がすでに備わっているから。
ということで、Pythonのライブラリである、Djangoの学習が始まりました。
プログラミング勉強 2ヶ月目
プログラミング学習2ヶ月目の目標は、webアプリ作成フレームワークであるDjangoの習得です。
Djangoとは、web制作で必要な機能を簡単に実装できるように作られたフレームワークで、Python言語を使って動いています。
YoutubeやInstagramなどは、Djangoを使って作られていると言われており、大規模な開発でも対応できる作りになっています。そのかわり、習得難易度は少し高め。
ですが、学習難易度少し高めということもあり、なかなか理解が進みませんでした。というのも、Youtube動画では、こういう作業が必要なんだよと教えてくれる動画は沢山あるのですが、どういった理由でその作業をするのかを説明している動画があまり無かったんですよね。
ということで、勉強方法を試行錯誤して、Udemyを活用することになりました。Udemyは、有料動画教材を販売しているサイトでプログラミング系の教材はかなり在庫が揃っています。
UdemyでDjangoを検索すると、かなりの数の教材がヒットするのですが、色々な教材を試してみて、オススメだったのがこの講座
Djangoの概要から学び、3つのアプリを作る中でフレームワークに対する理解を深めることができます。最後はVPSを使って…
この講座は、Djangoの内部処理の概念から教えてくれるので、理解が進み、結果的に深い理解ができるようになります。
あと動画が見れない電車内とかでは、本を活用して勉強していました。Djangoの理解に役立つおすすめの本は、これです。
Udemyの講座を勉強した結果、2ヶ月目の最後には、自分で簡単なSNSを作成することができました。参考にリンクを貼っておきます。
すごいサイトでは無いですが。自分で内部処理を組み上げたサイトが世に出回っているというのは、感動しました。
正直、Twitterなんかも、このレベルの処理がデッカくなったという感じで、内部の処理で難しいことをしているわけではないので、あとは発想と根気があれば、何とかなるでしょう。
2ヶ月目では、自分のサイトをサーバーに実装(デプロイ)するところまで、進みました。
プログラミング勉強 3ヶ月目
Python学習3ヶ月目では、Djangoの理解のためにもう一つサイトを作ってみることにしました。
そこで、どんなwebアプリにするか、発想が浮かんで来ずに悩んだのですが、こういったどんなwebアプリを作るかという悩みを解決するwebアプリを作ればいいじゃんと思いつき、アイデア作成webアプリを作ることに。
ということで、とりあえずどんなwebアプリにするか、UIから考えてみることにしました。
最終的な見た目と、わりかし近いところに落ち着いていますね。このUIを試作したアプリケーションは、AdobeのXDで、PowerPointのような感じでサイトのUIを試作することができます。
ということで3ヶ月目では、Djangoのより深い理解(1対多のリレーションなど)と、フロントエンドと言われるHTML とCSSを勉強し、フレームワーカーというwebアプリを作りました。
3ヶ月勉強すれば、こんな感じのサイトが作れますので、みなさま参考にして下さい!!!
まとめと今後の展望
webアプリを作ってみたいなと思っている人は、プログラミング初心者でもこれくらいのものが作れるんだという指針になるような記事を書いてみました。
プログラミングをやってみて思ったのは、正直プログラミングって簡単だなということ。というのもプログラミングって、すでに人が作った有能なライブラリが出揃っていて、自分でロジックを組み上げていく必要がほとんどありません。
ということで、プログラミングを始めてみたいという方は楽な気持ちで初めてみるのが良いと思います!
僕は、webアプリの作り方というのが、一通りわかったので、今後はより難しいことをwebアプリで実装していきたいと考えています。例えばAIとか。
AIを勉強したからといって、こらからの時代それだけで強みになるとは思えないので、そのAIを何に使うのか考えていかねばというところですね。
よかったら、プログラミング勉強3ヶ月目の初心者が作ったサイトを見ていってください。