pythonコースほぼ終了

CodecademyでのPython学習を概ね終えた。(ビット操作のところは飛ばしたけど)
もちろんこれは初歩の初歩なのでこのコースを終えたところでスーパーハッカーになれるわけもないんだけれども、ひと通り「Pythonそのもの」についてはわかったんじゃないかと思う。
今後はそれらをどう応用していくか、ということと既存の資源(Python言語自体ではなくて、周囲のライブラリーなど)をどう使うか、ということになるかと。

最初に触れたJavaとの比較をしながら進めてきたわけだけれども…。
  

1.変数の型を明示的に書かないのが気持ち悪い

Codecademyの課題レベル(1ファイルのみ、多くて30行くらい)だったら問題ないけど、実際に業務で使うようなプログラムを書くときには問題の元にならないのだろうか。
このメソッドはこういう型の変数をあげればこういう型の戻り値が帰ってくる、というのがひと目でわかったほうが個人的にはわかりやすいと思うんだけれども。


2.情報量

本屋のプログラム本コーナーなんかではやっぱりJavaがとても多く、PythonはそれなりにあるとはいえJavaに比べると少ないな―と思う。
しかしネットで調べる際にはPythonは情報量が少ないなーなんて感じることはない。
勝手な想像だけど、ユーザーの平均レベルはJavaよりもPythonのほうが高いのではないだろうか。Javaはスタンダードになっているぶん、所謂IT土方と呼ばれるような技術力が低いユーザーも多いのかも。一方、Pythonのほうが「プログラマー」率が高いのかもしれない。


3.かっこよさ

多分JavaよりPythonのほうがモダンでかっこいい気がする。


4.余談

前の記事で文句を言ったint / intがintになるというのはPython 2系の問題で、Python 3系ではint / intはfloatになった。2系と3系の比較記事を流し読みしたら、その他にもいろいろとPython 3系のほうが「個人的にしっくりくる」設計になっていた。
しかし、かなりドラスティックな変化だったせいで今までPythonを使ってきたヒトたちはなかなか3系に移行しないらしいし、参考資料もPython 2系に向けて書かれているものが多い。

 

また、Codecademyのコース自体はプログラム自体初心者という層に向けたものなので、他の言語に触れているとかなり退屈な部分が多い。
一方で、複数の.pyファイルを使ってプログラムを書くときにどうすればよいか(Javaでいうmain関数はどうするか、他の.pyファイルにあるクラスを呼び出すのはどうするか)などに触れない。ビット操作なんかよりそっちのほうが大事な気がするんだけれど。


Javaを勉強しているときは、多少なりともプログラムがかけないと卒論も書けないし当然卒業できないというマイナス方向からのモチベーションがあったわけだけれども、Python学習のほうは今後何を目標にしていけばよいのだろうか。
特に現状何か書かなければいけないという義務はないので、次は頑張れば自分で作れそうなレベルで欲しいソフトを作ってみたらどうかという、プラスな方向でいってみようかと。


e-hentaiではGPやCreditを貯めればZIP形式でギャラリーをダウンロードできる。しかしブラウザからやろうとすると結構手間がかかる。
なので、ギャラリーのURLを貼るだけでダウンロードをしてくれるようなダウンローダーというのはどうかなと思案中。

一見しただけではなんともしょうもないことを考えたな、と思うかもしれないが、これはWEB系の話にも首を突っ込むことになるので技術的にも学ぶべきことが多く含まれている。(はず)

その次はDoujinshi & Manga Lexiconからデータマイニングするようなツールかな。