移動端對比後端“式微”?在大環境下如何避免當生鏽的螺絲釘成為一個優秀的安卓開發者
知乎提問: 最近看到一些技術部落格,說所有公司都意識到了,小程式相比傳統的安卓/IOS/Web三線作戰的優勢。真實情況也是如此嗎?
這個“式微”的理解其實可以有很多種解讀, 這裡最直接的是Android在企業內的重要性對比後端確實是“式微”了!
但是這個“式微”和小程式沒有太大關係,因為做過微信小程式的知道,微信內的限制太多,所以作為引流和試水階段是沒問題,但是落地還是要回歸到自己的平臺。
我見過不少產品是透過小程式和小遊戲去試錯,最後資料客觀了才落地到應用專案,這類產品一般會選擇類似 Taro 的框架進行開發,最後可以快速從小程式再遷移到應用。
畢竟小程式並不是“真正的平臺”,在別人的後花園怎麼能安心遛狗?
為什麼說移動端對比後端“式微”了?
2014 年開始的移動紅利之後,客戶端急缺的情況下,客戶端開發經歷了 2015 - 2016 年的野蠻成長,但是 2020 的今天整個移動端社群都趨向穩定,而且第三方支援豐富,開發一款應用的成本降低了,而在 穩定下來後企業積累了無數的使用者和資料,所以下半場的競爭者必然是後端和大資料的競爭,主動權再次迴歸後端的比拼。
介紹個簡單的例子,比如 極光 ,移動開發都知道它是做 推送 SDK 起家,後續增加了如
分享
、統計
、IM
等 SDK 也是佈局移動服務,但是 2019 開始極光開始主打推出的iAPP
、反欺詐
、iAduience
、iZone
、營銷平臺
等都是開始往資料服務上發力;另外和極光屬於競爭對手的 MobTech 也是這樣的套路。
因為開發一個普通應用的難度下降了,門檻降低和資本冷卻以後,把握資料和業務邏輯的開發開始成為新的門檻和香餑餑,所以最直觀的就是文章和技術分享的趨勢變了。
一部分從 Java Web 到 Android 的開發人員又一次迴歸後端,同時培訓機構的風頭也變了:python、AI、區塊鏈等等,要知道每年市面上新增的開發人員,有很大一部分來源於培訓機構, 這部分人變了也導致技術部落格和公眾號等的產出風向變了。
移動端開發需要怎麼增強自己的式?
首先明確一個觀點,那就是移動開發是必須有的,只要平臺在原生開發就必須有。但是渾水摸魚的日子沒有以前那麼好過了,因為小程式和各種跨平臺開發讓企業有了更多的選擇。
所以如果你還想做介面開發,那麼增強你的能力廣度是必須的,比如:
- 小程式的上手並不難,同時還有諸如
uni-app
、taro
、chameleon
可以幫助上手。 - 透過學習
React-Native
來認識前端開發,學習React
、CSS
、JavaScript
等相關能力,只要你會RN
其實等同於你已經學會了小程式。 - 瞭解學習諸如
Flutter
、PWA
、WebAssembly
等新的技術迭代。
當然,最後不要落下 資料結構與演算法、計算機原理等基礎知識,這些才是程式設計師後期的競爭力,如果想要把握更多的當然你也可以學習後端開發相關的知識。
Android行情艱難如何成為一個優秀的程式設計師?
優秀的門檻一直在變高,歲月無情,那我們怎麼應對?
1、儘量讓自己擁有較長時間競爭力的技能和思想
現在很多年輕人熱衷於學習新的工具,新的程式語言,學習在新的平臺做系統,當然,這是有一定紅利期的,但作為個人的競爭力,稍過幾年,很可能就一文不值。
什麼是競爭力,多理解系統底層的邏輯和思想,諸如記憶體分配的機制,多理解資料結構的原理和設計理念,這些也不能說永遠都有競爭力,但如果理解到位,並且應用得當,至少可以保證二三十年自己的思想不會在業內落伍。
具有發現問題的敏銳度,掌握分析問題的方法和思路,也能讓自己職場競爭力相對牢固一些。
知道如何有效的在複雜的系統中發現問題,定位問題,並針對性的給出解決問題的方向,這就是競爭力,這個競爭力,依然可以持續很多年。
2、即便力不從心,也要奮力向前
你說一代更比一代強,有的時候真的力不從心,但看你目標是什麼,想獨孤求敗,一覽眾山小,可能越來越難。但畢竟!畢竟大部分人是懶惰,缺乏耐心的。想讓自己超過大多數人,畢竟沒那麼難。
如果你否定天分的存在,只強調勤奮努力,那就是蠢。但如果你因此認為勤奮努力沒有用,那就是又懶又蠢。
只要你肯進步,總會超越大量不進步的人。對於普通人來說,這就足夠了。
3、提升視野,向上發展
很多人雖然經歷了很多事,卻依然沒有見識,匱乏視野。
比如簡單化,標籤化的看待問題,老闆當時成功是因為運氣比較好。
比如從不關心產業和市場變化的情況,一直隨波逐流。
比如在自己的工作職能之外,毫不關心合作伙伴,上下游,同行的生存和發展話題。
所以,當更有活力,更便宜的年輕人衝上來,他們的教育背景比你更好,他們的演算法邏輯比你更清晰,你還剩下什麼,信謠傳謠的能力和素質?
還想安安靜靜當個螺絲釘?對不起,你生鏽了。
總結一下,優秀的門檻越來越高,這是歷史趨勢,誰也擋不住。
但任何時代,大部分人總是會固步自封,隨波逐流,隨著歲數增長,你可能真的無法擋住優秀的年輕人超越你,但你只要肯進步,總會不斷超越那些停步不前的大多數。
怎麼學習Android
其實我更希望做無論是哪端的開發,都可以讓自己的成長為工程師而不是單純的 Api 碼農,很多時候大家都在憂慮學多而不精,但是撫心自問學得少的自己,現在有“精”嗎?
因為技術是具備可遷移性的,比如:學習
Dagger
和
Spring
的時候;學習
React Native
和
Flutter
的時候;學習
Kotlin
和
JavaScript
的時候。
這樣的選擇可以讓我們節約成本的過度。
在增加自己技術儲備的同時,也開拓自己的眼界,我個人更希望自己的生涯是去 “精通” 開發,而不是定位於某種語言或框架。
所以我會保持去關注新的行業動態,瞭解一些新興技術實現,即使只是知道它的名字和作用。危機感和興趣讓我有動力這麼做,當然, 在某個領域保持深度還是有必要的,畢竟吃飯的東西不能丟, 但是保持學習和好奇心,是讓職業生涯更有生命力的保證:
同樣地,每年我們都會看到, 在一個新的技術釋出後,曾經在某一領域具有權威的領導者失去他的領導地位,這正是因為日常工作佔據了進行策略性思考的時間,從而讓你沒有時間去做一些更有價值的事。
Android進階學習路線參考
程式設計師如何走上快速提升技術走上財富自由之路?
下面我提供一下我多年工作以來收集整理的學習路線,給大家做個參考:
學習一線大廠的各項技術:
大廠是我們的技術先驅,不僅僅是各種技術,還有很多令你大開眼界的使用方法,學習這些有利於自己競爭力的提高,深入理解後也可以提升你的學習效率。
現在競爭這麼激烈,只有透過不斷學習,提高自己,才能保持競爭力。
1.2020大廠面試高頻知識點
- 圖片
- 網路和安全機制
- 資料庫
- 外掛化、模組化、元件化、熱修復、增量更新、Gradle
- 架構設計和設計模式
- 效能最佳化
- Android Framework
- Android優秀三方庫原始碼
2.Jetpack架構元件從入門到精通
- Android Jetpack - Navigation
- Android Jetpack - Data Binding
- Android Jetpack - ViewModel & LiveData
- Android Jetpack - Room
- Android Jetpack - Paging
- Android Jetpack - WorkManger
- Android Jetpack架構元件之Lifecycle
- Android Jetpack Compose 最全上手指南
3.Framework精編核心解析
主要內容包含:
- 深入解析Binder
- 深入解析Handler
- Dalvik VM 程式系統
- 深入解析 WMS
- PackagerManagerService
4.Kotlin強化實戰(附Demo)
- 第一章 Kotlin入門教程
- 第二章 Kotlin 實戰避坑指南
- 第三章 專案實戰《Kotlin Jetpack 實戰》
- 從一個膜拜大神的 Demo 開始
- Kotlin 寫 Gradle 指令碼是一種什麼體驗?
- Kotlin 程式設計的三重境界
- Kotlin 高階函式
- Kotlin 泛型
- Kotlin 擴充套件
- Kotlin 委託
- 協程“不為人知”的除錯技巧
- 圖解協程:suspend
5.Android設計思想解讀開源框架
- 熱修復
- 外掛化
- 元件化框架設計
- 圖片載入框架
- 網路請求框架
- RXJava 響應式程式設計框架設計
- IOC 架構設計
- Android架構元件Jetpack
6.NDK模組開發
- NDK 模組開發
- JNI 模組
- Native 開發工具
- Linux 程式設計
- 底層圖片處理
- 音影片開發
- 機器學習
定期面試:
光學習了大廠的技術還不夠,如何瞭解當下Android市場需要哪些技術呢?
定期的面試足以讓你瞭解當下市場需要哪些技術,也更加容易確定自身的短板在哪,同時,也可以督促自己學習提升(小夥子,你瞭解的技術有點落伍了呀…)
萬一拿到了高薪Offer,豈不是更賺?
多看大佬的學習筆記,學習大佬的設計思想:
只要是程式設計師,不管是Java還是Android,如果不去閱讀原始碼,只看API文件,那就只是停留於皮毛,這對我們知識體系的建立和完備以及實戰技術的提升都是不利的。
真正最能鍛鍊能力的便是直接去閱讀原始碼,不僅限於閱讀各大系統原始碼,還包括各種優秀的開源庫。
以上這些內容均免費分享給大家,需要完整版的朋友, 。或者點選 【 】 檢視獲取方式。
在經歷了前期的野蠻生長後,優秀的門檻會越來越高。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69983917/viewspace-2779812/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 如何成為優秀的遠端開發者
- 如何成為一名優秀的移動開發者?移動開發
- Vue 移動端專案生產環境的優化Vue優化
- 永不生鏽的螺絲釘!一款簡潔好用的資料庫表結構文件生成器資料庫
- 怎樣成為優秀的後端工程師後端工程師
- 優秀遠端開發者具備的7大技巧
- 如何成為一個偉大的開發者
- 後端開發者從零做一個移動應用(一)後端
- vue移動端優秀框架收集Vue框架
- 如何成為一個優秀的前端工程師前端工程師
- 程式設計師去大廠當螺絲釘,還是去小公司當leader?程式設計師
- 如何設計一個優秀的移動支付流程?
- 陸奇:如何成為一個優秀的工程師?工程師
- 如何成為一個優秀的 JavaScript 程式設計師JavaScript程式設計師
- 如何成為一位優秀的ScrumMasterScrumAST
- 後端多環境治理的實踐(一)後端
- 做一個跑通前後端的`豆瓣租房`移動端webApp後端WebAPP
- 主流移動端元件庫的對比和分析元件
- Growth: 一個關於如何成為優秀Web Developer 的 AppWebDeveloperAPP
- 基於 vagrant搭建移動端的開發環境開發環境
- 你在成長為一個優秀的程式設計師嗎程式設計師
- hotcss.js------移動端佈局優秀的解決方案CSSJS
- 如何使用Tmux提高終端環境下的效率UX
- 成為優秀Swift開發者的10條建議Swift
- 成為更優秀開發者的10條途徑
- 懶載入– 端對端分享功能 –微信釘釘
- 做一個優秀的PHP開發者PHP
- 一顆小螺絲釘摧毀iPhone美國製造夢iPhone
- 你的網站需要針對移動端優化的10個理由網站優化
- 如何成為一個出色的敏捷開發者?敏捷
- 當開發者產生一個偉大的想法之後應該做的10件事
- 怎麼成為一個優秀的程式設計師 而不是一個優秀的碼農?程式設計師
- 10步成為一個優秀的Java開發!Java
- 移動端開發者眼中的前端開發流程變遷與前後端分離前端後端
- 2019如何成為一個優秀的程式設計師程式設計師
- 如何成為一個優秀的高階C++程式設計師C++程式設計師
- 《轉貼》如何成為一個優秀的jsp程式設計師JS程式設計師
- 作為後端開發者的思考:如何看待如今的前端架構後端前端架構