全般的な開発トレンド

共有:

開発

どのような活動に関わっていますか?

90%

コーディング / プログラミング

51%

コードレビュー

42%

テスト

37%

システム設計

34%

デプロイ

25%

インフラ開発 / DevOps

17%

システム管理

開発環境にどのオペレーティングシステムを使用していますか?

64%

Windows

43%

Linux

42%

macOS

1%

その他

オープンソースプロジェクトに貢献していますか?

45%

いいえ。ただし、その意志はある

21%

数回だけ貢献したことがある

12%

はい。たまに貢献している

8%

はい。定期的に貢献している

7%

いいえ。また、その意志もない

4%

フルタイムでオープンソースコードに携わって対価を得ている

2%

フルタイムでオープンソースコードに携わっているが対価は得ていない

41%

オープンソースプロジェクトに貢献した回答者の割合。20% がほぼ定期的に貢献しています。

オープンソースプロジェクトに貢献している開発者数(国別)

55%

アメリカ合衆国

54%

ドイツ

53%

中東、アフリカ、中央アジア

53%

イギリス

52%

中国(本土)

51%

他の東南アジア、オセアニア

51%

インド

IDE またはエディターでどのようなプラグインを使用していますか?

48%

バージョン管理システム

46%

フレームワーク固有のプラグイン

40%

カスタム言語のサポート

37%

コード品質と解析

34%

UI/UX プラグインとテーマ

32%

生産性ツール

32%

デバッグツール

クロスプラットフォーム開発

クロスプラットフォームソフトウェアを開発していますか?

65%

いいえ

22%

はい。クロスプラットフォームのモバイルアプリケーションを開発している

17%

はい。クロスプラットフォームのデスクトップアプリケーションを開発している

クロスプラットフォームデスクトップアプリケーションはどのプラットフォームを対象としていますか?

88%

Windows

77%

Linux

53%

macOS

2%

その他

Maarten Balliauw

デベロッパーアドボケイト、JetBrains

デスクトップの使用では Windows の存在が非常に大きいですが、私は macOS のほうがシェアが大きいと思っていました。こんなに多くの人が Linux を対象としているのは興味深いですね。

クロスプラットフォームモバイルアプリケーションはどのプラットフォームを対象としていますか?

87%

Android

72%

iOS

55%

ウェブ

2%

その他

クロスプラットフォームデスクトップアプリケーションを開発する際、通常はどのようにして複数の異なるオペレーティングシステムやプラットフォームに取り組んでいますか?

50%

物理マシンまたはデバイスを使用している

49%

仮想マシンを使用している

19%

通常は複数の異なるオペレーティングシステムやプラットフォームに取り組んでいない

2%

その他

クロスプラットフォームモバイルアプリケーションを開発する際、通常はどのようにして複数の異なるオペレーティングシステムやプラットフォームに取り組んでいますか?

67%

ローカルで動作するエミュレーターを使用している

65%

物理マシンまたはデバイスを使用している

16%

リモートマシンで動作するエミュレーターを使用している

4%

通常は複数の異なるオペレーティングシステムやプラットフォームに取り組んでいない

1%

その他

モバイル

どのモバイルオペレーティングシステムを対象に開発していますか?

87%

Android

58%

iOS

3%

その他

モバイル開発に携わっている大多数の開発者が Android アプリケーションに取り組んでおり、半数以上が iOS 開発に関わっています。

どのようにモバイルオペレーティングシステム向けに開発していますか?

61%

ネイティブツールを使用している

49%

クロスプラットフォームテクノロジーとフレームワークを使用している

モバイル開発者の約半数がクロスプラットフォームテクノロジーを使用しています。Kotlin Multiplatform とその他 5 つの代表的なクロスプラットフォームフレームワークについては、こちらをご覧ください。

どのクロスプラットフォームのモバイルフレームワークを使用していますか?

46%

46%

Flutter

32%

35%

React Native

12%

10%

Unity

12%

8%

Xamarin

11%

9%

Ionic

セキュリティ

62%

安全なソフトウェア開発ライフサイクル(SSDLC)に従っている開発者の割合。

セキュア開発には、どのツールを使用していますか?

74%

IDE / エディター

39%

CI/CD

27%

課題トラッカー

13%

専門または専用のセキュリティソフトウェア

4%

その他

どの統合ソリューションを使用して、開発したソフトウェアのセキュリティを管理していますか?

58%

統合ソリューションは使用していない

26%

GitLab

5%

Snyk

5%

Sonatype

4%

JFrog

2%

Checkmarx

2%

Veracode

静的解析

業務ではどのようにしてコードの品質を維持していますか?

71%

手動でコードレビューを実行している

33%

自動コード解析 / 静的解析を時々実行している

33%

コミットのたびに自動コード解析 / 静的解析を実行している

2%

その他

あなたのプロジェクト / 組織で高品質なコードを維持するのに最大の障害となっているのは何ですか?

48%

時間の制約

38%

高い作業負荷

34%

チーム / 組織内で一貫していないコード品質ガイドライン

24%

社員が少なすぎる

19%

高度なツールの不足

17%

ツールが高価すぎる

12%

そのような問題はない

3%

その他

自動コード解析 / 静的解析にはどのツールを使用していますか?

62%

IDE / エディター

32%

ESLint

24%

SonarQube

16%

SonarLint

12%

Pylint

10%

Flake8

7%

SonarCloud

6%

Mypy

5%

PHPStan

5%

Ktlint

5%

Snyk

3%

Qodana

9%

その他

マイクロサービス

以下の質問は、マイクロサービスを開発している回答者にのみ提示されました。

34%

マイクロサービスを開発していると答えた回答者の割合。

システム設計ではどのようなアプローチを使用していますか?

82%

マイクロサービス

35%

サービス指向アーキテクチャ

20%

モノリスとウェブフロントエンド

12%

CQRS

8%

リアクティブストリーム

4%

アクターシステム

1%

その他

2%

該当なし

アプリケーションの分散部分はどのように通信していますか?

75%

REST / RPC over HTTP

48%

メッセージキュー

24%

WebSocket

24%

クロスプラットフォーム RPC

12%

GraphQL

10%

ストリーム処理

9%

独自の TCP / UDP 通信

8%

SOAP

3%

リモーティング

2%

その他

1%

該当なし

最後までご覧いただきありがとうございました!

レポートはお役に立ちましたか?
ぜひこのレポートを友人や同僚と共有してください。

ご質問やご提案がございましたら、surveys@jetbrains.comまでお問合わせください。