FFmpeg開發筆記(四十七)寒冬下安卓程式員的幾個技術轉型發展方向

来源:https://www.cnblogs.com/aqi00/p/18328122
-Advertisement-
Play Games

​IT寒冬之下,程式員這個職業不再像以往那麼吃香,尤其是APP開發的門檻越來越高,使得安卓程式員不得不求變,如果不在技術上及時轉型提高,逆水行舟未來不可期呀。 有鑒於此,博主整理了幾個可供安卓程式員的技術轉型發展方向,供大家參考。 1、繼續深耕Android的應用開發 谷歌爸爸是安卓的爹,要想繼續吃 ...


IT寒冬之下,程式員這個職業不再像以往那麼吃香,尤其是APP開發的門檻越來越高,使得安卓程式員不得不求變,如果不在技術上及時轉型提高,逆水行舟未來不可期呀。

有鑒於此,博主整理了幾個可供安卓程式員的技術轉型發展方向,供大家參考。

1、繼續深耕Android的應用開發

谷歌爸爸是安卓的爹,要想繼續吃安卓這口飯,就要抱緊谷歌爸爸的大腿。
爸爸每年都對Android和AndroidStudio升級換代,咱們馬上研究Android1x的新特性,鑽研AndroidStudio的新功能。
爸爸說要把APP的開發語言從Java換成Kotlin,咱們馬上學習Kotlin編程,什麼KTX擴展庫咬牙啃下。
爸爸推出了Jetpack套件意圖一統安卓常用組件庫,咱們馬上引入Jetpack的諸多工具包,學他個天昏地暗。
爸爸推出了Flutter框架準備打造無所不能的跨端開發環境,咱們馬上絞盡腦汁開乾Flutter,連同Dart語言一起乾。
爸爸推出了Compose項目要重構安卓界面控制項,咱們馬上熬夜通宵拿下Compose,只為體驗那般絲滑的吹噓快感。
總之,咱們唯谷歌爸爸馬首是瞻,只要爸爸搞出什麼新東西,咱們赴湯蹈火在所不辭,務必要第一時間嘗鮮。
嗯,學習APP的Kotlin編程推薦這本書《Kotlin從零到精通Android開發》。學習Jetpack套件與最新的Android開發推薦這本書《Android Studio開發實戰:從零基礎到App上線(第3版)》,該書基於Android12和Android Studio Dolphin,介紹了包含DataStore、Room、RecyclerView、ViewPager2、WorkManager、Glide、CameraX、ExoPlayer等等在內的Jetpack套件。

2、深入挖掘Android的底層框架

首先下載谷歌爸爸提供的AOSP源碼,國內各家手機廠商(遙遙領先除外)的安卓系統統統基於AOSP,甭管他什麼砰的一聲OS,別管他什麼摸的一下OS,只要看它開機畫面有沒有“Powered by Android”,有這個開機文字就是谷歌爸爸賞飯吃。
然後編譯調試下載了的AOSP源碼,認真閱讀數億行的AOSP源碼,在這個時間就是金錢的年代,要是啃完這浩如煙海的AOSP源碼,還沒有兩鬢銀絲,也沒有風華絕頂,那您肯定是萬里挑一的天才!
一旦學成安卓的底層框架,那就如虎添翼,什麼手機OS、平板OS、車機OS、智能電視OS等等統統拿下,馬上練就“人-車-家(閉環)”的蓋世神功。

3、豎向鑽研轉型做Java後端開發

眼見APP開發的蛋糕越來越小,安卓程式員總想跳出圍城外面看看。雖然Java需求同樣不振,但是好在盤子大,機會仍然比APP開發多。
正好APP開發傳統使用Java編程,安卓程式員轉向Java後端無需學習新語言。可是這些年Java也在不斷迭代,光光大版本就有Java8、Java11、Java17三個,這幾個大版本的眾多新特性足夠讓安卓程式員喝幾壺了的。
不過後端開發僅僅也用Java而已,開發環境和開發框架與安卓相比截然不同。Java後端的開發環境採用IEDA,開發框架採用Springboot+MyBatis,更大型的框架要用SpringCloud。什麼Eclipse、什麼SSH早就落伍了,趕緊扔掉,現在都是202x年了。
嗯,學習後端的Java編程推薦這本書《好好學Java:從零基礎到項目實戰》,該書講述了Java8和Java11的新特性,且基於IDEA開發環境講解,同時介紹了Java程式如何操作MySQL資料庫。

4、橫向拓展轉型做大前端開發

習慣了做APP界面開發,安卓程式員對其他前端技術比如H5也屢有涉獵,因為都是控制項來控制項去,無需關心後端紛繁複雜的業務邏輯,可以節省不少腦細胞。
Web前端的編程語言首選JavaScript,簡稱JS,前端的開發引擎主要有Node.js和Vue.js,開發環境採用VS Code,另外別忘了Web網頁的標記語言HTML5。
除了Web前端之外,各大公司還推出了自己的前端開發框架,比如騰訊的微信小程式、華為的鴻蒙APP等等。
微信小程式採用TypeScript編程,TypeScript基於JavaScript加以擴展,簡稱TS。小程式有專門的開發環境叫做微信開發者工具。
鴻蒙APP採用ArkTS編程,ArkTS是HarmonyOS應用開發語言,基於TypeScript加以擴展。鴻蒙APP有專門的開發環境叫做DevEco Studio。

5、邁開大步轉型做C/C++底層開發

移動互聯網已成昨日黃花,產業互聯網才是八九點鐘的朝陽。看看TIOBE編程語言排行榜,Java語言早已落後於C/C++,甚至Java的熱度只有C/C++的一半不到。
然而安卓程式員跨界直接轉C/C++頗有難度,為了更加平滑地轉型C/C++編程,可以考慮從音視頻開發著手。
正好Android開發有個重要分支叫做Android音視頻,涉及到WebRTC、FFmpeg等開源框架。其中WebRTC主要用於視頻通話,而FFmpeg主要用於音視頻播放、音視頻編輯等等。
谷歌爸爸提供了APP專用的WebRTC庫,直接引入App工程就行。而FFmpeg採用C語言編寫,需要通過NDK才能集成到App工程。《FFmpeg開發實戰:從零基礎到短視頻上線》一書的第12章詳細介紹瞭如何給App工程集成FFmpeg庫,可供參考。
把FFmpeg學得差不多了,再來研究直播系統的相關技術,比如流媒體伺服器SRS、ZLMediaKit,又如電腦端的直播推流工具OBS Studio,手機端的直播推流工具RTMP Streamer、SRT Streamer等等,有關直播系統的詳細技術可參考系列文章《FFmpeg開發筆記全目錄(FFmpeg開發實戰詳解,含直播系統的搭建過程)》。
在學習研究FFmpeg等開源框架的時候,相信您已經逐漸掌握了C/C++編程,那麼加把勁用上C++的桌面開發環境Qt,產業互聯網正在向您招手啦。
嗯,學習App的WebRTC編程推薦這本書《Android Studio開發實戰:從零基礎到App上線(第3版)》,該書第20章詳細介紹了WebRTC的服務端搭建和客戶端集成過程,並演示了實戰項目“仿微信的視頻通話”。
嗯,學習FFmpeg編程技術推薦這本書《FFmpeg開發實戰:從零基礎到短視頻上線》,該書詳細介紹瞭如何在Windows系統和Linux系統分別搭建FFmpeg的開發環境,第11章還介紹瞭如何通過Qt+FFmpeg開發桌面程式。

除了上面五個發展方向之外,還可以考慮Python人工智慧開發,不過這塊與安卓開發隔得太遠,就不做深入介紹啦。

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • Flink CDC 於 2021 年 11 月 15 日發佈了最新版本 2.1,該版本通過引入內置 Debezium 組件,增加了對 Oracle 的支持。 Flink下載地址 https://flink.apache.org/downloads/ 其他必需的jar包(cdc、jdbc、mysq和o ...
  • 數字化轉型提速中!傳統農牧食品行業也尋求搭上數字化轉型的快車,通過物聯網、大數據、人工智慧等現代信息技術,實現生產、加工、流通等環節的智能化和自動化,提高生產效率、優化資源配置、提升產品質量,並滿足消費者對食品安全和可追溯性的需求。 在數字化浪潮的推動下,鐵騎力士集團作為一家歷史悠久的農牧食品企業, ...
  • 作者 | 月影幽篁 在當前數據驅動的業務環境中,快速且高效的數據處理能力至關重要。Apache SeaTunnel以其卓越的性能和靈活性,成為數據工程師和開發者的首選工具之一。本文將介紹如何在集群環境中搭建Apache SeaTunnel 2.3.5版本的 Zeta-Server,並概述其使用方法。 ...
  • 本文是翻譯MySQL InnoDB Cluster – how to manage a split-brain situation[1]這篇文章,如有翻譯不妥或不對的地方,敬請諒解與指正。請尊重原創和翻譯勞動成果,轉載的時候請註明出處。謝謝! 每次我展示MySQL InnoDB Cluster時,在 ...
  • 案例介紹 環境介紹 操作系統: Red Hat Enterprise Linux release 8.10 (Ootpa)資料庫版本: Oracle 19.23.0.0.0 上周五,系統管理員需要給Linux升級補丁,UAT環境下的一套DG,資料庫沒有正常關閉的情況下,操作系統升級補丁後強制rebo ...
  • 在數據技術不斷演進的背景下,雲資料庫的崛起和雲原生資料庫的普及標志著資料庫技術的顯著變革。從最初的自建資料庫模式到如今的雲原生資料庫,企業在數據管理上的選擇變得更加豐富和靈活。雲資料庫不僅僅是對傳統資料庫技術的一個遷移,更是對其進行了一次全面的升級和優化。 ...
  • ElasticSearch服務提供對索引操作、文檔操作、分詞操作等多種介面。介面的查詢通常採用DSL的形式,也可採用SQL形式進行查詢。 ...
  • 原文: Jetpack架構組件學習(5)——Hilt 註入框架使用-Stars-One的雜貨小窩 本篇需要有Kotlin基礎知識,否則可能閱讀本篇會有所困難! 介紹說明 實際上,郭霖那篇文章已經講得比較明白了(具體參考鏈接都貼在下文了),這裡簡單總結下: 如果按照之前我們的MVC寫法,我們可以直接在 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...