プログラマーに必要なWindowsに欠けているデフォルト機能は何ですか?[閉まっている]


13

プログラマの生産性を向上させることができるWindowsに欠けている機能。多くの人がLinuxやOSXの機能をWindowsに移植したり、Windows用に作成したりすることを望んでいることを知っています。あなたには何が欠けていますか?

例は、複数のワークスペースを持つオプションです。便利なデュアルモニターを使用する可能性がない場合。


複数のワークスペース?つまり…サブディレクトリ?
Shog9

10
@ Mr.CRT linuxを使用したことがありますか?
イグレック

7
「ワークスペース」とは、仮想デスクトップを意味すると思います。
ジェシーブキャナン

@Ygrec:はい。jbintoが推測するように、仮想デスクトップを意味する場合、それが重要なプログラマーツールとしてどのように評価されるのかわかりません。画像編集などのタスクには非常に便利ですが、一度に複数のコンソールを開いてプログラミングするだけで十分です-両方のOSがそれをサポートします(利用可能なシェルの悲しい...違いはありますが)。
ショーグ

gnomeとkdeはどちらも、仮想デスクトップの機能を、最も一般的なLinuxデスクトップ環境であるtomato / tomatoであるワークスペースと呼びます。
クォータニオン

回答:


14

コンパイラと便利なシェル。


コメントに基づく明確化:

私ははっきりしていませんでした、C / C ++コンパイラを書くべきでした。必要なツールとライブラリの多くはCまたはC ++コンパイラを必要とするため、C#またはFortranのコンパイラは考慮されません。以前は非常に悪く、Microsoft以外のコンパイラでPythonのC拡張を構築できませんでした。これはPythonでコンパイルされたものだからです。 20年前に標準のC / C ++コンパイラが含まれているか、無料で提供されていた理由。マイクロソフトは最近、多くの趣味のプログラマーを利用できることの力を理解し始めたばかりです。

私はPowerShellを使用していません、多分それは良いです。しかし、bashの有用性はシェル言語にはありません。とにかく* sh言語ファミリーは恐ろしい獣です。バッチファイルも好きです。;)コマンド履歴のリコールと検索のようなもので、Windowsでは比較的基本的であり、パイプラインを持っています。

Windowsにも良いことがありますが、それは別のトピックです。;)


2
通常、Linuxディストリビューションには、いくつかのコンパイラーとインタープリターがバンドルされており、さらに多くのパッケージマネージャーから入手できます。
david4dev

1
@Victor Hurdugaci:あなたはそこにポイントを持っていますが、最も重要な欠落しているものはもちろんC / C ++のコンパイラです。
レナートレゲブロ

4
確かにこの答えは時代遅れです-Windows 7でコンパイラと妥当なシェル(powershell)を入手します。
FinnNk

1
@Matt:まあ、それはあなたの言語偏見です。Microsoftの言語以外にも、他の言語ですぐに利用できる無料のコンパイラが多数あります。言語をプッシュしていると非難することはないでしょう。
ロバートハーベイ

4
確かに便利なシェル。2010年には、コマンドプロンプトウィンドウを最大化することはできません。WTF ?!
コリンゴーディ

10
  • 余分なものをインストールすることなく、さまざまな言語(C、C ++、Python、Perl、Rubyなど)でプログラムを作成および実行する機能。
  • デフォルトでインストールされた構文強調表示付きのテキストエディターが少なくとも1つある。
  • 追加のライブラリ、バージョン管理システム、IDEなどを簡単にインストールできるパッケージマネージャー
  • 強力なコマンドラインインターフェイス。
  • GUIを微調整して最大の効率を実現する機能(キーボードショートカット、ホットコーナーなど)
  • マンページ
  • オペレーティングシステムとソフトウェアパッケージのソースコードを簡単に入手してライセンスを許可し、再利用できるようにします。
  • 控えめなハードウェアで良好なパフォーマンス。

2
「オペレーティングシステムとソフトウェアパッケージのソースコードを簡単に入手し、ライセンスを許可して、再利用できるようにします。」何?
イグレック

2
apt-get source package-name特定のソフトウェアパッケージがどのように機能するかを知りたいときはいつでも。
david4dev

4
私はあなたの最初の点に同意しません。みなさんが満足することを期待して、さまざまなエディター、コンパイラー、ランタイム環境でOSを肥大化させる理由 各プログラマーが必要なものをインストールできるようにした方が良いです。
ビクターHurdugaci

3
@Victor Hurdugaci:Windows 明らかに何も肥大化していないのであれば、それは本当です。典型的なLinuxインストールは1桁小さく、これらすべてが付属しています。
マットジョイナー

2
(1)Ubuntoをインストールしたばかりで、Windowsと同じように言語と開発ツールを個別にインストールする必要がありました。(2)メモ帳は実際、不適切なデフォルトのエディターです。TextPadはスイートスポットに近づいています。(4)Windowの全体的なキーボードサポートは、私が使用したどのLinuxデスクトップよりも優れています。。私もプラグインマウスなしでデスクトップとほとんどのアプリケーションを動作させることができます
マッド

4

私はWindows向けに20年近く喜んで開発してきたので、タイトルから「必須」を削除するかもしれません。もちろん、ユーティリティとツールの非常に優れたツールボックスを開発しました。まずはScott Hanselmannのリストをご覧ください。それは一流であり、2003年まで振り返ります。

ちなみに、Windows 7にはPowerShell含まれており、これが "適切なシェル"コメントに役立ちます。

とは言うものの、より良いツールが組み込まれていることは常に良いことです。Scottのリストにあるツールを使用してください。

現実的に、MSは確かにregedit、task mgr(プロセスモニターを参照)、イベントパフォーマンスビューアーツールなどの多くの組み込みツールのUIを改善できます。複数のクリップボードのサポートが組み込まれていると便利です。OSXから公開したいのですが、マルチデスクトップサポートは良好です。Windowsがネイティブ(より簡単に)テキストボックスからのテキストのドラッグをサポートしていると便利です。

XCodeはIMOを本当に吸い込むので、Windowsでそれを望まないでしょう。VSははるかに優れていますが、ビルトインされていないので、アップグレードが可能なビルトインVS Expessがあります。もちろん、OSフットプリントは(OSXのように)これで大きくなるため、欠点もあります。

分散gccは非常に優れているため、コンパイラが使用する組み込みフレームワークとして非常に歓迎されます(VSソリューションについては、Incredibuildを参照してください)。

OSのチェックビルドを取得して使用し、問題を発見する方が簡単であると便利です。デバッグケーブルを使用することは、Checked Buildから得られる優れた情報にとっては少し極端です。VMはこれを簡単に行うことができます-もしそうなら、誰かがリンクでコメントしてください。


うん、基本的なIDEが特にいいでしょう。中程度にOKのテキストエディターがスタートに失敗するでしょう。
FinnNk

@FinnNk、「適度にOK」のテキストエディターにはどのような要件がありますか?

構文の強調表示、正規表現の検索/置換、複数のウィンドウ、表示可能な空白、行番号付けのサポート-だから、emacsのようなものは考えていません(オプションとしては良いと思いますが)。実際にはテキストエディターではありませんが、最近の.netコードのほんの一部では、LinqPadをよく使用しています。
FinnNk

4

BASH、sed、grep、awk、find、ssh


私はそれらのほとんどをWindows上で実行しました...そしてpowershellで上記のほとんどを行うことができます。
マーフ

2
xウィンドウをサポートするssh;)Bashは強力ですが、その下のすべてはカスタマイズ可能です。シェルは、操作できるリソースと同じくらい強力です。
クォータニオン

いつプログラマーにawkとsedが必要になるのですか?
ダイナミック

2
  • 複数のオブジェクトのコピー/貼り付け
  • 書式なしで貼り付け(フォント/サイズ情報なし)

3
+1(フォーマットなし)。私は常にWebページまたはメモ帳のテキスト領域に貼り付けてから、テキストスタイルを削除するために切り取ります。
マクニール

3
Windowsはプレーンテキストの貼り付けをサポートしており、アプリケーションはオプションとしてそれを実装するだけです。
GrandmasterB

1
@GrandmasterBそれから、フォーマットのないクリップボードをデフォルトにすることが望まれます。
ペスター

2

UIをさまざまなレベルに基づいてユーザーの知識に変更する機能。

たとえば、開発者/管理者として、UIの専門家レベルが必要になる場合があります。


1

Unixファイル処理ツール(wc、sort、uniq、awk、cat、grep、findなど)-他の人が言及したように-良いシェル(例:bash)

Windowsで生産性を上げるために、関連するテキストを扱うときは、最終的にUnixコマンドツールボックスに移動する必要があります。幸いなことに、Cygwinはまさにその目的のための優れたリソースです。

とはいえ、Windowsファイルシステムでうまく動作するにはCygwinを「飼いならす」必要があります。いくつかのデフォルト設定を上書きしない限り、削除するのが難しい厄介な権限を持つファイルを取得できます。基本的なニーズをはるかに超えており、VMまたはデュアルブートを使用した方が良いと思いますが、私の目的ではCygwinに非常に満足しています。


0

私は他の投稿に同意します:

X転送とWindowsリモートデスクトップのsshが恋しいです。知らない人のために、ネットワーク上でデスクトッププログラムを実行できますが、ローカルウィンドウのように機能します。


0

長いコマンドライン引数のサポート。Microsoftのビルドシステムを使用しない複雑なJavaソリューションを構築すると、問題がすぐに発生します。


0

valgrindそしてgcov

Windowsでの開発(趣味として)にPowerShellを使用し、GnuWin32ツール(sed、awk、grepなど)とPythonをインストールして簡単なスクリプトを作成しました。そこで問題はありません。

しかし、自分のプログラムを検査したいときはいつでも壁にぶつかります。

  • どのようにメモリリークを見つけるのですか?
  • どのようにメモリの占有を識別するのですか?
  • ホットスポットをどのように識別するのですか?
  • コードの未使用/未テストの部分をどのように識別しますか?

私はあちこちでいくつかのツールを見てきましたが、StackOverflowに良い質問があり、リストされているツールの数はかなり恐ろしいです...そしてそれらの制限も。

Linuxは開発者向けに開発者向けに作成されているため、開発者にとって使いやすいツールがはるかに多くあります。


0

履歴機能でコピー/貼り付け。

幸いなことにClipXはソリューションを提供します。

ClipX

PS私はClipXと提携していません;)


-1

適切なシェルとコンパイラーは、「デフォルト」機能に関する限り、良いスタートです。


csc.exeは.NETフレームワークに含まれています。それを使用してC#コードをコンパイルできます。
ビクターHurdugaci

@Victor:それは標準のWindowsに含まれていますか?
ジョシュK

はい。.NET 3.0はWindows 2008およびVistaに同梱されており、3.5はWindows 7に同梱されています。
Victor Hurdugaci

3
Windowsの現在のバージョンについて話している場合、この答えは意味がありません。コンパイラとPowerShellの両方を入手できます。
FinnNk
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.