はじめにどうも、まさやです
はじめて触ったプログラミング言語がPythonで、これつかってユーザ登録・ログイン、投稿機能などのWEBの機能つけれたらいいなーと思い、、
なんとかやりとげたので、その方法をお伝えします
結論から言うと、PHPを使うほうが良い!!笑
PythonとPHPのWEB開発を比較
実は、Pythonを使って、WEBページに必要な機能はじゃんじゃんつけることも可能です
じゃあ、PHPを使う時と何がちかうのか…めっちゃ簡単に解説します!!
PHPでWEBは楽々
WEB上の仕組みづくりは圧倒的にPHPが楽です
htmlコードを書くように、ちゃちゃっとphpファイルを使って、あとはサーバーにぺたっとするだけです
圧倒的な違いは、「ポンとファイル置くだけで、実行可能な状態になる!!」ことです
これはすごい
まあ、どういうことかといいますと
1 2 3 4 5 |
<?php echo '<p>Hello World!!</p>' ?> |
こういうHello Worldを表示するコードをそのままサーバ(これはXserver)に貼り付けると、
まあ、ちゃんと表示されますよね
PythonでWEBをすると…
さて、本題です
まず、Pythonファイルをそのままはりつけると
1 |
print('<p>Hello World!!</p>') |
なんとコードが「そのまま」表示されるのです!!
いや、生コード表示させても意味がない…
勝手に実行してくれないんですね〜
ただ、実をいうと、これは各サーバーによって違います
何もしなくても実行してくれるものもあれば、ちょっと工夫すれば使えるようになるサーバーもあるのです(各サーバーごとにしらべてみてください)
具体的なやり方については、別の記事でご紹介します
簡単な作業ならPHP
ちょっとした動きをつけようと思えば、PHPのほうが楽です!!
たとえば、計算するだけとか、コメントを表示するだけとかなら、PHPでちゃちゃっとしてよいでしょう
PythonはWEBに特化して作られたものではないため、わざわざ使う必要はないかなあということです
PythonとPHPに複雑なWEB開発をさせると
さてもっといろんな機能をつけたい…っておもったときを考えます
そのときは全部自分でしようとするのはナンセンスです
「フレームワーク」というものを使いましょう
フレームワークって?
例えば、ユーザ登録機能をつけたいとします
そのとき、フォームをつくって、送信されたデータをセキュリティに気を遣いながらうけとって、データベースに格納して、次ログインするときは、データベースから…
なんて作業を0からつくる必要はありません(セキュリティをめっちゃ考えないとダメになります)
そこで登場するのがフレームワーク!!
したいことをまとめて、簡単に使えるようにしてくれてるのです!!
PHPでフレームワーク
PHPの入門書だと、手書きでWEB開発系いっぱい書かれてたりすると思いますが、PHPにもフレームワークがたくさんあります
CakePHPって見たことないですか?
これもフレームワークの一つで有名ですね
ただ、正直なところPHPに関してそこまで詳しいわけではないので、フレームワークのどれがいいの?って方は、コチラの記事をご覧ください
Pythonでフレームワーク
では、Pythonはどんなフレームワークがあるのか?
有名なのは4つくらいですが、どれもすばらしいものです
その1つのDjango(ジャンゴ)は様々な機能を兼ね備えている強力なやつです(私も最終的にこれを使いました)
また、Flaskという軽量なフレームワークもあり、私がPython一色だった時代にPHPを用いずにわざわざこれを使っていました笑
他にも、Bottle、Tornadoというものがあります
思わぬ落とし穴
じゃあ結局どっちでもいいんじゃないの?
と思われた方!!
見落としてます!!
なにを?
日本語情報
ずばり、ジャパーニーズインフォメーションがぜんぜんないのデス!!(Python)
Pythonは最近日本で流行ってきてますが、やはりWEBの主流は(ほんとに)圧倒的にPHPです
PHPはつまずいたときも調べれば、いくらでもあるでしょう
しかしPythonで深く調べようと思えば、結局英語の資料に行き着きます
あ、もちろんどんなプログラミング言語でも深く追求したら英語が出てきます
ただ、日本語の情報は桁違いにPHPのほうが多いです
プログラミングはバグ修正作業
これをいうとほんとのプロに怒られそうですが…
私のようにまだまだなプログラマーだと、バグ修正にとにかく時間がかかります
そんなときに日本語で親切に教えてくれたらどんなに助かるか…と思ったことは多々あります笑
まとめ
Pythonを学ばれてるというのであれば、PHPの習得もすぐでしょう
特にこだわりがないならPHPをおすすめします!!(WEBね)