web開發轉向行動開發 我是這樣做到的
我的職業開發生涯是作為一個Web開發人員開始的,使用的是PHP。不久後,我切換到.NET生態系統,使用C#和ASP .NET MVC框架 來繼續搞web開發。我一直以來創建的都是Web應用程序,直到最近…
幾個月前,我開始用Android和iOS來開發行動應用程序,然後多虧Xamarin,我仍然可以使用C#。我之所以寫這篇文章是想分享我做了這個改變之後的感受。
為什麼下這個決定
你可能會問,為什麼我會決定從Web開發轉向行動開發。因為我想要做一些新的東西來學習新的技能,雖然在web程式設計上我仍然有很多需要學習的地方。
我認為,行動app有一個前途光明的未來,雖然已經有很多app存在於網路上的商店裡。但是,新的行動裝置來了,如智慧手錶,它們是開發人員嶄新的機會。這是一個學習如何為行動裝置創建應用程式的很好契機。
更何況我目前就職的公司恰好有這個機會能夠使用我最喜歡的語言(C#)來開發新的Android和iOS應用程序,那麼為什麼不利用這個機會呢。
新的程式模式
我知道程式設計的方式是會變的,這從我以前經歷過的一個叫做Windows Phone的項目,一同參與開發行動應用程式時就已經得知。但我還沒準備好要做什麼,也不認為我能做好準備。
不像網站中的應用程式有特定的生命週期,你不能只是用回應來回覆請求。幾乎所有我從建立網頁應用程式中學到的東西都不能幫助我——範式是全新的。
在這個領域中,非同步程式設計是強制性的,因為如果一切都運行在使用者介面(UI)執行緒上的話,應用程式會停止。我一直都想提升自己在這方面的技能,也被我找到了實現這個目標的好方法。
分離關注點也不同,不再有Model View Controller(MVC),使用的是Model View ViewModel(MVVM)模式。即使我已經使用過(在WPF和Windows Phone中),但並不是在同一水平,我仍然有很多東西需要學習。
當然,你還必須使用模擬器來測試應用程序,每次要測試的時候,你都必須建立並部署模擬器,你不能只是刷新頁面來看發生的變化。回饋環很長,大多數時候都需要幾分鐘才行,因此調試會很慢也會很重要。
走出安樂窩
我大概在兩個月前,開始工作於應用程序,並且現在仍然有很多東西需要學習。我需要處理兩個我完全不曾涉足的生態系統(Android和iOS), 兩個我一無所知的框架(Xamarin和MvvmCross)和一些不容易滿足的業務需求。不過,幸運的是,至少我知道如何使用C#。
現在的我每天都在奮鬥,我有很多東西需要考慮,主要的就是一些與我新的開發環境相關的「怎麼做?」的問題。還有很多“如果…怎麼辦?”的問題:“如果網絡不可用,怎麼辦”,“如果這個解決方案太慢,怎麼辦?”,“如何為客戶提供最好的體驗?”……
有時候,我一整天都沒有辦法產出任何東西,說實話,那個時候我會覺得自己真沒用,是個欺世盜名之徒——既然我不能在工作上生產出任何有價值的東西,那麼怎麼能認為自己是專業的軟體開發人員呢?
嗯,我覺得這種感覺就像走出自己的安樂窩,正處於學習階段的一個峰谷中。
有峰谷的學習速率
不放棄
不過我不是唯一一個正在轉換的人,我不是一個人在戰鬥。團隊中的所有人都必須面對相同分量的學習,高級開發人員和初級開發人員皆是如此。
現在回過頭去看我這兩個月的歷程,我認識到,我還存在著各種不足,需要走的路還有很多,但我也學到了很多東西,比如說現在對於非同步程式設計和那些MVVM模式的概念相對而言熟悉多了。
如果我想成為一個專業的行動開發人員,那麼我依然需要繼續學習,繼續完成我的旅程,學習我缺乏的技能,產出符合客戶期望的價值。即使我的工作時不時 地讓我苦不堪言,但是我不後悔,因為這是一個非常棒的學習機會。不管花多少時間我一定會成功。

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

Cockpit是一個面向Linux伺服器的基於Web的圖形介面。它主要是為了使新用戶/專家用戶更容易管理Linux伺服器。在本文中,我們將討論Cockpit存取模式以及如何從CockpitWebUI切換Cockpit的管理存取。內容主題:駕駛艙進入模式查找當前駕駛艙訪問模式從CockpitWebUI啟用Cockpit的管理訪問從CockpitWebUI禁用Cockpit的管理訪問結論駕駛艙進入模式駕駛艙有兩種訪問模式:受限訪問:這是駕駛艙的默認訪問模式。在這種存取模式下,您無法從駕駛艙Web用戶

C++在網路開發中的優勢包括速度、效能和低階訪問,而限制包括學習曲線陡峭和記憶體管理要求。在選擇Web開發語言時,開發人員應根據應用程式需求考慮C++的優點和限制。

要使用C++進行Web開發,需要使用支援C++Web應用程式開發的框架,如Boost.ASIO、Beast和cpp-netlib。開發環境中,需要安裝C++編譯器、文字編輯器或IDE以及Web框架。建立Web伺服器,例如使用Boost.ASIO建立伺服器。處理用戶請求,包括解析HTTP請求、產生回應並將其發送回客戶端。可以使用Beast函式庫解析HTTP請求。最後,可以開發一個簡單的Web應用程序,例如使用cpp-netlib庫建立RESTAPI,實現處理HTTPGET和POST請求的端點,並使用J

PHP在Web開發中是屬於後端。 PHP是一種伺服器端腳本語言,主要用於處理伺服器端的邏輯,產生動態網頁內容。與前端技術相比,PHP更多地用於與資料庫互動、處理使用者請求以及生成頁面內容等後端操作。接下來透過具體的程式碼範例來說明PHP在後端開發中的應用。首先,我們來看一個簡單的PHP程式碼範例,用於連接資料庫並查詢資料:

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++在行動開發中潛力巨大,原因在於:龐大的開發者社群和豐富的學習資源;高效能記憶體管理和低階控制,帶來卓越效能;WORA模型,一次編寫即可跨安卓、iOS、Windows運行;廣泛用於遊戲引擎開發,低延遲和資源管理功能滿足高效能遊戲需求。
