質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.52%

  • MacOS(OSX)

    1896questions

    MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。

  • Windows

    1437questions

    Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

Macで開発できるまでの手間が少なくて、MacとWindowsで動作するGUIのTwitterクライアントを作るにはどの言語が良いでしょうか。

解決済

回答 2

投稿

  • 評価
  • クリップ 2
  • VIEW 1,421

takets

score 31

 ■ゴール 
送信ボタン押下するとテキストボックスの文字列がTwitterに投稿される機能のみがあるGUIの投稿専用クライアントを、
MacとWindows環境で動作するものを作りたい。

 ■前提 
GUIの知識はゼロ。
普段はPHPのsymfonyで開発をしている。
Macでの開発はしたことがないため、環境構築から行う必要がある。
勉強を兼ねるため、言語は問わない。

 ■質問 
GUIのデザインを含めて、Mac環境で開発するにはどの言語とライブラリを使用すると
開発を進めやすく、ドキュメント等が充実しており調べやすいかをお教えください。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 2

checkベストアンサー

+6

WindowsとMac両方動作するマルチプラットフォーム向けのデスクトップアプリを作る場合、選択肢は結構少ないです。

Electron

Node.jsとChromium(Google Chromeのコア部分)を使用して、Webアプリのようにデスクトップの作成が可能。GUI部分はブラウザでWebページを表示するのと同じ仕組み(HTML+CSS)のため、Webページを作る技術があればそのままGUI部分が作れてしまう。

言語: JavaScript (+HTML+CSS)
利点: JavaScriptとWeb技術がある程度わかれば作成できる。流行っている。
欠点: バイナリがでかい(Google Chromeが丸ごと入っているようなモノだから)。

Qt

マルチプラットフォームなGUIライブラリ(ツールキット)。QtCreatorという扱いやすいエディタもあるので、(C++がわかれば)簡単にGUIが作れる。LinuxではGTKと並んでデファクトスタンダードになっている。

言語: C++ (それ以外もライブラリ経由で多数使用可能)
利点: 高速かつネイティブなGUI。
欠点: C++という敷居の高さがネック。他言語用のライブラリがあるが、ちゃんと作るにはC++の方がよさそうなので、お手軽とは言えない。一部の機能が有償だったり、商品に組み込む場合はライセンス費用が必要だったりする。

GTK+

もともとはGIMPを作るために作られたGUIライブラリ(ツールキット)。GIMPと同じ独特のインターフェースを持つが、今は色々スキンを変えれるはず。LinuxではQtと並んでデファクトスタンダードになっているが、最近はQtに推され気味の雰囲気。

言語: C (それ以外もライブラリ経由で多数使用可能)
利点: ボタンとかがGIMPっぽい。というか、GIMPそのもの。それがまたいいような気がする。
欠点: ボタンとかがGIMPっぽい。というか、GIMPそのもの。なんかダサいような気がする。

Java + JavaFX or Swing or AWT or SWT

Javaで動くGUIライブラリ。最新のJavaではJavaFX/Swing/AWTは標準で入る。SWTはEclipse用に開発されたモノで、プラットフォーム毎にライブラリを用意してネイティブに動作するため、速い。

言語: Java (ScalaやKotlin等のJavaVMを使える言語も可能)
利点: Javaというところ。SWT以外は一つのバイナリで全てのプラットフォームで動作する。
欠点: Javaを入れておいて貰う必要がある。JavaVM毎配るという手段もあるが、でかくなるし、ライセンスの再配布条件に注意が必要。

.NET + Xamarin.Forms or GTK#

.NET用のGUIライブラリ。.NET標準でSystem.Windows.Formsというのも一応あるのだが、文字化けとかするのでまともに使えるかはわからない。Xamarin.FormsはXamarinが作ったモノで商用向けというのもあって、いけてる…らしい。GTK#はGTK+を.NETに移植したモノ。

言語: C#などの.NET Framework言語
利点: .NET FrameworkであるためWindowsとの親和性が高い。Xamarin.FormsはWindowsストアアプリも作れるようだ。開発環境にVisual Studioが使える。
欠点: .NETを入れておいて貰う必要がある。Windows標準の.NETには上のGUIライブラリ入っていないため、同じく別途入れておく必要がある。Xamarinは一部有償(企業で使う場合は特に注意)。

wxWidgets

マルチプラットフォームなGUIライブラリ(ツールキット)を作ろうと言うことで作られたモノ。各言語用にライブラリが用意されている。さわったことがないため、よくわからない。

言語: 多数 (本体はC++)
利点: よくわからない。
欠点: よくわからない。

Tk

古くからあるGUIライブラリ(ツールキット)。というか、名前がそのままツールキット。Tclを拡張したモノだったため、Tclと一緒によく使われる。

言語: Tcl、他多数
利点: 枯れている。
欠点: 古い。(一応、更新はされているようだが)

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/02/12 21:05

    ありがとうございます。
    GUIライブラリが網羅されており、非常に参考になりました。

    キャンセル

0

Electronとか。

【Electronの手習い〜Electron環境からパッケージ化まで〜 - Qiita】
http://qiita.com/tagosaku324/items/c720499080d523bbe1d7

【30分で出来る、JavaScript (Electron) でデスクトップアプリを作って配布するまで - Qiita】
http://qiita.com/nyanchu/items/15d514d9b9f87e5c0a29

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/02/12 21:04

    ありがとうございます。
    ファイルサイズさえ気にしなければ、Electronは有望な選択肢となりますね。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.52%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

  • 解決済

    twitter 4j で1500件つぶやきを取得したい

    twitter4jを利用し、1500件つぶやきを取得したいのですが、 http://d.hatena.ne.jp/tetsuya_odaka/20130622/1371886944

  • 受付中

    android twitterAPI 後一歩、力を...

    Tweetしました。となるもののできていません。             try {                 こここここここここここここここここ             

  • 解決済

    Arduino 自動でツイート エラー404の原因は?

    自動で気温をツイートするものを作りたいと思い、  http://arms22.blog91.fc2.com/blog-entry-296.html  を参考に、メッセージの送信

  • 受付中

    twitter APIについて、認証方式について

    単純な質問です。 調べましたが、 ユーザ認証はoauth認証だとしかわからず、 アプリケーション認証のほうについては何もわかりませんでした。 ユーザ認証とアプリケー

  • 受付中

    フォロワー消したい

    ツイッターに関する質問です。フォロワーが表示される画面からフォロワーを消したい(表示されない状態にしたい)のですがどうすればいいか誰か教えてください。

  • 受付中

    【Twitter REST API】ツイートのidとid_strの値が異なる理由は?

    statuses/user_timelineを利用して特定ユーザーのツイートを取得しています。 (アプリケーション認証(ベアラートークン)を利用して行っています) データの取得

  • 解決済

    twitter APIの「website」、「callback URL」について

    twitter APIの「website」、「callback URL」についてですが、 現在Javascript、PHPの勉強中です。テキストを読んではサンプルなどのcod

  • 受付中

    Twitter Search APIについて

    Twitterアプリの検索のALL Tweetsと同じ検索結果を表示するためにはTwitter APIをどのようにすればいいのでしょうか? 例えばhogehogeと検索するときで

同じタグがついた質問を見る

  • MacOS(OSX)

    1896questions

    MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。

  • Windows

    1437questions

    Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

  • トップ
  • Windowsに関する質問
  • Macで開発できるまでの手間が少なくて、MacとWindowsで動作するGUIのTwitterクライアントを作るにはどの言語が良いでしょうか。