趣味のプログラマーのための Python (いくつかの質問)
-
21-09-2019 - |
質問
私は趣味のプログラマーです (これまでは TI-Basic のみを使用していました)。自分自身と何度も何度も議論した結果、Python を学ぶことにしました。私には 100 の言語を独学するほどの自由な時間はありません。また、私が行うプログラミングはすべて個人で使用するか、必要な人に配布するためのものです。そのため、優れた優れた強力な言語が 1 つ必要であると判断しました。 。私の質問:
Python は、典型的なプログラマーがオフタイムに行う可能性のあるほとんどのことを処理できるほど強力ですか?私が念頭に置いているのは、テーブルトップ ゲームのユーザー入力に基づく複雑な統計ジェネレーター、小規模なゲームの作成、インストール プロセスの自動化、インタラクティブな Web サイトの構築などですが、おそらくこれらに沿って 100 のことを行うでしょう。
Python はネットワークタスクをかなりうまく処理しますか?
Python ソースは難読化できますか、それとも本質的にオープンソースになるのでしょうか?なぜこんなことを聞くかというと、もし私が何かクールなものを作って配布するとしたら、バカなスクリプト小僧に自分の名前を編集して自分が書いたと言われたくないからです。
そして、他の言語と比較した場合、Python はどのくらい人気があるのでしょうか。理想的には、私の言語は非常に困難なくオンラインで見つけられるヘルプを利用できる優れたものであり、役立つものですが、コンピューターを使っているすべてのバカが Python を知っているほど一般的ではありません。少しあいまいな言語を知るというアイデアが好きです。
ご協力いただきまして誠にありがとうございます。
解決
処理するのに十分強力なのpythonです ほとんどの事?
はい。期間。詳細については、 EveOnline のゲームを研究しています。 pygameののフレームワークを見てください。詳細を見つけるためにGoogleを使用して自由に自由ます。
パイソン柄ネットワーキング・タスクを実行します。 かなりよく?
はい。 PythonのWebフレームワークの数を加えたツイストフレームワークのrel="noreferrer">
はPythonのソースを難読化することができますか? ない有効。これはCではありません。 とに比べて、パイソンどのように人気があります
他の言語? TIOBEインデックスのを見ます。
他のヒント
私は、Pythonは、多くのことを行うことは非常に強力であると思いますが、ちょうどJavaとC ++のように、それは多くの場合、良いサードパーティのライブラリに依存します。私は、Javaの背景から来るが、たくさんのためのPythonを使用し、それが楽しい乗ってきています。私は統計のようなものをやった、と自動化は、UIわからないことは、多くの場合、言語よりも多くのツールキットにもよるが。
Pythonのネットワーキングがうまく動作します。私はそれが罰金で使いやすいです、私は、高速アルゴリズム取引システムやVoIPアプリケーションを構築するためにそれを使用したい場合は知っているが、ほとんどの意図や目的のために、特により高い抽象レベルではありません。あなたはSSHやFTPのようなもののための外部ライブラリが必要になります。
Pythonは非常に人気があり、非常に良いオンラインサポート、活発なコミュニティ、およびそれを使用する大企業(likeGoogle)を持っています。私は優れていることが公式オンラインチュートリアルやリファレンスを見つけました。
私はライン「コンピュータとすべての馬鹿」に反対することを言わなければなりません。そこ言語を知り、右のそれを使用しての違いはあります、それはすべての言語、でも自然なものについては事実だ:) Pythonは、手続きの背景から来る人のために使用するように簡単ではありませんされている機能要素の多くを持っているので、常にあります成長のための部屋。
CやJavaのような言語に比べパイソンの一つの問題は、それが静的に型付けされていないということです。これは、デバッグに非常に厄介なことができます間違いを犯すために)それは、のはるかに高速のコードを書くことができますが、また、それは*はるかに簡単になります。例えば、同じ変数がいくつかの点で文字列参照、および他のいくつかの点での文字列のリストへの参照を含むことができます。
- 絶対に。
- どのような種類のネットワーキングですか?ソケット、http、xml、smtp/pop、telnet などが組み込まれています。
- Python の難読化はコンパイル言語ほど優れたものではありません。通常、それは問題ありません。
- それは stackoverflow で 9 番目に人気のあるタグ, そのため、利用できるヘルプがたくさんあります。
pythonの典型的なプログラマは彼のオフタイムに行う可能性がありますほとんどのものを処理するのに十分強力ですか?私は小さなゲームを作り、テーブルゲームに対するユーザー入力に基づいて、複雑なSTAT発電機のような心のものを持っている、プロセスをインストール自動化し、インタラクティブなウェブサイトを構築するが、これらの線に沿って、おそらく百もの。
確かに。 Pythonはそれが適切なツールかもしれませんが、より可能性の高い適切なツールは、おそらくあなたが自動化され、特に何によって決定される場合には、プロセスの自動インストールを除いて、これらのすべてのための優れたツールです。
かなりよくパイソン柄ネットワークタスクをしていますか?
はい。あなたはツイストのに見たいと思うでしょう。
Pythonのソースを難読化することができます、またはそれは本質的にオープンソースになるだろうか?私はクールなものを作り、それを配布する場合、私は自分の名前を編集するために、いくつかの馬鹿スクリプトキディをしたいと、彼はそれを書いたと言っていないので、私はこれを頼む理由がある。
「オープンソースは、」あなたのコードのライセンスではなく、そのソースコードの視認性を指します。 Pythonのソースコードを非表示にすることは特に可能ではない、と逆コンパイルのPythonバイトコードの結果はC.のような言語での同等のツールよりもはるかに読みやすいコードになります「ははすることができます!このことを心配しないでください彼らは法律を破ることを喜んでいる場合tはあなたの車やパソコンを盗むから人々を防ぐため、そしてあなたは、任意の言語でコードのために同じことを行うことはできません。
と他の言語に比べて、パイソンどのように人気があります。理想的には、私の言語が良いと極端な困難を伴わずにオンラインで見つける助けを借りて、有益な、しかしコンピュータとすべての馬鹿のpythonを知っているほど一般的ではないだろう。私は少しあいまいな言語を知っているのアイデアを気に入っています。
これはunanswerable質問です。 Googleはそれらの最も有用な、異なるメトリックであなたの相反する結果の多くを提供します。あなたはまた、少し愚かなことだ;)
<時間>おそらくそうだ。ゲームの種類によっては統計処理が少し遅くなるかもしれませんが、一般的にパフォーマンスは十分で、実際のプログラミングにかかる時間を大幅に節約できます。本当にパフォーマンスが必要な場合は、C でモジュールを作成できますが、通常は、必要なことを実行するために作成されたライブラリが存在します。
使ったことはありませんが、 というフレームワークがあります ツイスト それはかなり良いようです。
いいえ。バイトコードは簡単に逆コンパイルできますが、特定のバージョンの Python でのみ動作するため、コードの移植性は高くありません。
Python は非常に人気があり、 Python パッケージのインデックス にはサードパーティライブラリの大きなリストがあります。Java ほど普及していませんが、多くの人が使用しているため、おそらく必要な答えが得られるでしょう。
ポイント1および2:YEAH HELL
ポイント4:種類の。 Pythonはいくつかのネットワークのもので良いです。これは、JavaやC ++ではありません。ただ、すべてのためにはzlib(ジップライブラリ)とピクルス(シリアライズ)を使用して、あなたがIPCが必要な場合xmlrpclibを見てみます。
ポイント3:いいえ。しかし、あなたは(重要なパフォーマンスのために、ハード・ツー・コピー)Cモジュールを書くことができ、あなたのコードの一部、そしてそれは、それは非自明なエンジニアを逆になるだろう。
。Pythonは1、2及び4のためのタスク(およびそれ以上)までである。
あなたが記述するものから、3のための最善の解決策は、おそらくライセンスのようなGPLやBSDと本当にオープンソースあなたのプログラムを作ることであろう。このように、人々は(多くの場合、経験豊富なプログラマーだけでなく、スクリプトキディ)あなたの超クールなソースを編集して、上に構築さが、後世のために自分の名前を残すだろう。