クレジット:
すべてのコーディング プロジェクトの過程で、ソフトウェア開発者は何十もの決定を下す必要があります。場合によっては、これには、特定のドメイン空間または特定のアーキテクチャ上の問題に固有の問題の解決が含まれます。また、どの言語が仕事に最適であるかが問題になることもあります。実はこれは、プロジェクトを正しく進める上で最も重要な部分の 1 つです。
別の言語の方が優れている問題領域に言語が適用されることがよくあります。ここでは、主要なビジネス分野のいくつかと、それぞれに最適な言語を簡単に紹介します。
金融セクター
金融セクターは多くの言語の恩恵を受けています。計算の重要な機能の 1 つは関数型プログラミングの特性です。財務計算に基づいて数学を処理する場合、関数パラダイムは多くの場合、パフォーマンスに実質的な利点をもたらします。 Scala など、金融分野で使用される主要な言語の一部が機能するのはこのためです。
金融分野におけるもう 1 つの主要なニーズは、言語関連組織からの多くのガイダンスに裏付けられた強力なアーキテクチャ パターンを備えたオブジェクト指向パラダイムの恩恵を受ける言語です。多くの金融機関がアプリケーションの大部分を Java および C# 言語で記述しているのはそのためです。これらの言語は、他の多くの言語ではできない保守可能なオプションを提供します。
人気の言語:スカラ、Java、C#
代理店、メディア、広告、デザイン
クリエイティブな作業に必要な全体的なデザインプロセスでは、プロトタイプを迅速に作成できる言語の需要が高くなります。これに最適な言語は、通常、動的で、最大限の機能を実現するための最小限のコード行を含むスクリプト言語です。パターンと基礎となるコード設計要素はそれほど重要ではありません。これには、Ruby、PHP、JavaScript などの言語が鍵となります。
近年、モバイル テクノロジーが有力なコンピューティング メディアになりつつあるため、これらのプラットフォーム向けの開発に重点が置かれています。特に代理店やデザイン会社では。このため、ペースの速いプロトタイピングには理想的ではないいくつかの言語がより頻繁に使用されるようになりました。 Android モバイルには Java を、iPad、iPhone、iPod などの iOS デバイスには Objective-C を考えてみましょう。
人気の言語:Ruby、PHP、JavaScript、Java、および Objective-C
エンタープライズ アプリケーションと運用ソフトウェア
企業において鍵となるのは、再利用可能なパターンベースの大規模大規模システムであり、多くの場合複雑で、階層化されたアーキテクチャ設計アプローチが必要です。ここで Java と C# が威力を発揮します。サーバーとフレームワークのサポートの大規模なエコシステムにより、これら 2 つの言語はエンタープライズ規模および開発実践に最適です。
人気の言語:Java と C#
リーン スタートアップと小規模ソフトウェア ビジネス
新興企業や中小企業は厳しい現実に直面しています。彼らは生き残るために、非常に速い速度で絶えず方向転換し、変化し、適応しなければなりません。多くの場合、これは最小限の予算で実現されます。他の多くの企業がソフトウェア パッケージにわずかな変更しか加えないか、まったく変更を加えない場合でも、小規模な企業はプロトタイプを作成し、アプリや設計を何度も繰り返す必要があります。
このため、中小企業や新興企業は、非常に高速なプロトタイピング、広範なフレームワークのサポートを可能にし、言語に関する強力なコミュニティと「ハッカー精神」を備えた言語を求めることがよくあります。このため、スタートアップや中小企業は、Rails や Sinatra フレームワークに対して動作するように構築された Ruby のような言語を使用することになります。また、PHP スクリプト言語もあり、プロトタイピングと展開を迅速かつ簡単に行うための多くのフレームワークもサポートしています。そして最近では、Node.js の出現により JavaScript がその分野に参入しました (Node.js は、開発者が Web アプリケーション全体を Javascript だけで構築できるようにするサーバー側テクノロジです)。特に、Ruby、PHP、JavaScript に関しては、熱心な開発者が集まる非常に大規模なコミュニティが存在します。
人気の言語:Ruby、PHP、JavaScript
研究開発、科学、学術
科学研究と学術界では、高精度の数学、極めて高速な実行をサポートし、言語の実装とオブジェクト指向などの特定の組織特性を重視した言語が必要です。こうしたニーズのため、学術コミュニティや科学コミュニティでは、数学的計算には Scala などの言語、重い処理には C++、さらには Erlang や Python などの言語を使用してタスクを実行することがよくあります。ほとんどのタスクは単一の結果に重点を置いているため、これらの言語はほとんどの環境で簡単に選択できます。
人気の言語:Scala、C++、Erlang、Python