10

初心者として、私はCのほんの少しとPHPのかなりの部分を学ぶことに時間を費やしました。Windows用のデスクトップアプリケーションを作成することを検討しましたが、APIが複雑なため、参入障壁がかなりあるようです。これを学ぶ価値はありますか、それともネイティブアプリケーションは将来一般的ではなくなりますか?

私の見方では、私が今まで使用した唯一のデスクトップアプリケーションは、Webブラウザとテキストエディタ、そして明らかにOS自体です。必要なものはすべてオンラインになりました。

Web以外のアプリケーションの作成方法を学ぶことは、今後役立つスキルですか?もしそうなら、私は何を学ぶべきですか?

4

17 に答える 17

20

片側を選んでそれを忠実に守るのは良い考えではないと思います。優れたエンジニアは、タスクを完了するのに最適なツールについて情報に基づいた決定を下せるように、できる限り多くのことを身に付けてくれると思います。

つまり、プラットフォーム、OS、プログラミング言語などを選択して、他の言語を無視しないでください。あなたのスキルセットに精通していることが最善です。

于 2008-09-20T14:24:51.880 に答える
5

ネイティブアプリの市場は常に存在しますが、多くのものがWebに移行しており、Webベースのアプリの範囲はこれまでになく拡大していますが、ネイティブGUIアプリケーションが完全になくなることはありません。

しかし、あなたが好きなものに固執する以外に、本当に役立つアドバイスを与えるのは本当に本当に難しいです。Webを独占的に使用する場合、WindowsGUIプログラマーになるのは少しばかげています:)

于 2008-09-20T14:23:20.433 に答える
3

これは改造されるかもしれませんが、とにかく言います。

プログラミングできるかできないかのどちらかです。約 18 か月前、新しい仕事を探していたとき、私は市場を見ていて、.NET をたくさんやっていましたが、いくつかの場所で Java をやりたいと言われました。

私は Web サービスを行っていましたが、彼らは誰かに他のことをしてもらいたがっていました... 結局のところ、コードの書き方を知っていれば、コードの書き方も知っているということになりました。現在デスクトップ アプリを作成していて、6 ~ 8 か月後に ASP.NET MVC に移行したいと考えている場合は、問題ありません。

構文を学び、いくつかのことの感触をつかむには、起動に少し時間がかかる場合がありますが、最終的には問題ありません。これはすべての新しい言語に当てはまると思います...スキルはスキルです

于 2009-06-30T22:05:22.217 に答える
2

非Webアプリケーションは、遠い将来に非常に役立ちます(私が今見ているように)。クライアントと通信するためにネットワークプロトコルを使用する必要がある解釈されたスクリプト言語を使用して、オンラインで適切に記述されたデスクトップアプリケーションとして効率的に何もできなくなります。ただし、ネットワーキングに興味がある場合は、両方を少し試すことができます。rssリーダー、単純なWebブラウザー、またはIRCクライアントを作成します。彼らのすべての素晴らしいプロジェクト。

于 2008-09-20T14:23:25.643 に答える
1

あなたの言語のバックグラウンドから、PHPとCについてのみ言及していることに気づきました。どちらの言語も厳密にオブジェクト指向/オブジェクト指向言語を話しているわけではありません。仕事の大部分がそれらのスキルを探しているので、あなたは本当にJavaやC#のような伝統的なオブジェクト指向言語を学ぶべきです。ところで、プロの開発者がどの言語を学ぶべきかについてのYeggeのアドバイスを読んで、あなたが何をすべきかについて自分で考えてください。

あなたがエンタープライズアプリケーション開発に興味を持っていると仮定すると、その分野は従来のWeb開発(Webページ上のデータベースからのものを提示する)からリッチインターネットアプリケーション(データベースからのデータをまだ提示する)に移行していると言わざるを得ません。フロントエンドはデスクトップアプリケーションの近似を開始します)。リッチインターネットアプリケーションを構築するには、デスクトップUI開発者が長い間知っていた概念が必要になります。したがって、Web開発とデスクトップ開発のどちらかを選択する必要はないと思います。

于 2008-09-20T20:46:35.287 に答える
1

学びたいことは何でも学ぶべきです。そうしないと、おそらく必要以上に難しいことに気付くでしょう。

当時使っていたので、個人的にWindows用のデスクトップアプリケーションを書き始めました。最近、私はあなたが正しいと思います-あなたはプロセスにそれほど投資することなくウェブサイト/オンラインアプリケーションを作成することができます。

しかし、プログラミングに不慣れな場合は、まともなWebアプリケーションを作成することさえ難しいでしょう。スタンドアロンページは単純ですが、データベース、セキュリティ、および管理を組み合わせて追加すると、状況が大きくなる可能性があります。

于 2008-09-20T14:21:40.780 に答える
1

私の意見では、初心者は選択した言語の基本と内部に集中する必要があります。グラフィックインターフェイスまたはWebインターフェイスは、バックエンドで何をしているかがわかるまで待機する必要があります。個人的にはコンソールプログラムから始めることをお勧めしますが、それは使用しているプラ​​ットフォームによって異なると思います。たぶん、デスクトップインターフェイスはWindowsで始めるのが簡単です。

(私の意見では)ベストプラクティスは、提供したい機能を備えた堅牢なバックエンドを作成し、モジュール方式で作成することです。これにより、後でデスクトップインターフェイスとWebインターフェイス(またはその両方)のどちらを提供するかを決定できます。 。ユーザーインターフェイスの選択は、最初は重要ではありません。

于 2008-09-20T14:24:27.653 に答える
1

Web以外のアプリケーションを学ぶことは常に役に立ちます。Webアプリに適さないアプリケーションは常に存在します。すべてがWebアプリケーションに移行した場合でも、サーバー側のコードとWebブラウザーを作成する必要があります。

この時点で、Windowsプラットフォームに興味がある場合は、C#とWPFを調べることをお勧めします。これらのテクノロジーは、ネイティブ環境とWeb環境の両方で使用されます。

于 2008-09-20T14:27:12.797 に答える
1

Web開発はすべてうまくいっていますが、優れたWebフロントエンドを備えている場合でも、システムの大部分は、氷山のように、主にWebレベルより下で構成されています。

ほとんどのWeb実装は、データアクセスや非Web言語で発生するピアサーバーとの統合などの低レベルの設計でn層になっています。

私が見ているように、.Net Frameworkよりも、これらすべてのレベルに触れることができる1つの普及した言語があるようです。c#、vbなどについては指定していません。これは好みの問題だと思います。ただし、phpを使用してデータ層を作成しているn層の銀行のWebサイトを見たのを覚えていません。また、rubyを使用してjdedwardsサーバーと通信するオンライン注文Webサイトもありません。

これは、ヘビー級の言語がまだ普及している場所であり、それがあなたが働きたい場所である場合は、選択した言語バリアントで.Netフレームワークを学ぶことが道です。

于 2008-09-20T14:27:35.930 に答える
1

「Web」アプリケーションの将来の開発モデルは、デスクトップアプリケーション開発の現在のモデルにもっと似ていると思います。つまり、明日のWebアプリは、保守、デバッグ、テストが困難で費用のかかるHTML / AJAXの取り組みではなく、ブラウザーで既に利用可能なプラットフォームを対象とするコンパイル型言語で開発されるということです。Flash、Silverlight、および(程度は低いですが)Chromeは、このアイデアの現在のパラゴンです。

したがって、これらの「複雑な」APIを学ぶのはそれほど時間の無駄ではないかもしれません。私のグループはWPFアプリケーションを構築していますが、個人的には、現在のHTML/AJAXプロジェクトよりも複雑なものはないと思います。

于 2008-09-20T14:31:38.340 に答える
1

1 つの分野をマスターしてから、次の分野に進みます。

私はまた、ビジネスアプリケーション開発を学び始めたばかりです。私が取ったまさにその一歩は、データベースを勉強することでした。現実世界のアプリケーションの大部分はデータ中心です。デスクトップアプリケーションから始めるのは良いことです。ドラッグ アンド ドロップを行ってから、コード ビハインドを調べてください。ASP.NET でも同じことをしています。大量のスターター キットをダウンロードしました。それはすべてあなたの学習スタイルに依存します。私にとっては、一連の理論をチャンクごとに消化するよりも、「実践して学ぶ」方が簡単に学ぶことができます。そういうわけで、料理本と最初の本は私にとって完璧に機能します。

于 2008-09-20T19:23:58.183 に答える
0

私は同意します、あなたはあなたがしたいことを学ぶべきです。Webについて理解したら、デスクトッププログラミングを学び、視野を少し広げます。いつ必要になるかはわかりません。

ただし、Windowsデスクトップ開発の学習を検討している場合は、必ずC#やVB.NETを検討する必要があります。.NET Frameworkは、Windows用のデスクトップアプリを開発するための最も簡単な方法です。私が理解していることから、C ++よりもはるかに簡単です(私は実際にはC ++にあまり時間をかけませんでした)。

于 2008-09-20T14:25:39.007 に答える
0

@リッチブラッドショー、

就職活動サイトを見れば、質問の答えが得られると思います。

私は何を学ぶべきですか?

あなたが好きで、あなたに十分なお金をもたらすことができるものは何でも。

于 2008-09-20T14:28:32.543 に答える
0

それはとても良い質問です。私は最近、私が気付いていないほとんどのアプリ開発がWebアプリであることを知っています。しかし、flexなどの言語では、デスクトップアプリが再び戻ってきても驚かないでしょう。

于 2008-09-20T14:38:09.120 に答える
0

精通するには、両方を行う必要があります。ある分野のスキルが他の分野にうまく反映される場合とされない場合があります。たとえば、状態の欠如は、多くのデスクトップ開発者がWebアプリの構築を開始するときにつまずきます。もちろん、あなたの経験は異なるかもしれません

于 2008-09-20T14:45:29.350 に答える
0

プロの .NET プログラマーは、webform と winform の両方を処理する必要があります。あなたもウェブフォームから始めますが、最終的にはタッチウィンフォームにチャンスがあります。「VB と C#」のトピックのように、.net の専門家がそれについて話しているのを見ることはありません。最終的には、両方を知っている必要があるからです。

于 2009-08-24T09:06:23.723 に答える
0

Web 以外のものを使用できる場合があります。

  1. スクリプト言語/コンソール アプリケーション - ここでは例としてビルド スクリプトが頭に浮かびますが、手動で行うよりもブラック ボックス内から実行したほうがよい可能性が高い、デプロイの処理などの単純なタスクを実行するバッチまたはコマンド ファイルを作成することもできます。何かを何度も。

  2. Windows サービス (WCF) - これらは、物事を監視し、「サーバーがダウンしています!」と送信するのにも役立つ可能性があります。誰かが行って何がうまくいかなかったのかを見つけるためのメッセージ。

ミドルウェアとバックエンドの開発についても、Web サービスを記述したり、データベースのクエリを処理したり、DB にデータを挿入したりしますが、これはフロントエンドの Web UI 作業とは異なる場合があります。ある意味で非 Web および非デスクトップ開発でもある組み込みシステムやモバイル関連以外のソフトウェア開発の他の例について説明します。

于 2009-08-24T15:38:38.547 に答える