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
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...