Web開発はモバイル開発に移行しました。これが私が行った方法です。
私は PHP を使用する Web 開発者として専門的な開発キャリアをスタートしました。その後すぐに、.NET エコシステムに切り替え、C# と ASP .NET MVC フレームワークを使用して Web 開発を続けました。最近まで、私が作成したのは Web アプリだけでした...
数か月前、Android と iOS でモバイル アプリの開発を始めましたが、Xamarin のおかげで、今でも C# を使用できます。この記事を書いた理由は、この変更を行った後に感じたことを共有するためです。
なぜこの決断をしたのか
なぜウェブ開発からモバイル開発に切り替えることにしたのかと疑問に思うかもしれません。 Web プログラミングについてはまだ学ぶことがたくさんありますが、何か新しいことをして新しいスキルを学びたいと思っているからです。
オンラインストアにはすでにたくさんのアプリがありますが、モバイルアプリには明るい未来があると思います。ただし、スマート ウォッチなどの新しいモバイル デバイスが登場しており、開発者にとっては新たな機会となります。これは、モバイル デバイス用のアプリケーションの作成方法を学ぶ絶好の機会です。
もちろん、私が現在働いている会社では、たまたま私の好きな言語 (C#) を使って新しい Android および iOS アプリケーションを開発する機会があるので、この機会を利用してみてはいかがでしょうか。
新しいプログラミングモデル
これは私が以前経験し、モバイルアプリケーションの開発に参加したWindows Phoneというプロジェクトから学びました。しかし、私はこれからやろうとしていることに対する準備ができていなかったし、なれるとは思っていませんでした。
特定のライフサイクルを持つ Web サイト内のアプリケーションとは異なり、リクエストに応答するだけでは済みません。 Web アプリケーションの構築について学んだほとんどすべてが役に立ちません。パラダイムはまったく新しいものです。
すべてがユーザー インターフェイス (UI) スレッドで実行されるとアプリケーションが停止するため、この分野では非同期プログラミングが必須です。私は常にこの分野のスキルを向上させたいと思っており、この目標を達成するための素晴らしい方法を見つけました。
関心の分離も異なります。Model View Controller (MVC) はなくなりましたが、Model View ViewModel (MVVM) パターンが使用されます。 (WPF と Windows Phone で) 使用したことはありますが、同じレベルではなく、まだ学ぶことがたくさんあります。
もちろん、アプリケーションをテストするにはシミュレーターを使用する必要があります。テストするたびに、ページを更新して変更を確認することはできません。フィードバック ループは長く、ほとんどの場合は数分かかるため、デバッグには時間がかかり、重要になります。
快適ゾーンから抜け出しましょう
私は約 2 か月前にアプリの開発を始めましたが、学ぶべきことがまだたくさんあります。私は、経験のない 2 つのエコシステム (Android と iOS)、まったく知らない 2 つのフレームワーク (Xamarin と MvvmCross)、そして満たすのが難しいいくつかのビジネス要件に対処する必要がありました。ただし幸いなことに、少なくとも私は C# の使い方を知っています。
今、私は検討すべきことがたくさんありますが、主なものは新しい開発環境に関連するいくつかの「どうやって行うか」という問題です。また、「ネットワークが利用できない場合はどうすればよいですか?」、「このソリューションが遅すぎる場合はどうすればよいですか?」、「顧客に最高のエクスペリエンスを提供するにはどうすればよいですか?」など、「もしも?」という質問もたくさんあります。一日中何も生み出せないこともあります。正直に言うと、その時は自分が本当に役に立たない、詐欺師だと感じます。仕事で価値のあるものを何も生み出すことができないのに、自分自身をどのように考えることができますか。プロのソフトウェア開発者ですか?
そうですね、この感覚は、快適ゾーンから抜け出して、学習段階の山と谷にいるようなものだと思います。
山あり谷ありの学習率
諦めないでください
しかし、移行しているのは私だけではありません。この戦いに参加しているのは私だけではありません。上級開発者も若手開発者も、チームの全員が同じ量の学習に直面しなければなりません。
ここ 2 か月間の自分の旅を振り返ってみると、自分にはまださまざまな欠点があり、進むべき道はたくさんあることに気づきましたが、同時に非同期プログラミングに関する現在の理解や、これらの MVVM パターンの概念は比較的よく知られています。
プロのモバイル開発者になりたいのであれば、引き続き学習を続け、旅を完遂し続け、自分に足りないスキルを学び、顧客の期待に応える価値を生み出す必要があります。仕事のせいで時々惨めな思いをすることもありますが、素晴らしい学習の機会なので後悔はしていません。どれだけ時間がかかっても、私は成功します。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











Cockpit は、Linux サーバー用の Web ベースのグラフィカル インターフェイスです。これは主に、初心者/熟練ユーザーにとって Linux サーバーの管理を容易にすることを目的としています。この記事では、Cockpit アクセス モードと、CockpitWebUI から Cockpit への管理アクセスを切り替える方法について説明します。コンテンツ トピック: コックピット エントリ モード 現在のコックピット アクセス モードの確認 CockpitWebUI からコックピットへの管理アクセスを有効にする CockpitWebUI からコックピットへの管理アクセスを無効にする まとめ コックピット エントリ モード コックピットには 2 つのアクセス モードがあります。 制限付きアクセス: これは、コックピット アクセス モードのデフォルトです。このアクセス モードでは、コックピットから Web ユーザーにアクセスできません。

Web 開発における C++ の利点には、速度、パフォーマンス、低レベル アクセスが含まれますが、一方で、急峻な学習曲線やメモリ管理要件などの制限もあります。 Web 開発言語を選択する場合、開発者はアプリケーションのニーズに基づいて C++ の利点と制限を考慮する必要があります。

PHP は Web 開発のバックエンドに属します。 PHP はサーバー側のスクリプト言語であり、主にサーバー側のロジックを処理し、動的な Web コンテンツを生成するために使用されます。フロントエンド テクノロジーと比較して、PHP はデータベースとの対話、ユーザー リクエストの処理、ページ コンテンツの生成などのバックエンド操作に多く使用されます。次に、特定のコード例を使用して、バックエンド開発における PHP のアプリケーションを説明します。まず、データベースに接続してデータをクエリするための簡単な PHP コード例を見てみましょう。

Web 開発に C++ を使用するには、Boost.ASIO、Beast、cpp-netlib などの C++ Web アプリケーション開発をサポートするフレームワークを使用する必要があります。開発環境では、C++ コンパイラ、テキスト エディタまたは IDE、および Web フレームワークをインストールする必要があります。たとえば Boost.ASIO を使用して Web サーバーを作成します。 HTTP リクエストの解析、応答の生成、クライアントへの返送など、ユーザー リクエストを処理します。 HTTP リクエストは Beast ライブラリを使用して解析できます。最後に、cpp-netlib ライブラリを使用して REST API を作成し、HTTP GET および POST リクエストを処理するエンドポイントを実装し、J を使用するなど、単純な Web アプリケーションを開発できます。

実装手順: 1. ページのスクロール イベントを監視する; 2. ページが一番下までスクロールしたかどうかを判断する; 3. データの次のページをロードする; 4. ページのスクロール位置を更新する。

Go は、ブラウザーで実行されるインタラクティブな Web アプリケーションを構築します。手順: Go プロジェクトと main.go ファイルを作成し、メッセージを表示するための HTTP ハンドラーを追加します。ユーザー入力と送信用に HTML と JavaScript を使用してフォームを追加します。 Go アプリケーションに POST リクエストの処理を追加し、ユーザー メッセージを受信して応答を返します。 FetchAPI を使用して POST リクエストを送信し、サーバーの応答を処理します。

C++ Web 開発では、C++ プログラミング、ネットワーク プロトコル、データベースの知識の基本を習得する必要があります。必要なリソースには、cppcms や Pistache などの Web フレームワーク、cppdb や pqxx などのデータベース コネクタ、CMake、g++、Wireshark などの補助ツールが含まれます。単純な HTTP サーバーの作成などの実践的なケースを学ぶことで、C++ Web 開発の旅を始めることができます。

C++ は、大規模な開発者コミュニティと豊富な学習リソース、優れたパフォーマンスをもたらす、一度作成すれば Android、iOS、Windows で実行できる WORA モデルなどの理由から、モバイル開発において大きな可能性を秘めています。ゲームエンジンの開発に広く使用されており、低レイテンシーとリソース管理機能により、高パフォーマンスのゲーム要件を満たします。
