完全な開発プラットフォームとしてのLinux?

完全な開発プラットフォームとしてのLinux?

私のFedora Linuxで次のことができることを願っています。

  1. Linuxを完全な開発プラットフォームとして使用すると、他のオペレーティングシステムをインストールする必要はありませんが、他のプラットフォームでプログラムをビルドしてテストできます。

  2. Office、ペイント、リモートデスクトップなど、他のすべての作業のためにWindowsシステムを完全に交換します。

上記の目標を達成するオープンソースプロジェクトとツールを提案できますか?

答え1

「プラットフォーム」を定義します。クロスコンパイルを使用してLinux上でソフトウェアを構築できますが、実際にそのオペレーティングシステムを実行しない限り、WindowsまたはMacで使用するソフトウェアを合理的にテストすることはできません。 VMwareは、他のオペレーティングシステムでの実際のテストに最適なツールです。

質問の2番目の部分はおそらく完全に別の質問でなければなりません。ただし、MS Office、Pinta、GIMPの代わりにOpenOffice.orgまたはGoogle Docsを使用するか、リモートデスクトップなどの代わりにPaint、VNC、またはEmpathy + Vinagreの代わりに他のものを使用できます。

より具体的なユースケースを提供すると、これらの質問に答える方が簡単になります。

答え2

システムプログラマー、Web開発者、デスクトップアプリケーション開発者であれば、クロスプラットフォームを簡単に開発できます。システムに興味がある場合は、Linux用に書かれたすべてのユーティリティーおよび/またはドライバーは、おそらく最小限の修正で他の* nixで機能するでしょう。標準のCコードを書いていて、システム固有の呼び出しをあまり使用しない場合は、Windowsに簡単に移植できます。

デスクトップアプリケーション開発者はGTK、QT、またはwxWidgetsをターゲットにすることができ、アプリケーションは現在3つの主要プラットフォーム(*nix、Windows、Mac)でうまく動作する可能性が高いです。同様に、システム固有の呼び出しを最小限に抑えるか、システム固有のラッパーライブラリに分離します。また、アプリケーションを完全に実行できるようにする仮想マシン(JVMやCLRなど)をターゲットにすることもできます。

Web開発者であれば、おそらくさまざまなオプションに触れたでしょう。私は次のような小さなWebサーバーを好む。チェロキー語私はASP.NET(Mono)とその上で実行され、PgSQLバックエンドを使用するDjangoアプリケーションを開発して実行します。

したがって、結論は、ターゲットプラットフォームでコードをコンパイルし、コードを書いている間にそれを念頭に置くことができ、ターゲットが仮想マシンである場合、Linuxでクロスプラットフォーム開発を実行できることです。もう一つのポイントは、お会いできることです選択のパラドックスそして何を使うべきかわかりません。これを行うには、以下の2番目の質問に対する答えを読んでください。

2番目の質問に関して私が見つけた最高のリソースは次のとおりです。オープンソースの代替。このウェブサイトには、商用ソフトウェアとそのオープンソースの代替案がリストされています。ほとんどすべての選択肢はLinuxとFreeBSDで動作します。

答え3

Weeeeeeeel、#1は本当に素晴らしいです先生。私はこれを達成する方法がわからない。他の *nixes でクロスコンパイル可能 (少し頭痛)開発ボックスにありますが、適切なオペレーティングシステムとアーキテクチャがない場合は、そのコードをどのように実行する必要がありますか?広範な試みがありました。システムシミュレーションそこにありますが、最終的に障害物になります。 OS/アーキテクチャでソフトウェアをテストするには、そのOS/アーキテクチャで実行してください。

一方、さまざまな構成で同じプロジェクトを簡単に構築できるツールがあります。 翻訳者おそらく最もよく知られ、よくテストされているでしょう。少なくとも、これは他のシステムでプロジェクトをテストしたり、他のシステムでテストすることをお勧めします。

正直なところ、他のオペレーティングシステムでもこれは不可能だと確信しています。

#2 簡単になる

など。私はもっ​​と役に立つでしょうが、あなたの問題の重大度が急激に低下しました。

答え4

単一開発開発知識を習得するのに役立ちます。

MonoDevelopは、主にC#および他の.NET言語用に設計されたIDEです。 MonoDevelopを使用すると、開発者はデスクトップとASP.NET Webアプリケーションをすばやく作成できます。LinuxWindowsそしてアップルコンピュータ。 MonoDevelopを使用すると、開発者はVisual Studioで作成した.NETアプリケーションをLinuxに簡単に移植し、すべてのプラットフォームに対して単一のコードベースを維持できます。

(強調は私のもの)

関連情報