スペースを使用するプログラマーは、タブを使用するプログラマーよりも給与が高くなります


スペース対。タブ。 プログラマーの間で繰り広げられる内部の聖戦があります。 プログラマーはスペースやタブを使用してコードをインデントする必要がありますか? これに対する明確な答えはありますか? また、誰がもっと稼ぎますか? スペースを使用するプログラマーまたはタブを使用するプログラマー? この記事でこれ以上のことをすべて学びましょう。

前書き

インデントは、プログラミングの世界で非常に重要な機能です。 何人かのプログラマーはそれを熱心にフォローします、そしてそれでも他の何人かは全く消極的です。 インデントは、プログラム構造を示すためにコードのブロックをインデントするスタイルです。 悪いインデントは、プログラムを混乱させ、制御を困難にする可能性があります。 多くのプログラマーがインデントを怠る理由は、時間の制約のためです。 適切なインデントにより、コードの読み取り、理解、変更、および保守が容易になります。

適切なインデントの主な利点の1つは、使いやすさです。 各行を読み取る必要がなく、ターゲットとするコードを即座に確認し、ブロックの開始と終了を理解できます。 信じられないかもしれませんが、コードを参照しなければならない状況はたくさんあります。

  • コードを理解しながら
  • 既存のプログラムに新しいコードを追加している間
  • コードの更新中
  • コードのデバッグ中

Stack Overflowによって行われた分析により、プログラミングの世界ではタブよりもスペースの方が好まれているという観察結果が明らかになりました。 スペースを使用するプログラマーもより多くを稼ぎます。

Stack Overflowは毎年、プログラマーが稼いだ給与について調査を行っています。 2017年の調査では、タブユーザーとスペースユーザーのどちらのプログラマーがより多くの給与を稼いでいるかについて調査しました。 StackOverflowのデータサイエンティストであるDavidRobinsonは、収集したデータを処理し、経験レベルに関係なく、「スペース」プログラマーは「タブ」プログラマーよりも9%多く稼いだという結論に達しました。

約28,657人が調査に参加し、どの形式を好むかについて回答しました。 これらはすべてプロの開発者(学生や新入生ではない)であり、そのうちの約12,426人が給与に関する情報も提供していました。 グループの専門家のうち、40.7%がタブを使用し、41.8%がスペースを使用し、残りは両方を使用しています。 Stack Overflowによって収集されたデータがこの観察をサポートしているため、実際には経験は重要ではありません。 スペースを使用するコンピュータープログラマーには、他のグループよりも12,000ポンド多く支払われます。

そしてもちろん、これは使用するコンピューター言語にも依存します。 Pythonのような言語では、インデントは非常に重要ですが、Rubyでは、インデントを使用してコード構造を簡単にします。

手書きのコードを動作するソフトウェアに使用している場合は、2つのインデントのいずれかを使用すると効果が生じる可能性があります。 このプログラムを処理するために、インタプリタまたはコンパイラと呼ばれる別のプログラムがあります。

開発者は、コーディングエディタを調整して、これら2つまたは両方のいずれか、または両方を操作して、さまざまな要素間の関係を示します。 編集者がタブを操作することを期待しているときにタブを見ると、状況が非常に悪くなる可能性があります。その逆も同様です。 このような状況では、インタプリタまたはコンパイラがクラッシュする可能性があります。

それで、これはすべての国で同じですか? 一人当たりGDPが低い国の開発者はタブを使用する可能性が高く、他の国に比べて賃金が低くなります。

Stack Overflowで送信されたレポートを見ると、米国、英国、カナダ、カナダ、ドイツ、インドでは、スペースを使用する開発者の数がかなり多いことがわかります。 ヨーロッパでは影響は小さいかもしれませんが、インドではその差ははるかに大きくなります。 しかし、それがこの背後にある唯一の要因ですか? 開発者と彼らが使用することを好むインデントに依存するため、真実ではないかもしれません。 DevOps開発者はスペースを使用することを好みますが、モバイル開発者はタブに引き寄せられる傾向があります。

したがって、給与パラメータにはいくつかの要因が影響していると言えます。

  • タブとスペースを使用しているかどうか
  • 仕事が行われている国
  • 使用される言語と開発者の仕事の性質
  • 開発者の長年の経験
  • 会社の規模
  • 正式な教育を含む彼らの知識のレベル
  • 彼らがそれを専門的にするか趣味としてするかどうか
  • もしあれば、オープンソースへの彼らの貢献。

結果はこれらの要因の詳細な調査として観察され、すべてのサブ開発者グループまたは国でテストされたときに同じことが起こります。 こちらからデータを収集して確認することもできます。

タブを支持する議論は、開発者は自分が使いやすいタブ幅にエディターを構成できると言っています。 ただし、使用する場合は、コーディングガイドラインにタブ幅(コーディング幅)を追加する必要があります。 一部の開発者は、自己記述型であり、エディターの設定に基づいてコードの外観を変えたくないため、スペースを使用します。 読者が幅を好みの値に設定できるように、コードは読みやすいものでなければなりません。

しかし、このように考えることもできます-幅が重要な場所で複数行のコードを整列させるためにスペースを使用します。 また、インデントにタブを使用して、開発者が自分の好みの幅を送信できるようにします。

結論

スペースのスコアがタブよりも高いという事実は、多くの人にとって少し驚くべきことかもしれません。 しかし、データを処理して、データセットで使用されているすべての要素を見ると、結果は明らかです。 生データをダウンロードして、自分で調べることもできます。

しかし、両者の議論は続いており、両方に対して非常に強力な支持者がいます。 たとえば、開発者のグループは、環境に応じてタブに複数の列を含めることができると言ってスペースをサポートする場合がありますが、スペースの場合、列は1つだけです。

また、タブサポーターは、これは特にインデント用であり、開発者にインデントサイズのさまざまな設定を提供し、開発者が実際にコードを変更せずにコードの変更を確認できるようにすることを目的としています。 ただし、開発者は、Pythonをインデントする最も一般的な方法はスペースを使用することであり、他の方法が2番目に一般的な方法であると感じています。

興味深い記事:
stackoverflowによって説明される詳細な違い
スペースプログラマーとタブプログラマー

画像ソース:Flickr.com / Berliner


著者:Reema Oamkumarは、YUHIROグループの一員であるwww.Software-Developer-India.comでソートリーダーとして従事しています。 YUHIROは、IT企業、代理店、IT部門にプログラマーを提供するドイツとインドの企業です。

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください