百名山 API を開発しました | mountix APICLICK !

おすすめの学習教材 – Python / Django 編

  • URLをコピーしました!

おすすめのプログラミング学習教材を紹介します!企画の第二弾Python / Django編です。

目次

Python / Djangoのおすすめ学習教材を紹介!

WebアプリのAPIサーバをPythonで実装したいと考えた筆者が、業務では触れたことのないPython、そしてDjangoDjango REST frameworkを学ぶために利用したプログラミング学習教材を厳選して紹介します。

コース選びのご参考になれば幸いです〜

Python is なに? Django is なに?

Python

機械学習分野のデファクトスタンダード、言わずと知れた人気言語Python

Stack Overflow Developer Survey 2021 でも、様々なランキングで上位に食い込んでいます。

何か自動化したいなと思った時、ライブラリが充実いるためサクッと実装できます。

こんなことしたいなと思って調べるとすぐに便利なライブラリが見つかります!

インタプリタ言語でコンパイルも不要で手軽に実行できる点もありがたいポイントです。

また、優秀なWebフレームワークが存在するため、Webアプリ作成でもPythonは活用されています。

これ以上の説明は省略しますので、ぜひ学習教材で学んでください笑

日本におけるWebアプリ開発で使われる言語

日本でのPythonを使ったWebアプリ開発を行っている会社は多くありません。

転職活動で様々な企業を調べましたが、
Pythonを採用したWebアプリを開発している企業は少なかったというのが本音です。

やはり、日本ではJavaRubyPHP、(東京に限定するなら?)Goといったところが多い印象です。

Django

Django(ジャンゴ)はPython用のフルスタックWebアプリケーションフレームワークです。

Djangoの特徴

  • フルスタックで便利な機能が盛り沢山
  • セキュリティ的に安全な設計
  • ORMでDB操作がSQLの記述なしで可能

実際に開発する開発効率の高さが分かります。

DBのテーブル定義を記述すれば、マイグレーション機能でコマンドを打つだけでDBに反映することが可能です。

また、管理者サイトも最初から備わっているのでデータを登録・更新することが可能です。

わざわざ管理者サイトを実装する必要がないので、これは非常に便利です。

Django REST framework

RESTfulなWebAPIを構築するためのライブラリです。

DjangoでREST APIを構築するなら、これがベストでしょう。

略してDRFと言われることもあります。

APIを1から構築となるとなかなかの作業ですが、DRFを使えばあっという間にAPIが構築できます。

また、APIエンドポイントのURLをWebブラウザで表示するとコンソール画面が表示され、実装したAPIをすぐに試すことができます。

これもまた、開発効率が上がる嬉しい機能です!


それでは、学習教材を紹介していきます。

【厳選】Pythonの学習教材

現役シリコンバレーエンジニアが教えるPython 3 入門 + 応用 +アメリカのシリコンバレー流コードスタイル

おすすめポイント

  • 十分すぎるボリューム、28.5時間!
  • 基礎から応用まで学べる
  • コードスタイル、実践的なコードの書き方まで分かる

ここには注意

  • 後半の応用編は難易度が高め
  • 初学者に難しい部分の説明が少ない箇所あり
zuno

業務では触ったことのないPythonが勉強したい… !

いつもと違う言語を触りたい…、そうだ、Pythonを勉強しよう!と
考えているエンジニアにおすすめしたいのがこのコースです。

本場シリコンバレーでご活躍されているエンジニアが講師です。

基礎から応用まで

このコースは、基礎から応用まで網羅されている圧倒的なボリュームです!

基礎で学んだことを応用で使うこともでき、良い基礎の復習にもなります。

これがセール時に購入すれば2,000円もしないとは驚きです。
(正確には覚えていませんが、1,700円ほどで購入した記憶があります)

他の講義を見ても、20時間超えはなかなかありません。

コードスタイルの講義がある

コードスタイルに関するレクチャーのセクションがあります。

Pythonの特徴に、コードの可読性の高さがあります。

誰が書いても同じような書き方になって、読みやすいと言われています。

コードスタイルを学習すれば、Pythonの良さを最大限に生かすことができます。

このセクション以外でも、現場ではこのように書きますなどの説明もあり、非常に実践的なレクチャーが受けられます。

リーダブルなコードを書くことは非常に重要なことだと思いますので、そういった意識を受け付けてくれる点も素晴らしいと思います。

応用編は難易度高め

コースの後半になるにつれて、だんだんと難易度が高くなっていきます。

詳しい説明がなく、パッとコードを書いて終わる箇所もあり
動画を巻き戻して… 調べて… みたいに進める必要がある場合もありました。

何かしらの言語を学習済みのPython初学者であれば問題ないですが、
プログラミング学習が初めてでPythonを触るというプログラミング初学者は
難しいと感じるところもありそうです。

Python初学者で、プログラミングそのものも初学者という方は注意が必要です。

応用編については、全て学習する必要があるわけではないので
必要になったタイミングでそのセクションを受講するという形でも
良いかなと思います。

【厳選】Django & DRFの学習教材

【徹底的に解説!】Djangoの基礎をマスターして、3つのアプリを作ろう!(Django2版 / 3版を同時公開中です)

おすすめポイント

  • Djangoの基礎が学べる
  • Django 2版と3版を同時公開中(2021/8/29 時点)
  • Webアプリ公開までレクチャーがある

ここには注意

  • 変数名にマジックナンバーが使われている
  • 今から学習する場合は、Django 3版のみで良い
zuno

Djangoか、Flaskか… どっちにしよう。

PythonのWebアプリケーションフレームワークは
ルスタックなDjango、手軽なマイクロフレームワークなFlaskの2択でした。

今なら、Fast APIを採用するかもしれませんが…

ドキュメント量ではDjangoが有利かなと思ったり、
もし仮にPythonで仕事をするとなるとDjangoになるかなと思ったり。
(実際にはPythonで仕事はしてません笑)

まぁフルスタックな方が何かと便利かなと思い、Djangoを採用した次第です。

Djangoの基礎が学べる

Djangoの基礎がざっと学べます。

フレームワークを使わなくても、Webアプリは開発できます。
では、なぜフレームワークを採用するのか?

様々な理由があると思いますが、
以下のような理由が多いように思います。

これからウェブサイトを作っていこうと考えている人にとって、Djangoのようなフレームワークを学ぶことは非常に有意義だと考えています。なぜなら、Djangoを学ぶことで、ウェブサイトを作る上での効率が非常に上がるからです。

Udemy

また、個人的には
面倒な作業をフレームワークが良い感じにしてくれるという恩恵は大きいです。

ブラックボックス化してしまうという面もありますが、
先人達の知恵は借りるべきところでは借りた方が無難です笑

メンテナンスされている

Django 2版と3版を同時公開中(2021/8/29 時点)です。

Webアプリ開発を取り巻く環境は日々進化しています。
もちろん、Djangoも例外ではありません。

Djangoは2020年にバージョンが3にアップデートされました。

このコースが公開されたのが2019年3月ということもあり、
バージョンが2での教材でしたが、バージョンが3の動画も収録してくれています。

別コースではなく、同じコースでバージョンアップにまで対応してくれています。
書籍の教材ではあり得ないことです。

動画を公開して終わりではなく、メンテナンスしてくださっている。
信頼に足る講師であると言えます。

古いバージョンを学ぶべきか?

Django2系の製品を保守することになった等の特別な理由がない限り、
古いバージョンを学ぶ理由はないと思います。

変数名には注意!

変数名がう〜ん、イマイチだなと思うところがありました。

user_name1 = 'taro'
user_name2 = 'jiro'

これはマジックナンバーとも言われ、
アンチパターン(やってはいけない例)でよく出てきます。

変数名に出てくる1と2の意味が実装した人間しか分からないのです。

sender_name = 'taro'
receiver_name = 'jiro'

こう書かれていれば、
メールか何かの送信したユーザと受信したユーザかな?とある程度、予測がつきます。

コースの目的が「Djangoを理解する」ことなので、
プログラミングの実装のノウハウを教えることは範囲外と言われれば
そうではあります。

しかし、あえてアンチパターンで変数名を定義する必要はないでしょう。

[JIRA編]React Hooks/TypeScript + Django REST APIで作るオリジナルJIRA

おすすめポイント

  • DRFが学べる
  • Reactも同時に学べてしまう!
  • おまけセクションがAWS EC2へのデプロイ

ここには注意

  • どちらかと言うとReactに比重を置いた教材
  • DRFの細かい部分は不足ぎみ
zuno

DjangoではREST APIサーバを構築したいんだよねぇ

DjangoでREST APIなら、DRF1択かな!

DRFとReact

技術スタックが自分にとって最高にマッチしたコースでした。

DRFの基本を学ぶことができ、
簡単なAPIサーバの構築まで行うことができます。

AWS EC2へのデプロイまで

おまけでDRFで実装したAPIをAWS EC2へのデプロイするというセクションがあります。

AWSの勉強にもなるため、これがおまけとは…

おまけなので、原則Q&A対象外です。(助けてくれるみたいです、優しい!)

おまけSectionは基本Q&A対象外となりますが、
どうしてもエラーで詰まってしまった場合などはサポート可能です。

Udemy

React学習よりなコースかも?

コースの時間配分的にも、
ReactおよびRedux ToolKitのレクチャーが長いです。

APIしか開発しないのよ、という方には少し不向きかもしれません。

フロントエンド開発の知識が必要になるため、
このコースの要件にも含まれている以下のコースを事前に受講しておくと良いでしょう。

まとめ

今回紹介した学習教材は、私が転職用のポートフォリオを作成するための学習に使用したものです。

Pythonを実務で使う機会は、まだ得られていませんが…

負荷テストで大量のユーザーが必要になったときにインポート用のユーザーCSVを作るなど、サクッと何かしたい時にPythonを活用しています。

習得難易度も低いと言われるPython。

DjangoやDRFまでとは言わずとも、Python基礎までは学んでおいて損はないと思います!

著:大高 隆
¥3,366 (2022/10/06 01:42時点 | Amazon調べ)

この記事が気に入ったら
フォローしてね!

  • URLをコピーしました!

コメント

コメントする

目次