回答:
ウイルス対策ソフトウェアが必要です
これらの回答では、開発者がよく知っているか、既知の良いサイトなどから必要なソフトウェアのみをインストールする必要があると何度か言われています。したがって、ウイルス対策が必要な場合、技術的な問題ではなく社会的な問題があります。その上でいくつかのポイント:
私の推薦
フォグクリークでは、ESET NOD32を使用しています。
Symantec、Kaspersky、Norton、ZoneAlarm、Avast、およびAVGをテストしました。それらのすべてに顕著なパフォーマンスの問題があり、その多くは開発者にとってはまったく使用できませんでした(デバッガーのブロック、システムコールへのフック時の問題など)。
NOD32は1年近く展開されており、1つの開発者がトラブルに遭っただけです(構成オプションを確認することで修正されました)。それは目立ったパフォーマンスヒットを引き起こさず、ツールに干渉しません。また、信じられないほど簡単にセットアップできます。デスクの快適さから、すべてのワークステーションとサーバーに1日中展開しました。
NOD32で発生した唯一の問題は、評価期間中にVMWare Workstationを実行したときの大きなパフォーマンスヒットでした。すべてのVMWareファイルをリアルタイムスキャンから除外すると、問題はなくなりました。
次の点を想定して、これらのマシンにウイルス対策ソフトウェアをインストールしません。
開発マシンでは最大のパフォーマンスが必要であり、ウイルス対策ソフトウェアはパフォーマンスの反意語として知られています。このウイルス対策は効果的ではありません。
ここにいくつか意見があります...
明らかに、ウイルス対策のポイントは、必ずしも最速である必要はなく、単に最も効果的であることです。私はシマンテックを好みますが、それぞれが彼自身のものです。
できることの1つは、開発フォルダー(つまり、C:\ Development)または何かに対してリアルタイムスキャンの除外を行うことです。そのように、コンパイルごとにリアルタイムスキャンを行うわけではありません。ほとんどのウイルス/マルウェアは、とにかくC:\ Developmentフォルダーに何も入れません(99%の確率でProgram Files、Windowsなどに侵入します)。代わりに、開発フォルダーで1日に1回スキャンを実行するようにウイルス対策を構成します。
一方、通常、開発者はかなりコンピューターに精通しています(願っています)。したがって、その場合、このタイプの環境でアンチウイルスが必要かどうかはわかりません。ここで一番いいのは、電子メールやウェブサーフィンなどではなく、開発専用のマシン(仮想マシンなど)です。これにより、明らかにスキャンのオーバーヘッドなしで最速のパフォーマンスが得られます。
ここには複数の変数が含まれているのは明らかであるため、1サイズのすべてに適合する応答はありません。これらの変数は次のとおりです。
セキュリティの委任を含むポリシー(企業が設定したAVを実行するための要件など)は、この決定を問題にしない場合があります。
これが、制御された環境または制限された環境に展開されているアプリケーションである場合、テストベッド用にその実稼働環境を複製することをお勧めします。
ただし、これが「野生に」リリースされるアプリケーションである場合、すべての可能な本番構成をテストする方法は明らかにありません。
正式なテスト/ QAチームと環境、またはビルドサーバーさえあれば、これはおそらく開発者のマシンではなく、実稼働環境を模倣するのに最適な場所です。
これはそれ自体すべての本ですが、セキュリティ上の懸念は、開発者のマシンに対する特定のトレードオフを上回る場合があります。これは次のようなものに依存します。
ここで明らかなのは、ウイルススキャナーによって導入されたCPUおよびI / O税による開発中のパフォーマンスヒットです。潜在的な影響はそれほど明白ではありません:-ウイルス/トロイの木馬/マルウェアの収縮とその後の除去に関連するダウンタイム-継続するようにユーザーに検出して通知するAVソフトウェアが存在しない場合のウイルス/マルウェアのパフォーマンスへの影響存在するウイルス/マルウェアを処理します。
仮想マシンを使用している場合、開発イメージがある場合、または定期的なバックアップがある場合、このダウンタイムの可能性はわずかです。開発者が(ウイルスの重大度に応じて)マシン上のすべてをゼロから再インストールして再構成する必要がある場合、ダウンタイムは重大なペナルティになる可能性があります。
開発者のマシンがウイルス/マルウェアに感染する可能性は、非常に大きなワイルドカード/不明です。ただし、閉じたネットワークで作業しており、外部メディアをあまり持ち込まない場合、すべてのマシンがインターネットに直接接続されている場合よりも明らかにリスクが低くなります。
開発環境がMac OSXまたはSolarisまたはLinuxなどである場合、収縮の可能性はWindowsプラットフォームよりもはるかに低くなります。
また、開発の性質自体が潜在的に安全でないトラフィックに対する開発者のマシンの露出を増加させる場合、これは収縮の可能性を増加させます。
上記の変数(およびおそらくそれ以上)のこれらのステータスに基づいて、いくつかのオプションがあります(セキュリティの向上、パフォーマンスの順序の低下)。
これら4つのオプション(仮想マシンの使用を伴うオプションなど)には明らかに多くのバリエーションがありますが、これは主要なオプションをカバーしていると思います。
価値のあることのために、私は個人的に職場でSymantec Corporate、自宅でAvast Free Editionを使用しています。仮想マシンのフォルダー/ vmdkファイルのみを除外して、リアルタイム保護を有効にしています。ホストでの開発とゲストでの開発の一部を行います。私は、Windowsプラットフォーム用のC#およびネイティブC ++開発を行っていますが、パフォーマンスのペナルティは管理可能です。
実稼働環境と同じAVソリューションを展開します。この方法では、1つの管理インターフェイスがあり、特に新しいバージョンでは各バージョンにますます多くの侵入防止対策が組み込まれているため、影響についてリンゴごとの比較ができます。結果として、あるAVソリューションが別のAVソリューションと同じように反応しない場合があります。
ESET NOD32は、私が見つけた中で最も軽い(CPU使用率の観点から)アンチウイルスプログラムです。また、AV-Comparativesにより優れたプログラムの1つとしてランク付けされています。開発ディレクトリまたはVMディレクトリを必ず除外してください。問題はないはずです。
これらのマシンでのリアルタイムスキャンは間違いなく必要です。
私はしばらくゲームから外れましたが、私の知る限り、カバーする3つの主な表面は、フロッピーやUSBストレージ(主にブートセクターウイルス)、電子メール(主にトロイの木馬)、ネットワークサービス(ワーム)などのリムーバブルメディアによる感染です)。開発用マシンにはおそらく3つすべてが搭載されるでしょう。
routeNpingmeが提案する、リアルタイムスキャンのファイルシステムスキャンに関する特定の例外についてアドバイスします。
私はカスペルスキーを使用していますが、自動更新を実行していない限り、デスクトップのパフォーマンスに影響はないようです。それは私が知っていて使用した中で最も防弾のアンチウイルスです。
ウイルス対策ソフトウェアをインストールしたくないが、平均的な開発者(および開発者の90%が意味する)は必ずそれを必要とします。ほとんどの問題を解決するソースコードが存在するフォルダーを除外する
個人的には何もしません。OS Xがあり、VMでVisual Studioを実行しています。感染したことは一度もありませんが、VMを定期的にバックアップします。Windowsの問題が発生した場合は、常に新しいVM(すぐに使用可能)を取得し、SVNチェックアウトを実行して15分以内に作業を開始できます。
私は、レジストリをいじっている間にVistaマシン(仮想)を壊し、上記のことをしなければならなかったことに気付きました。VMがスナップショットをサポートしていない(VMWareがサポートしている)場合、またはバックアップしたVMが「最新」でない場合は、苦痛になります。
ClamWinはリソースに非常に軽いようです。マシンのパフォーマンスに顕著な影響はありません。
コンピューターにウイルス対策ソフトウェアをインストールしますが、開発者にスキャンの有効化と無効化、除外ディレクトリの設定などの許可を与えます。 VS2005 +)彼らはそれをオフにすることができます。その後、スキャンを実行する場合にオンにするオプションがあります。
両方の長所。