PythonとDjango入門するのに読んだWebまとめ

DjangoはおろかPythonも初めてなので、Djangoインストール前に初心者向けのWebをあさった。備忘録としてリンクしていく。

Python入門するのに読んだWeb

Python - Wikipedia
言語仕様はwikiで学んだ。インデント自体がブロックを定義するというのは前から知っていた。行末文字も無い。変数の扱いや全部オブジェクトになってるという事なのでrubyと同じだと思っておく。

Usek's items - Qiita
Python基礎講座。リファレンスを読む前の読み下しとしてこちらを参考にさせてもらった。セット(集合)タプルなどの組み込み関数だかステートメントと同等の機能は他に触ったことが無かった。リスト=配列、辞書型(ディクショナリ)=連想配列のこと。


Pythonの内包表記の使い方まとめ - Life with Python
Pythonの無名関数(lambda)の使い方 - Life with Python
無名関数は今回開発するRESTアプリでは使わない気がするが、一応知っておく。クロージャもコレで作る。


Pythonらしいコードの書き方 - Kesin's diary
Pythonのコードをきれいに書くためのTips | TRIVIAL TECHNOLOGIES 4 @ats のイクメン日記
Pythonにまつわるアイデア:Pythonic その2 - Life with Python

pythonらしいコードの書き方として、コーディング前にこちらも読ませてもらった。


Python 言語リファレンス — Python 2.7ja1 documentation
日本語訳のpythonリファレンス。コードを書く時はこれをチラチラ見ながら進めることにする。

Google Python スタイルガイド — PyGuide - 2.29mumumu/pep8-ja · GitHub

日本語訳のpythonコーディングスタイルガイド。これに準拠してコーディングしていく事にする。規約に準拠したコードかチェックするツールもある。初心者だしこれに従うことにする。


ひと通り眺めた感想を備忘録として、

  • 変数のスコープはだいたいrubyとおなじ
  • 関数無いでグローバル変数をいじるときは宣言がいる
  • switchが無いらしい
  • 三項演算子も無い
  • 後置if文はある
  • for 〜 else というループを走り抜けた場合の構文がある
  • 大量の配列を生成する用にmapの変わりに「内包表記」という配列代入時に直接コードをぶっ書く仕組みがある。pep8では可読性的にあんま使うなと書いてある。
  • オブジェクトの要素をプライベート化しとくには__(アンダーバーを2つ)で宣言するという投げやりなルール
  • ジェネレーターという 遅延評価が出来るリストっぽい関数を作る仕組みがある。無限リストを作ったり、呼ばれた分だけ処理して返すエコなリストみたいのが出来る。これはイケてる。
  • デコレータ…気持ちはわかるけど、基本使わないほうが綺麗だと思う↓のがまだまし
  • with文とコンテキストマネージャ…メソッドを叩かれた時に、強制的に固有メソッド名を呼び出される、うっかりさん向けのルール文ファイルのオープン・クローズとか

Django入門するのに読んだWeb

Python Django入門 (1) - Qiita
日本人向けにPythonとDjangoを同時入門するために書かれた記事。Django導入からテストまで。サンプルコードあり

Djangoのテストの書き方について勉強したのでまとめる - c-bata web
Djangoのユーザ認証まとめ - c-bata web
リスト系アプリを最近制作されたということで、全力で参考にさせてもらう

Django ドキュメント — Django 1.4 documentation
日本語訳の公式ドキュメント。バージョンが1.4古い

Django documentation | Django documentation | Django
こちらが本家の公式ドキュメントで1.8となっている。