デスクトップアプリにHTML、CSS、JavaScriptが使用されないのはなぜですか?[閉まっている]


17

HTML、CSS、およびJavaScriptを使用して、美しく(そして便利な)UIを構築できます(特に、現在はHTML5とCSS3があります)。多くの人がすでにそれらを知っています。それはまだ私の手の届かないところですが、ウェブアプリ全体をデスクトップアプリに持ち込むことはどれほど難しいでしょうか?アプリをホストする前に、ローカルサーバーで既にテストしています。

私の意見では、それはデスクトップアプリにブームを引き起こす素晴らしい、シンプルなアイデアです。さらに、これらのアプリは既にWebアプリと非常に多くのコードを共有しているため、より良い接続性を提供できる可能性があります。

なぜ行われていないのですか?


15
これはWindows 8として発表されただけではありませんか?
ChrisF

SRY、あまり窓の愛好家の、私は正確を求めていますすることであるネットに接続して、はい、最終的には何かのMSからのパス破りのできるDBベースのデスクトップアプリケーションを開発するためのオープンソースのフレームワーク
kapv89

なぜ紙は車の製造に使用されないのですか?(ええ、それは悪いアナロジーの時間です:))
ヘイレム

@ChrisFこれはWindows 8でうまくいきましたか、それとも単なる誇大広告ですか?
developerwjk

回答:


30

AdobeはすでにAdobe Airで、MozillaもPrismで行っています。また、GoogleはGoogle Gearsを使用してデスクトップとウェブのギャップを埋めようとしました

しかし、一般的に、Webテクノロジーは多くの種類のデスクトップアプリケーションには適していません。その理由は次のとおりです。

  • すぐに利用できる完全なハードウェアアクセスはありません。
  • 低レベルのシステムアクセスはありません。
  • 簡単に利用できるファイルシステムアクセスはありません(上で説明したテクノロジーを使用すると、fsにアクセスできますが、それらはすべて独自の異なるソリューションです)。
  • パフォーマンス。通常、ネイティブのコンパイル済みアプリケーションは、Javascriptアプリケーションよりも高速です。
  • 競合他社がソースコードを簡単に盗む
  • 特殊なタスクに使用できるライブラリはありません。例 画像処理、音声エンコーディング、データベースアクセス、ネットワークプログラミングなど

公平を期すために、すべてのアプリケーションが完全なハードウェアまたは低レベルのアクセスを必要とするわけではありません。JavaのようなVM言語は確実にアクセスのようなものなしでうまくいく
TheLQ

6
さて、多くのデスクトップJavaアプリを知っていますか?
ヨニロイト

グーグルのv8のjavascriptについてはどうですか、私は本当に速い(javaと同じくらい速い)を読んでいます、私はクロムや他のブラウザで重いjsアニメーションを実行すると自分自身の違いを見ることができます。そして、html5のAPIの成長により、jsは本当に多くのことをテーブルにもたらします。キャンバスのものを使って、画像処理などすべてを行うことができます。そのため、jsには本当に悪いツールのセットがあり、それはより関数型プログラミング言語です(関数はファーストクラスのオブジェクトです)
kapv89

1
ただ、おかげで(今WebRunner)プリズムをチェックアウトしていじくり回すギア、素敵なものをグーグル
kapv89

3
@YoniRoit:Eclipse、Vuze、私の薬剤師の注文システム...
ヘイレム

2

頭に浮かぶフレームワークはAdobe Airです。これにより、Web開発者はJavascript / HTMLを使用してデスクトップアプリケーションを開発できます。Javascript / HTML自体はデスクトップアプリケーションには適していません。デスクトップアプリケーションは、オペレーティングシステムによって提供されるサービス(ファイルを開く、他のアプリケーションを起動するなど)にアクセスする必要がある場合が多いからです。そのため、何か特別なものが必要であり、Adobe Airのようなフレームワークが追加の接着剤を提供します。


1

これを行うには、いくつかの方法があります。ありますMozillaのアプリケーションフレームワーク、多くの場合、FirefoxなどのWebブラウザで使用されているだけでなく、ActiveStateの例えば、で使用されているコモドIDEは

中にはQt、もありますQtのクイック CSSとJavaScriptのような言語を持っているが。


いい、Mozillaアプリフレームワークを調べる
kapv89

1

IMO、私はこれらの言語について知っているコンパイラがないため、GUIをレイアウトする方法としてHTMLとCSSを採用していません。コードにエラーがある場合は、自分で調べなければならないか、気づかないかもしれません(またはHTMLサイトにアクセスしてテストしてください)。

C ++では、コードが正しくない限りコンパイルできません(実行時の問題をキャッチする場合を除く)。

また、CSSでfloatを使用するなど、CSSとHTMLの組み合わせはまだあまりよくないと思います-HTMLコードと使用方法に応じて-floatの結果は異なる結果になります-win32での絶対配置の使用と比較して一貫性の欠如または優れたJava Swingレイアウトマネージャー。


3
基本的にC ++コンパイラが行っていることを行うHTMLおよびCSSバリデーター:構文チェックと型チェック。いくつかの強力なIDEにはそのようなバリデーターが付属していると思います。
アルノールブラン

1
ポジショニングパーツについては、CSSにも絶対ポジショニングがあり、HTML5にはSwingのレイアウトマネージャーよりも多くの機能があります。一部のエディターでは、GUIをWYSIWYG方式で設計することもできます。
アルノールブラン

0

主な理由の1つは、アプリを簡単に盗んでコピーしたくない場合は、何らかの方法でパッケージ化されたファイルに直接リンクするWebControlを保持するアプリケーションも作成する必要があることです。
実際、これを行うアプリケーションがあります。Titanium Appceleratorはその1つです。前回見たときにバグでいっぱいでサポートが不十分だったため、使用することはお勧めしません。価値があるかどうかについて、独自の調査を行う必要があります。


0

少し遅れますが、FirefoxでAsYouWishを使用する場合(またはファイルを圧縮してツールでテストすることを気にしない場合はFirefoxアドオンを作成する場合)、デスクトップ権限を持つアプリをHTMLで作成できます。WebAppFindを使用している場合(現在はWindowsのみ)、デスクトップファイルをデスクトップから直接Webアプリに開くこともできます(ドラッグアンドドロップは不要です)。

免責事項:これらの(オープンソース)アドオンは私が作成しました。


1
広告している製品との関係を明らかにする必要があります。
ロブW 14年

0

Javascript、HTML、およびCSSを使用して、Windowsストア、Windows Phone、および-想定される-「ユニバーサルアプリ」経由のXBoxのアプリを構築できます。(明確にするために、ファイル|新規プロジェクトを使用してVisual Studioで開始...)

これは、上記を使用して、ネイティブ APIの実装に対してUXおよびアプリケーションコードをビルドします。

当然、Microsoftがプラットフォームをより多くの開発者に開放しようとする試みと見なされるのではなく、C#およびXAMLベースの開発者を非推奨と見なしました-もちろんそうではありませんでしたが、それはあまり良い話ではありません...これらは必ずしも質問がネイティブであると考える種類のデスクトップアプリではありません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.