4.40 (12137 reviews)
☑ Python3の基本の習得できます。
☑ 応用編の講義もありますので、簡単なアプリケーション開発に必要なスキルを習得できます。
☑ Pythonicなコードのスタイルを身に付けることができます。
このコースでは、Python3の基礎である入門コースを一通り終えた後に、今後のアプリケーション開発に役立つためのPythonのテクニックやデーターベースアクセス(SQLite, MySQL, MongoDB, SQLAlchemy, memcached, Hbase, neo4j etc)、WEB(Flask, socket, RPC etc)、インフラ自動化(Fabric, Ansible)、並列化(スレッド、マルチプロセス)、テスト(Unittest, pytest, Tox, Selenium, etc)、暗号化(pycrypto, hashlib)、グラフィック(turtle, Tkinter)、データ解析(numpy, pandas, matplotlib, scikit-learn), キューイングシステム(ZeroMQ, Celery)、非同期処理(asyncio)などのPythonを使った応用編を取り入れております。
また、Pythonのコードをただ書いて、プログラムが動けば良いというだけではなく、コードスタイルに関しても言及しております。pythonicにと言われるように、PythonはPythonらしく綺麗でわかりやすいコードを書くことが大切です。
私が10年以上勤務しているアメリカのシリコンバレーのIT企業ですが、どの企業にも世界の多くの国から、良いプログラマーが集まってきます。そのため、他の国から来た異文化の人がコードを読んでも理解できるように綺麗に書かなければなりません。
日本では、他の人にはわからない難しいコードが書ける人が素晴らしいプログラマーだとされる傾向がありますが、シリコンバレーでは、いかに綺麗にわかりやすいコードを書けるかが重要となって来ております。アメリカでは、解雇や転職などの機会も多く、コードは常に誰か新しいメンバーが入って来てもすぐにわかるようにしなければならないため、他の人にわかりにくいコードを書くブログラマーは解雇対象となってしまいます。
まずは、Pythonの基礎を学んで、アプリケーション開発の際には、コードスタイルに気をつけて、Pythonicなコードが書けるように目指しましょう。
皆様の今後のご活躍にお役に立てるようなコースとなれば幸いです。それでは、今後の皆様のご活躍を祈っております。
ここから開始しましょう。
はじめに
アメリカ本社のUdemyオフィスに遊びに行ってきました
講義の話すスピードを変更したい場合
Python環境の設定
MacにPythonをインストールする
MacにPycharmをインストールする
WindowsにPythonをインストールする
WindowsにPycharmをインストールをする
Pythonの基本
変数宣言
まずはprintで出力
数値
文字列
文字列のインデックスとスライス
文字のメソッド
文字の代入
f-strings
データー構造
リスト型
リストの操作
リストのメソッド
リストのコピー
リストの使い所
タプル型
タプルのアンパッキング
タプルの使い所
辞書型
辞書型のメソッド
辞書のコピー
辞書の使い所
集合型
集合のメソッド
集合の使い所
制御フローとコード構造
コメント
1行が長くなる時
if文
デバッガーを使って確認してみる
比較演算子と論理演算子
InとNotの使い所
値が入っていない判定をするテクニック
Noneを判定する場合
while文とcontinue文とbreak文
while else文
input関数
for文とbreak文とcontinue文
for else文
range関数
enumerate関数
zip関数
辞書をfor文で処理をする
関数定義
関数の引数と返り値の宣言
位置引数とキーワード引数とデフォルト引数
デフォルト引数で気をつけること
位置引数のタプル化
キーワード引数の辞書化
Docstringsとは
関数内関数
クロージャー
デコレーター
ラムダ
ジェネレーター
リスト内包表記
辞書包括表記
集合内包表記
ジェネレーター内包表記
名前空間とスコープ
例外処理
独自例外の作成
モジュールとパッケージ
コマンドライン引数
Import文とAS
絶対パスと相対パスのImport
アスタリスクのインポートと__init__.pyと__all__の意味
ImportErrorの使い所
setup.pyでパッケージ化して配布する
組み込み関数
標準ライブラリ
サードパーティーのライブラリ
importする際の記述の仕方
__name__と__main__
オブジェクトとクラス
クラスの定義
クラスの初期化とクラス変数
コンストラクタとデストラクタ
クラスの継承
メッソドのオーバーライドとsuperによる親のメソッドの呼び出し
プロパティーを使った属性の設定
クラスを構造体として扱う時の注意点
ダックタイピング
抽象クラス
多重継承
クラス変数
クラスメソッドとスタティックメソッド
特殊メソッド
ファイル操作とシステム
ファイルの作成
withステートメントでファイルをopenする
ファイルの読み込み
seekを使って移動する
書き込み読み込みモード
テンプレート
CSVファイルへの書き込みと読み込み
ファイル操作
tarfileの圧縮展開
zipfileの圧縮展開
tempfile
subprocessでコマンドを実行する
datetime
入門編の終了 応用編に行く前に簡単なアプリケーションの演習
WindowsとMacのコマンド
簡単なアプリケーションを作って見よう
デモアプリケーションの流れを説明したPDFファイル
デモアプリのコードを展開する
サンプルのデモアプリケーションのコード
サンプルコードの設計とフォルダ構造の解説
サンプルコードのViewsとテンプレートの解説
サンプルコードのmodelsとcontrollerの解説
コードスタイル
コードスタイルをチェックするツールの確認
スタイルルール
Pythonの書き方
ドキュメントとPylint
文章のようにPythonを書く
コンフィグとロギング
応用編に行く前に
configparser
yaml
ロギング
ロギング フォーマッタ
ロギング ロガー
ロギング ハンドラー
ロギング フィルタ
ロギング コンフィグ
ロギングの書き方
Email送信
添付ファイルEmail送信
SMTPハンドラーでログをEmail送信
virtualenv
optparse
データーベース
データーベースに関して
MacにHomeBrewとSQLiteをインストールする
WindowsにSQLiteをインストールする
SQLite
MacにMySQLをインストールする
WindowsにMySQLをインストールする
MySQL
SQLAlchemy
DBM
memcached
pickle
MacにMongoDBをインストールする
WindowsにMongoDBをインストールする
MongoDB
Hbase
Macにneo4jをインストールする
Windowsにneo4jをインストールする
neo4j
データーベースのおさらい
WEBとネットワーク
XML
Json
urllib.request
requests
socket通信
socketserverとhttp.serverとwebbrowser
Flask
BeautifulSoupでWEBスクレピング
XML RPC
networkx
テスト
doctest
Unittest
Unittestで例外テスト
Unittestのsetupとteardown
Unittestのスキップ
pytest
pytestで例外テスト
pytestのsetupとteardown
pytestのスキップ
pytestのconftest
pytestのfixture
pytestの独自のfixture
pytest-cov どこまでテストをすればいいのか
noseのwebページの紹介
setuptoolsでtestを実行する
Toxで仮想環境でテストを行う
seleniumでUIの自動テスト
mock
mock.assert
mock.patch
mock.side_effect
mock spec
どこまでmockするか
並列化
マルチスレッドとマルチプロセス
スレッド
スレッドに渡す引数
デーモンスレッド
生存中の Thread オブジェクト全てのリスト
タイマー
スレッドのLockとRLock
セマフォ
キュー
イベント
コンディション
バリア
マルチプロセス
ワーカープロセスのプールで非同期
ワーカープロセスのプールでブロック
ワーカープロセスのプールとマップ
プロセス間通信に関して
パイプ
プロセス間での共有メモリ
マネージャー
別のマシン上で走るプロセス間のネットワーク越しの共有
高水準のインタフェース
暗号化
文字コード
pycryptoの暗号化と復号化
hashlibのハッシュ
インフラ構築自動化
インフラ自動化構築の環境に関して
MacにVagrantとVirtualboxをインストールする
WindowsにVagrantとVirtualboxをインストールをする
Vagrantfileのダウンロード
VagrantfileでVMを立ち上げる
Fabric
Fabricで自動化
Ansibleで自動化
Ansibleのモジュールの作成
ソースコードのダウンロード
Pythonの便利なライブラリやツールや豆知識
IPython
contextlib.contextmanager
contextlib.ContextDecorator
contextlib.suppress
contextlib.redirect_stdout と contextlib.redirect_sterr
contextlib.ExitStack
ioストリーム
collections.ChainMap
collections.defaultdict
collections.Counter
collections.deque
collections.namedtuple
collections.OrderedDictとPython3.6のdict
正規表現 re
正規表現のre.groupとre.compileとre.VERBOSE
正規表現のre.splitの分割とre.compileの置換
正規表現のGreedy
format表記
reprとstr
pprint vs json.dumps
ビット演算
Enum
functools.lru_cacheとmemoize
functools.wraps
functools.partial
グラフィックス
子供向けグラフィックスturtle
turtleで描画してみる
GUIツールキットtkinter
tkinterで計算機のアプリを作ってみる
計算機アプリのソースコード
Mac上でアプリを作成する
Windows上でインストーラーを作成する
kivyで簡単なゲームアプリ開発のご紹介
データ解析
データ解析の概念
Jupyter Notebook
numpy
pandas
matplotlib
scikit-learn
株価のデータ解析と予測
データ解析の章のソースコード
キューイングシステム
キューイングシステムとは
ZeroMQのPushとPull
ZeroMQのPubとSub
MacにRabbitMQをインストールする
WindowsにRabbitMQをインストールする
celeryとは
celeryでタスクを非同期で実行する
非同期処理 asynico
スレッドとマルチプロセスのI/OバウンドとCPUバウンドを理解する
非同期処理とは
ジェネレーターベースのコルチーン
yield from文
コルーチンとネイティブコルーチン
asyncioを使用する場面をイメージする
asyncio.Lock
asyncio.Event
asyncio.Condition
新しいスタイルの変更
asyncio.Semaphore
asyncio.Queue
asyncio.Future
asyncio.call_soonとasyncio.call_later
asyncioのチェーン
サーバークライアントのストリーム通信
ネイティブコルーチンとジェネレーターベースのtypes.coroutine
特殊メソッドの__await__を使ったAwaitable Class
async for文と__anext__
async with文と__aenter__と__aexist__
websocketsのご紹介
blocking関数を並列に実行する場合
asyncio.subprocess
最後に
ありがとうございました!
20世紀末がもうすぐという時期、テキストonlyのBASICやCOBOLを詰め込み教育された経験しか持たない自分は、何を学ぶにも妙に構えるor気負う癖があります。しかしながら、貴講座の導入部分は、そんなものが全く必要なく気楽に自然に入っていくことができました。この先も、ごく自然にいつのまにか知識と技量を習得していけるものと、期待しております。
python3の書き方、コードスタイルなど、言語の学習だけでなく、共同開発をする際に役立ちます。 初めてプログラミングを学習される方にとっては難しい内容もありますが、ボリュームが非常に大きいので、pythonを一通り学習するのには最適ではないかと思います。
カバーしている範囲が非常に広いので、自分に必要と思うセクションを選択して受講することで、Pythonに関係する技術のあらゆる入門として活用できました。私はAnsibleを学びたかったので、Ansible日本語教育コンテンツが少ないなか、とても役に立ちました。
他の方のレビューにもありましたが、この講師の方は大変優秀な方、人間的な魅力さえ感じますが、決定的に足りないのが説明のスキルですね。長すぎる詰め込み式。全然スキル上がらない。 最初の頃はとても良いのですが、おそらくご自身が理解している頭の中の動きを読み上げているにすぎないのではないかと思います。そして、日本人講師にありがちな「まだ説明していない用語や概念を遠慮なく使う」という癖がおありのようだ。 「これはちょっと難しいですが~」などと前置きしているのですが、難しいことをどうすれば理解できるかの、初心者目線の説明も足りていないんです。 本講義は、いきなり「今まではこうしてましたが~こういう風にやります(全然わからない)」と、ひたすら詰め込み式です。生徒は置いてけぼりです。最初は丁寧に説明するのが、徐々に各論に入りこみ、演習が足りない。デコレータなど、この到達時点で到底分かるわけがない。 母国語が日本語であっても、英語のトップ講師のほうが遥かに分かりやすいので、やはり私は英語ベースで学びたいと思います。実際にZTMのAndrei先生の授業を受けたら目から鱗で、PythonもJSも圧倒的に理解が進みました。 クラスの説明一つとっても、簡単な概念から積み重ねて、繰り返していくうちに最終的な理想形に至るように設計されています。「ここは今はなんとなくでOK」と言ったところは100%回収されます。子供のころから人に教わってきた環境が違いすぎるのかもしれませんが。ということで今後英語メインに戻ります。日本人の講義がほとんど全滅の中、この講義に大変期待を寄せていたのですが、残念です。
いいところ: 丁寧で、内容が充実している。詰め込みすぎの感もある。 良くないところ: テキストがないので後で見返すことができない。せめて”まとめ”の章をいれて。 メソッドが、全く説明なしにでてくるので、初めての人は面食らうだろうな。 私も、適当に覚えたので、メソッドの説明をしっかり聞きたい。
講座自体は大変満足です(^^ 専門用語の解説がもう少しあると初心者の方はもっと分かりやすいと感じました。 ex)terminal ターミナル ※個人的にはググって自己解決するべきものだと考えていますが、 あえて言うとすればって感じです。
phtyonに関して、全体を網羅しているのはよいかと思います。 ただ、自分の知識が少ないパートについては、一つ一つの内容が浅く、分かりづらかったです。 これを入門編にして、各パートの応用編が欲しいです。
Python初心者でも分かりやすいように環境構築からPythonの基本的なルールやコーディングを学ばせて頂きました。プログラミング初心者〜中級者にとっては打ってつけの教材なのではないでしょうか。 また、途中で簡単なアプリ演習を挟んだりするなどアウトプットの機会も設けているので頭に残りやすいスタイルになっていて素晴らしいと思いました。 ただ、講義を1から学習するのではなく、演習から始めてみて分からない箇所を動画でピックアップして学習すると効率が良いのではないかと思いました。 現役シリコンバレーエンジニアの貴重なコーディングルールや思考の中を覗けてこの値段とは、かなりコスパの高いUdemy教材でした。大変満足しております。
今回pythonは学んだことがあり、今後綺麗なコードを意識したいと思いこのコースを受講しました。プログラミングがまったくはじめてだと少し何回もみたり、ぐぐったりしないとついていけないかもしれません。他の動画やスクールも学んできましたが、知らなかったことが入っているのでとても勉強になります。
コース開設時から時間が経過しているからなのか、現在ではツールをインストールする際のサイトのデザインやツールの画面が変わっています。慣れている人ならばそれなりに対処できると思いますが、慣れている人はこのコースを受講しないかも。
自分は別の言語で開発経験があるので、つまづくことはありませんでした。 この動画だけでも、相当pythonが書けるようになるし、 業務レベルの知識を養うことができると思います。 もっと早く出会えていれば、自分がプログラミングの勉強し始めの頃はもっと時間を節約できた気がします。 とても良いコンテンツでした。
一度聴いたら理解出来る。が、忘れる。が、何度でも見直せる。初期の設定等に関しては繰り返し何度も見て実践することで身に付けることが出来てきた。後半部は関数を覚える必要があるが、これも今後の実践で繰り返せば覚えられるかな。ロートルの素人でもプログラマーになれそうな気がします。
Pythonは初めてで現段階で最初の部分を受講している。変数などの部分は他の言語に通じることも多く、またわかりやすく解説してくれるので「ついていけない」とはならない。 開発環境を構築することには毎度のことながら苦労する。有料のものをダウンロードしているが、この先も使いたいので無料のIDEの構築もしていただければと思う。
ちょうどPycharm有料版を使いはじめたところなので分かりやすかった。ただバージョンが違うのか微妙にメニュー階層や構成が違うのと、日本語化しているので頭の中で変換しながら動画を見ている分多少混乱があったかもしれない。
某オンライン学習サービスと併用で利用しました。テンポの良い説明で、とてもわかりやすいです。他の教材や学習サービスではいまいち理解できなかったところが、動画を見ながらプログラムを動かすことで理解が深まりました。
Status | Date | Discount | ||
---|---|---|---|---|
Expired | 11/14/2020 | 94% OFF | ||