はるの趣味日記

野鳥撮影系大学生の雑記ブログ

結局pythonのデメリットってあるの?

f:id:haru_hobby:20170901161532j:plain

 プログラミングを始めるならpythonがおすすめ!って書いてるwebサイトってとても多いですよね。本当に使ってそう思ったのか、それとも周りがそう書いてあるから便乗してるのかは置いておくとして。

 

でも実際僕もほんの少しpythonを触ったことがありますが確かに書きやすいんです。細かいことをあんまり気にしなくて楽だし。文も見やすくなるように工夫されてるし。これなら初めてでもプログラム嫌い!ってならないかもなーって思います。

 

最初からcとかjavaを触るとプログラミングアレルギーになるってよく言われてるじゃないですか。あれもよくわかるんですよね。細かい制限とかちょっとしたエラーがわかりにくいですもん。

 

最初だとプログラム自体がうまく作れない事よりも空白や半角全角の違いでプログラムが動いてくれないことの方が多かったりしますし。本の通りにやってるのになんで動かないの!もう嫌だ!!なんてなる気持ちもよくわかります。

 

実際大学4年でc++を独学勉強しましたけど心が折れそうでした。今もやっぱり嫌いです。決まりの細かい言語+周りに聞ける人がいない環境はプログラミングアレルギーを生み出します。僕みたいにやらないと卒業研究できなくて留年するなんて状況にでもなれば必死でやるんでしょうけど。

 

そういう意味でわかりやすさを売りにしているpythonって最初のプログラミング言語としては向いているんだろうなーって。

 

その上でライブラリが豊富ーとか海外ではいろいろ使われてるから参考になるサイトがいっぱいあるとかメリットも大きいです。

 

特にライブラリが豊富なのはありがたいです。最近流行の機械学習やデータ処理なんかもライブラリを使えばほとんど苦労せずに使えるみたいじゃないですか。

 

ここを考えると別にプログラミング初心者じゃなくても便利なツールの土台としてpythonを勉強すればいいんじゃない?なんて思ってしまいます。それくらいでも逆にpythonのデメリットってあるんですかね?

pythonのデメリット

僕みたいなプログラミング初心者にははっきり言ってpythonのこれだ!と言えるような悪いところを見出すことはできませんでした。ごめんなさい。

 

いやだって別に無いんだもん。良い言語じゃん?そもそも粗探しはきっとよくないよね(*´・д・)(・д・`*)ネー

 

でもそれでも強いて言うなら。cとかだとint型とかfloat型とかちゃんと指定して変数を作らないとダメでしたがpythonはそれを勝手にやってくれます。

 

とっても便利。便利ですがpythonみたいになんでもプログラム側がやってくれちゃうとcみたいな言語に戻った時に型の指定を忘れたり、構造体とかいろいろ感覚が違ったりします。(そういう僕もあんまりわかってないです。突っ込まないでくださいね)

 

C→pythonに行く分には分の書き方が簡単になるなぁーくらいでいいんですけど、python→Cに行くといろいろ勉強しなおすことが多いかなーと。そのあたりちょっとめんどくさい。あとセミコロンは絶対忘れる。

 

とにかく細かいところを勉強しなおすのがめんどくさいんじゃない?って思います。でも実際C→pythonに行くのとpython→Cに行くのはどっちがいいんですかね。結局後で苦労するか先に苦労するかの違いくらいだと思いますけど。

 

あ、今回Cを比較に出していますが別にCじゃなくてもC++でもJAVAでもなんでもそうですね。とにかくpythonよりももっと細かく決めなきゃいけない言語って意味です。

 

終わり