よく書かれたドキュメントは、プログラミング言語を学ぶのに十分な理由ですか?[閉まっている]


14

現在、大学のカリキュラムに含まれていないPythonを学んでいます。インタビューの中で、なぜPythonを選んだのかと尋ねられ、簡単に学ぶことができ、ドキュメントが非常によく書かれていると答えました。インタビュアーは、それが十分な理由であるかどうかは答えませんでした。彼は確信しているように見えましたが、私にはわかりません。

よく書かれたドキュメントと習得の容易さは、スクリプト言語を選択する十分な理由ですか?または、Pythonライブラリの利用可能性とPythonのより大きなユーザーベースについて詳しく説明する必要がありますか?

ちょっとだけ。Pythonはこの仕事には必要ありませんでした。同社は、Ruby-on-railsに取り組みました。Pythonは私の履歴書にあり、インタビュアーはプログラミング言語を選択する際に、私がより新鮮なものとして考慮したことを知りたかっただけだと思います。


12
面接ではないかもしれませんが、自分が望む以外のことを学ぶ理由が必要かどうかは疑問です。
jk。

2
@jk私は今のところCを知っています。私は大きな専門家ではありませんが、構文を知っていて、データ構造などを実装できます。アイデアをより早く実装できる言語が必要でした。それが私がスクリプト言語を選んだ理由です。ドキュメンテーション、使いやすさ、ユーザーベースは、PerlやTclと比較したときの主な利点でした。3つすべてが両方の言語に適用されたわけではありませんが、Google Python を使用した場合、これらのいずれかよりも優れていることがわかりました。そこで私はPythonを選びました。欲しいから学ぶというのは十分な理由ですが、私が興味を持ったのはPythonではありませんでした。アイデアが主なものでした。
アシームバンサル

1
[簡単だから何かをする]は[難しいから何かをする]ほど印象的ではありません。それが実際に困難で、あなたがただ見せびらかしているのでなければ。;)
TimG

5
Pythonは初めてなので、Pythonを参照するのをやめて、「スクリプト言語」と考えることを検討することをお勧めします。それは言語です。人々はそれでウェブサイト、デスクトップアプリ、小さなスクリプト、巨大なライブラリ、組み込みコントローラなどを書きます。「スクリプト言語」と呼ぶのは私には不適切なようです。
チェロニアン

@Chelonian Pointが指摘した。それを指摘してくれてありがとう。
アシームバンサル

回答:


20

いいえ、よく書かれたドキュメントは、言語を学習する十分な理由ではありません。

不適切に書かれたドキュメントは、学習しない理由として十分です。


言語を学ぶ理由は4つあります。

  1. それはあなたのキャリアに役立つツールかもしれないから

    言語はツールです。あるコンテキストでの利点のため、ある言語を別の言語ではなく使用します。言語が高品質のドキュメントを持っているという事実は、それがより良いツールにならない、またはほんのわずかです¹。

    言語の選択は、以前の経験、パラダイム(例:Haskellの関数型プログラミング)、アプローチ(例:Node.jsを使用したサーバー側プログラミング言語としてのJavaScriptの完全非同期モード)、相互運用性(例:Javaのほぼすべてのオペレーティングシステムとの互換性など)

    日常生活でツールを使用できることは、言語を学ぶ理由の1つです。

  2. それはあなたの文化と知識を広げるからです

    言語を学ぶもう1つの理由は、新しい概念、パラダイム、エレガントなコードの記述方法を学ぶことです(例:Haskell)。ここでも、ドキュメントは役立ちますが、言語を学ぶ唯一の理由ではありません。

  3. 習得するのに最小限の労力しか必要ないから

    言語を学習するもう1つの理由は、学習が簡単だからです(例:PHP)。繰り返しになりますが、ドキュメントは多くの貢献をしますが、言語自体はさらに重要です。さらに、インタビューの中で、簡単に学べるという理由だけで言語を学んだと言うのを避けます。

  4. 楽しいからです。

    言語を習得する最後の理由は、適切に設計された言語(例:Haskell、Ruby)またはギーク向けの言語(例:Brainfuck)のいずれかを習得するのは単純にエキサイティングだからです。

Pythonの場合、答えられることは次のとおりです。

  1. それは動的な言語です。動的言語を使用すると、簡単にプロトタイプを作成したり、状況によって強い型が重要ではなくなった場合に、より速く開発したりできます。

  2. エレガントです。Haskellほどエレガントではないかもしれませんが、PHPなどの主流のWeb指向言語との比較は簡単です。

  3. 意味のあるインデントの使用は、多くの主流言語がインデントをそもそもIDEによって管理されるべき負担にしかしないため、興味深いものです。ところで、Haskellコンパイラーとインタープリターもインデントに依存しています。

  4. Pythonにはリストを扱うエレガントな方法があります。リスト内包表記とジェネレーター式は、関数型プログラミングを使用したことがない人にとって興味深い概念です。

  5. Djangoを使用すると、コードをかなりクリーンに保ちながら、Webアプリケーションを非常に簡単にすばやく作成できます。これは、他の多くのプログラミング言語に比べて大きな利点です。

  6. 大規模なWebアプリケーションに十分な速度と強力さを備えています。たとえば、DropboxはPythonで書かれています。YouTubeはPythonに大きく依存しています。Redditは、よく覚えていれば、Pythonにも依存しています。


¹よく書かれたドキュメントは、物事を正しい方法で迅速に行うのに役立ちます。


私はCを知っています。アイデアをより早く実装したかったので、Pythonを学びました。それは最初のポイントを除外します。関数型パラダイムはPythonを介してのみ知るようになったので、2番目のポイントも出てきました。この状況では、3番目のポイントだけが残っています。私の答えの重点は何だったはずですか?で詳細情報の質問にこのコメント
Aseem Bansalは

@AseemBansal:質問を編集して、あなたが答えられるかもしれないことを示しました。また、「Pythonを介してのみ機能的なパラダイムを知るようになった」ということはまさに私が話していることです。あなたはPythonを学び、それがまさに言語学習の目的であるFPの発見に役立ちました。
アルセニムルゼンコ

1
youtubeとRedditの代わりに、Dropboxを例として使用できます。Pythonで完全に作られています。私の記憶が正しければ、GuidoがDropboxの製品開発を手伝い、彼は最近再び彼らに加わりました。
アシームバンサル

あなたがスキップしたと思う4つ目の理由があります:言語が面白そうだからです!
martiert

ある程度は一流ですが、楽しみはどうですか?特定の言語を学びたいなら、それは十分な理由以上です。スキルを最大限に引き出すために、キャリアの向上と戦略によってすべてが動機付けられる必要はありません。
ジル

7

あなたは私のような場合は、それが快適なハンドルを持っているという理由だけでハンマーを使用しないでください。あなたが何かを得るためにそれを必要とするので、あなたはハンマーを使用して行わ打ち出しています。

したがって、良いドキュメントは確かに役立ちますが、それ自体はプログラミング言語を学ぶ理由はなりません。


1
私はやりたいことを追加し、Pythonを使っていましたが、ドキュメントよりも物事を成し遂げることにもっと重点を置くべきだったと思います。
アシームバンサル

3
ハンマーを使用するのは、何かをハンマーで打つ必要があるからです...ドライバーがより適している場合、ハンマーを使用する人が多すぎます。
gbjbaanb

@gbjbaanb:まさに!さらに正確になってくれてありがとう。
stakx

1

新しい言語を学ぶ理由は次のとおりです。

  1. あなたが働いている残りのチームはそれを使用し、あなたはチームの一員になる新しい人です。

  2. 問題を解決したい場合、言語X、または言語Xのライブラリ/フレームワークは、そのタスクに対して利用可能な最善のサポートを提供するようです

  3. あなたはあなた自身の教育目的のためだけにそれをします。

多くの場合、状況2には、問題を解決するのに適した複数の言語またはフレームワークがあります。よく書かれたドキュメントは、考慮すべき要素の1つかもしれません(しかし、他の要素も)。ポイント3では、優れたドキュメントがより重要かもしれませんが、正直なところ、学習のためだけに新しい言語を学びたい場合は、まず解決したい問題を見つけます。そうでなければ、すぐにモチベーションを失います文書化されたドキュメントが利用可能かどうか。


1

はい、なぜですか?学習する言語が多ければ多いほど、次の言語を習得しやすくなります。さまざまな言語で多くのプログラミング概念を学ぶことができます。そのため、学習に利用できる最高の教材があるものから始めることもできます。

また、ほとんどのタスクはさまざまな言語で実行できます。通常、しばらくすると、コア言語の概念とツールをマスターしますが、必要に応じてほとんどのライブラリを学習します。ライブラリが適切に文書化されていれば、特定のアプリケーションドメインをすばやく理解できるように、言語を支持する議論になります。


0
  • いいえ、よく書かれたドキュメントは、言語を学習する十分な理由ではありません。

  • インタビュアーは、あなたに彼にpythonの良さを伝えるためにこの質問をしました。pythonとrubyを比較する必要があります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.