UbuntuとRiderとC# GUIアプリの開発
Ubuntu上でC# GUIを開発する時いろいろなIDEやフレームワークがあり、それぞれに長所と短所がある
開発環境
Ubuntu 18
Rider
.net5
要件 | 理由 |
---|---|
.net Core Sdkで開発したい | 開発者が多い monoより.net Coreの方が検索でヒットする |
glade gtk3を利用したい | Gtk3が.net Coreに対応している |
VisualSutdio風のIDEを使いたい | Windowsで使い慣れている |
IDEとフレームワークの種類
IDE | SDK | エディター | デザイン | デメリット | 費用 |
---|---|---|---|---|---|
MonoDevelop | Mono | VisaulStudioに慣れていると使いづらい | Gtk2 MonoDesiner | .net coreが利用できないっぽい? IDEの見栄えが悪い | 無料 |
VisalStudio Code | .net Core | VisaulStudio風にカスタマイズすれば近づけるが手順が多く煩雑 抜けが発生する | Gtk3 glade | いろいろ拡張機能をインストール必要がある | 無料 |
JetBrains Rider | .net Core Mono | Visual Studio風で使いやすい 便利な機能が既に組み込まれている | Gtk3 glade | 毎月料金が発生する | 月1600円 |
開発環境がすぐ構築できそうななので
Riderを利用することにした。
とりあえず試用期間30日を利用してみる
JetBrains Riderをインストールする
$ sudo apt update
$ sudo apt install snapd
$ sudo snap install rider --classic
$ rider
Riderを起動する
Ubuntuの環境でConsoleアプリの開発環境がすぐ出てくるRiderの日本語化
Settings/Preferences→Plugins→Marketplace より “japanese” を検索して見つかる”Japanese Language Pack”をインストールする
標準で.net Core がインストールされている。
三角のボタンをクリックするとビルドができます。
Nugetはどこにあるのか?
左下にありました。右クリックからソフトをインストールできます。エラーが出たときに最適なライブラリをNugetから検索してくれる機能
ライブラリがインポートされていなくてエラーが出た時に、右クリックから最適なライブラリをNugetから検索してにいってくれますオリジナルDllを読み込む
Assmbliesで右クリック - Add Reference画面 - Add Form から Dllを選択する
Dllがソリューションに読み込まれます。
GladeとGTK3を組み合わせてGUIアプリを作る
GTK+-3.0をインストール。
$ sudo apt install libgtk-3-dev
Gtk3デザイナ gladeをインストール。
$ sudo apt install glade
GladeはGUIをデザインするソフトです。日本語にも対応しています。このGladeファイルと
Riderと.net Coreを併用してGUIアプリを開発していきます。
gladeチュートリアルサイト
追記 注意
GTK3には.net CoreとMonoでビルドしたもの両方があります。
gtk-sharp Mono版
GtkSharp .netCore版
アイコンとハイフンがあるかで見分けられます。
mono ハイフンあり gtk-sharp
.net core ハイフンなし GtkSharp
MonoでビルドしたものはMonoのRunTimeで動いています。
monodocなどdllはmonoでビルドしたものしか動きません。
検索した時、名称と中身が逆になっていることがある
Gitにオープンソースを活動している方はRiderを無料で使用できます。
Author And Source
この問題について(UbuntuとRiderとC# GUIアプリの開発), 我々は、より多くの情報をここで見つけました https://qiita.com/iota_11/items/1628c104acb6c937534e著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .