Ubuntuで.NETアプリを開発するにはどうすればよいですか?


38

大学では、Microsoft .NETを使用してアプリケーションを開発しています。最近Ubuntuに切り替えましたが、ubuntuでアプリを作成するための同様のツールを知りたいです。


4
PythonやC / C ++などの別の言語の学習を検討することを強くお勧めします。リポジトリ内の多数の(実際、おそらく大多数)アプリケーションは、これらの言語で書かれています。
ネイサンオスマン

2
別の言語を選択するのは非常に簡単ですが、(他のプログラミングスタイルに触れることを除いて)確かに必要ではないか、特に望ましくありません。
RAOF

Linuxを日常的に使用したいが、Monoの互換性の問題なしにC#を開発したい場合は、VirtualBoxにWindows仮想マシンを用意することを検討してください。
マークKコーワン

回答:


36

Ubuntuの.NETでもプログラムできます。まあ、ちょっと。MONOと呼ばれる.NETプラットフォームのオープンソース実装があります。MONOアプリはUbuntu / Linux、Windows、Mac OSで実行できます。Ubuntu Software CenterでMonoDevelopを探してください。UbuntuのMonoについて詳しく学んでください

もう1つのオプションはQuicklyです。私の意見では、Ubuntu中心のアプリ開発にはQuicklyの方が適しています。アプリをコーディングして、数分でPPA(launchpad-repository)にリリースできます。QuicklyはUbuntu Software Centerからも入手できます。Quicklyでアプリの作成を始めましょう


1
質問に答えるための+1。(個人的に私はモノが嫌いですが、まあまあです。)
ネイサンオスマン

3
あなたのmono-project.com迅速URLへのリンクポイント
マクダウェル

1
CLI(.NET)言語と標準ライブラリを問題なく使用できます。最近のUbuntuリリースのモノのバージョンは、C#3.0および(ほとんどの).NET 3.5をサポートしています。ただし、GTK#UIライブラリを学習する必要があります。System.Winforms&WPFアプリケーションはネイティブに見えず、WPFも完全には実装されていません。
RAOF

1
MonoDevelop IDEを選択する必要があります。GUI開発(* nixはWindowsでのドラッグドロップとWinforms / WPFにGTK#を使用)を除き、Ubuntuでの開発はWindowsでの開発とそれほど大きな違いはありません。
エヴァンプライス

@Owaisローン-答えに提供されたリンクは、それらを更新または代替品を追加してみてください働いていない
Chinmaya B

12

Pythonを使用してクールなアプリをすばやく作成できます(非常に簡単に習得でき、非常に人気があります)。


2
Python / Quicklyを提案するための+1。私はプロのPythonプログラマーであり、コンピューターでUbuntuを使用しています。Ubuntu(およびLinux全般)は、Python開発に最適です。
-codeape

6

Valaのの言語はC#に非常によく似たプログラミング言語です。それはまだ非常に若いですが、すでに既存のライブラリ(GTKなど)に多くのバインディングがあります。ネイティブバイナリにコンパイルされるため、ユーザーは.NETの場合のように追加のランタイムを必要としません。

C#プログラマ向けのValaの概要を参照してください。


あなたがubuntuをターゲットにしている場合、monoはプレインストールされているので、追加のランタイムは必要ありません。
トランプスター

1
Val#for C#へのリンクが機能しないようです。代わりにこれを試してくださいlive.gnome.org/Vala/ValaForCSharpProgrammers。Javaプログラマ向けのlive.gnome.org/Vala/ValaForJavaProgrammersもあります。
マークB

おかげでマーク、彼らは彼らのウィキを再構築したようだ、私は回答のリンクを修正しました。
-thbusch

5

アプリケーションプラットフォーム/言語を切り替えるというこれらすべての提案には理由がありません。慣れ親しんでいるものを使用すれば、他の言語の学習に時間を費やすよりも生産的になります。

Monodevelopは、Mono開発のより良い体験を提供します-Visual Studioはありませんが、Ubuntuで取得するモノに最適な統合IDEです。GTKフォームとそのコントロールの視覚的なデザインは大きな勝利です(WinformsがLinuxスタイルだと考えてください)。


2

Linuxには、リッチデスクトップアプリケーションを作成できるあらゆる種類のツールが用意されています。Bowlineは、rubyでデスクトップアプリケーションを作成できるmvcフレームワークです。Shoesは、Rubyでデスクトップアプリを作成できるもう1つのフレームワークであり、最も簡単なデスクトップアプリフレームワークです。


2

Qtの学習を開始します。C ++に基づいたフレームワークです。クロスプラットフォームであり、Windowsでも正常に動作します。Visual Studio用のアドインもあります。通常、KDEプラットフォームで使用されます。GNOMEの場合、GTK#を学ぶことができます。

ウィキペディアから、

Qtツールキットの代わりに、GTK +がGNOMEデスクトップのベースとして選択されました。


1
QtはGNOMEで動作します
dv3500ea

@ dv3500ea:あなたはそれを得なかった。QTはKDEアプリケーションの開発に使用されますが、QTによって構築されたアプリケーションがGNOMEで実行されないという意味ではありません。GTKアプリケーションがKDEで実行されるのと同じ方法。しかし、GTKを使用してKDEアプリケーションを構築することはできません
ユーザー

1
ただし、「KDEプラットフォーム専用」ではありません。
dv3500ea

1
QTはKDEアプリの構築には使用されません。QTはGUIの構築に使用されます。KDEはQTを使用してアプリを構築します。QTはGTKアプリの構築にも使用できます。
オワイスローン

私はここで完全に失われたと思います。コミュニティWikiとしてマークされました。ご支援と忍耐に感謝します。
ユーザー

2

Ubuntu専用のアプリを開発するには、Ubuntuの開発者向けWebサイトにアクセスしてください。とりわけできること:

Quicklyと呼ばれるフレームワークがあります。

QtとGTKに対する他の回答には、良い参考文献があります。ガイドラインの興味深い情報源は、Gnomeの開発者Webサイトです。

使用するフレームワーク/ IDEは、使用する言語によって異なります。UbuntuでMS Visual Studio Codeを使用できます。


1
私が始めた報奨金は、特にドットネットに関するものです。答えは非常に簡単です。あなたも、マイクロソフトのWebサイトから関連する更新部分を見つけることができます
アンワル

@Anwar説明と混同しました。.Netを実行するのか、それとも.Netのように開発するのかが明確ではありませんでした。2番目の解釈
ラモンスアレス

回答のその部分に詳細を追加してください。基本的なインストールプロセス含めるべきである
アンワル

@Anwar申し訳ありませんが、あなたのコメントがわかりません。
ラモンスアレス

2

常にMonoとCoreCLR(.NET Coreランタイム)を相互参照してください。さらに、Microsoftが.NETをオープンソース化した後CoreCLRおよびプロジェクトのMono関係に関する関係者と公式意見を集めたこの質問をご覧ください。

IT業界の巨人の良い点の1つは公式ドキュメントです。

次のコマンドは、最後に追加されたナレーションと意見を除いて、Ubuntuの.NET Hello Worldコンソールアプリケーションの入門からのコピーです。いずれかのコマンドが失敗した場合、上記のリンクを参照している可能性があります。

  1. 前提条件:Ubuntuでの.NET Hello Worldコンソールアプリケーションの使用開始。ここでの指示は、Ubuntu 16.04 LTSを実行していることを前提としています。

    UbuntuまたはLinux Mintに.NET Coreをインストールするには、まず、必要なパッケージをホストするapt-getフィードをセットアップする必要があります。したがって、これらのコマンドを使用してaptリポジトリをセットアップします。

    sudo sh -c 'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotnet-release/ xenial main" > /etc/apt/sources.list.d/dotnetdev.list'
    sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 417A0893
    sudo apt-get update
    
  2. .NET Core SDKをインストールする

    sudo apt-get install dotnet-dev-1.0.1
    
  3. サンプルのHello Worldアプリケーションを初期化する

    dotnet new console -o hwapp
    cd hwapp
    

    スタイルを見てください。Node.jsとして始めるのはほとんど簡単です。SpringBoot、Angular 2などのすべての新世代開発ツールのCLIツールに似ており、コマンドでHello Worldアプリを初期化できます。

  4. アプリを実行する

    dotnet restore
    dotnet run
    

    最初のコマンドはプロジェクトファイルで指定されたパッケージを復元し、2番目のコマンドは実際のサンプルを実行します。

  5. 最後に、少し複雑な手順を実行できても、UIが必要な場合は、他のC ++ / C#UIライブラリを使用するよりも簡単だと思います。.NETまたはNode.jsのいずれかを使用して、ElectronのWebブラウザと通信し、HTML5、CSSによるUIを提供することを選択できます。

    .NETおよびNode.jsを使用したElectron UI


賛成。あなたのMSリンクには、私が含めたいと思っていたものがすべてあります。リンクの重要な部分を答えに入れることができますか?
アンワー

確かに、賛成してくれてありがとう。マイクロソフトの2番目の質問のために、ここで本当に親切に扱われています。限り、Microsoftが彼らのオープンソースプロジェクトでニュートラルにしようとして、私はUnixのは、Windows 10上でバッシュと同じよう友だちとして、同様にそれらを歓迎すべきだと思う
エドワード・チャンJW
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.