1. 程式人生 > >【今日薦文】4位超60歲程式設計師大爺的生存祕籍

【今日薦文】4位超60歲程式設計師大爺的生存祕籍

美國勞動力的中值年齡是42歲,而StackOverflow的一項有關年齡的調查表明,40歲之後的開發人員只佔開發人員總數的13%。

那麼其他人到哪裡去了?他們被解僱了或者上升到管理崗位了嗎?軟體開發對於過了40歲的人來說,是不是就意味著終結?

本文羅列了10位年齡超過40歲的老程式設計師們的故事,他們都是頂級的軟體開發者,拒絕從事管理崗位,仍然活躍在開發一線,將程式設計作為生活收入的主要來源。

Rob Fletcher,Netflix(Los Gatos,CA)的高階軟體工程師,45歲

專長: Web開發、測試驅動開發、敏捷軟體開發、Grails、Groovy、Spock以及AngularJS。

“我已經寫了16年的程式碼,做了幾年獨立承包商之後,在42歲那年加入Netflix,成為一名高階工程師。

我每天都寫程式碼。目前最喜歡的語言是Kotlin。我想學習Go語言,平常用得比較多的是Java、Scala和Groovy。我一直在學習新的東西,哪怕是很小的事情。我知道自己會是一個糟糕的管理者,所以我壓根沒有想往管理方向發展。

很多事情取決於你的態度。不要成為厭惡新技術的老技術人,也不要嘲笑那些正在使用新技術的人。在進行技術選型時,你的經驗應該成為決策的基礎。如果選擇了老技術,那是因為它們正好適合當前的需求,而不是因為要保護你那積攢了多年卻即將過時的專業知識,也不是因為害怕那些後進者帶著NodeJS

和Go語言來搶奪你的工作。”

Ebbe Kristensen,Prevas A/S(Denmark)的高階軟體設計師,62歲

專長:開發實時嵌入式軟體、軟體配置管理、構建測試用例(系統測試和單元測試)。在實時嵌入式系統、Linux和Windows(包括.NET)方面有豐富的寫作和文件經驗,擅長C、C++、Python、C#和Pascal。

“我在1980年獲得了一個電力系統的電子工程學士學位,從我的第一份工作開始,我就以開發軟體作為我的謀生手段。因為專業學位的問題,我花了將近一年的時間才找到第一份工作。但從那個時候開始,我一直是一名軟體工程師。

我幾乎天天寫程式碼,不處理任何與管理相關的任務。事實上,在很早之前我就意識到,我在管理方面沒有什麼競爭力。

作為一名程式設計師,我很喜歡這個角色,我也很勝任這份工作。如果讓我做一名管理者,肯定會有大麻煩,而且我一點也不享受管理工作。

我的同事裡只有兩個人年紀比我大其他的(包括上司們)都是比我年輕。我的直線經理不到40歲,而他是我見過的最好的管理者之一。我在58歲那年得到了這份工作,不過我並不是年紀最大的僱員,有兩個同事年紀比我還大,儘管如此,他們還是被公司錄用了。

有時候,你幾天甚至幾周都不會學進去什麼東西,而有時候幾個小時學進去的東西就可以把之前“損失”的時間彌補回來。重要的是,你總是想方設法地去學習,時刻準備著,等待機會的出現。

John Brothers,Make&Build(Atlanta,GA)的高階軟體架構師,47歲

專長:企業架構和開發、敏捷教練、資料視覺化軟體。信用卡處理、IT服務和移動應用開發

“我喜歡解決問題,而且我喜歡尋找新的方式來解決問題。正因為如此,我似乎具備了與時俱進的技能。

我最近正在使用Node.JS開發一個專案,之前也用過Hadoop、NoSQL,開發過Android應用,也寫過Go語言程式碼,還熟悉JQuery和Bootstrap的各種特性。

我也關注Java的最新動態,還有Spring、JMS、REST、JSON和JPA,以及其他相關的技術。

我也適當關注技術生態系統的其他部分。在過去的幾年,我使用了IntelliJ、Eclipse、Sublime、Emacs和Vi這些開發工具,我很喜歡使用這些工具來解決各種問題。我一開始使用的是CVS,後來學習了Subversion,最近在學習git。我也有AWS相關的經驗。我還是一個獲得認證的Scrum Master、產品經理和開發者。我寫過很多自動化單元測試(在構建一個系統時,以測試驅動開發是我最喜歡的挑戰之一)。

我不害怕學習新東西。我使用Ruby on Rails/Grails開發Web應用,使用Perl、PHP和Python開發應用解決業務問題。我也有SOAP和AOP的相關經驗。

我嘗試著要成為一名全棧的開發者。我熟悉Unix,經常編寫shell指令碼。我喜歡部署應用、伺服器和工具,不管是為了開發還是為了生產。我熟悉SQL和NoSQL,並且知道它們各自的優缺點。我瞭解TCP/IP,我知道路由、DHCP和各種代理的基礎知識。我構建過MVC應用、訊息驅動的應用、EJB和基於Spring的服務。我也做過前端的JavaScript和CSS開發。我並不想成為一個可以拿獎的UX開發者,但最起碼可以完成基本的功能。

我計劃再幹21年。如果我們從Web開發轉向基於D-ware伺服器的開發,我或許會落後;如果函數語言程式設計最終一統天下,我或許會落後。不過真到了那個時候,我仍然心存希望。”

Roger Whitcomb,Actian公司(Palo Alto,CA)的軟體架構師和軟體工程師,60歲

專長: C、C++、Java

“在我準備成為一名律師的時候,我才開始學習電腦科學(如果你可以想象這是怎樣的一種情況)……現在,我通過編寫大量具有良好文件化和功能性的Java程式碼來獲得我的生活收入(起碼現階段是這樣的)。

在Windows 3.0時代(大約是在1986年前後,我也記不太清楚了)我就開始在Windows上做開發。大約是在10年前,我轉到Mac上,之後就沒有再回到Windows上。我感覺自己就是一個使用Macbook Pro工作的極客……使用C、C++、Java和Swift進行開發……

我最近的一份工作需要從頭設計一整個系統,這也是我第一次做這樣的事情。我現在要跟上Web和移動開發的速度有點吃力,但離“垂暮”還很遠,儘管我已經60歲了。過去我也獲得一些“管理者”相關的工作,不過我都拒絕了,我還是更願意選擇程式設計工作……不過,我也知道,我的一些與我年紀相仿(或者年紀更大)但已下崗的同事在找工作時遇到了麻煩(“是因為經驗太豐富了嗎”),所以我知道人們是怎麼看待那些過了一把年紀的人,認為他們沒有未來。但是,我認為最關鍵的是,你要為你的僱主持續地創造價值。

我目前是Apache軟體基金會Pivot專案的PMC主席。作為一名Java開發人員(Java相關專案的提交者),我希望Java會永生。最起碼不要出現更好的語言,要我把所有的程式碼都移植過去……”

Scott Gartner,SilverbackLearning Solutions(Boise,ID)的高階軟體工程師,50多歲

專長:框架、解析器、建模、圖形、資料庫子系統的設計和實現,資料庫設計(SQL、DML、DDL和LINQ)、XML設計、單點登入方案(SSO)、網際網路應用、Windows應用和動畫。

“我已經做了34年的程式設計師,而我的簡歷只要一張紙就可以裝下。所有超過5年的技術在簡歷上都只是一筆帶過。我有第二張簡歷,上面列出了所有我用過的程式語言和開發工具、資料庫、動畫系統,等等。這樣,大家可以更容易瞭解我。我只在被問到的時候才會拿出第二張簡歷。

在大公司裡(至少對於我來說),老程式設計師一般都想轉到管理層,這也是很常見的一種現象。我一直面臨著類似的選擇,但我不擅長管理,我只喜歡成為一名程式設計師或架構師。

我發現我的記憶力大不如前,也沒辦法記住大型系統的全部模型。不過,我發現我那些豐富的經驗變得越來越有價值。

我們不得不承認我們的整個職業生涯必須不斷地接收訓練成長,世事變化得太快,如果止步不前,終將被淘汰。

每兩年我就會學習一種新的程式語言,有一些是我自己想學的,不過大部分是因為技術發展的需要(也有的是因為新工作的要求)。這樣很有趣。目前我在學習資料倉庫(OLAP)、ETL處理、StarSchemas和Cubes。

Brian Bowman,SAS(Cary,NC)的首席軟體工程師,56歲

專長:專利檔案系統或資料庫的內部元件、持久化資料結構、目錄和索引搜尋技術、伺服器管理、DASD IO驅動、機器碼生成或跨架構的程式碼轉換、物件持久化、客戶端與伺服器端的介面、多租戶、分散式快取,以及大規模的授權系統(實施、管理和日誌)。目前在SAS Viya平臺上做Cloud Analytics Service方面的研究、設計和程式設計工作。

“我目前團隊成員的平均年齡為50歲,而且每一位成員都有超過20年的系統軟體開發經驗。

我和我的同事們花了很多時間在編碼、除錯、測試和解答系統架構問題上面。有些同事還涉及硬體技術評估、在大會上呈獻演講,以及為開源社群貢獻力量,等等。

在過去兩年,我一直是某軟體公司精英團隊的成員之一,這個公司有很多非常出色的工程師,很多都有高階的計算機和應用數學等專業的學位。在那之前,我在一個小型的團隊裡工作了超過10年的時間,我們從無到有設計開發了一個多執行緒的元資料物件叢集伺服器。

團隊裡與我的關係最為密切的同事比我大5到6歲。在那期間,我獲得了4項美國國家專利……那些都是在我40歲之後獲得的。

只要我還能做出有意義的貢獻,我就會一直工作下去。我多次給我的職業生涯充電,從最早的學習和研究,到後來的工作崗位的需要。這是我的本性,也是激勵我持續進步的動力。

我不認為現今的技術只能讓我幹到70歲。我的職業生涯從1983年開始,我通過四項主要的計算機技能生存下來。

1.   1)組合語言級別的大型機系統程式設計。

2.   2)基於C語言的多主機平臺的可移植程式設計,包括桌面、中型Unix網路、小型機的後續產品(如VAX),以及大型機。

3.   3)多層叢集伺服器環境,由後端的多執行緒C以及處於中間層滿足高可用要求的Java組成,主要面向Windows伺服器和Unix環境,也包括Linux。

4.   4)基於多執行緒C的大規模並行網格計算,滿足虛擬的無限伸縮。

雖然我所擁有的這些技能可以幹到退休,但在未來的幾年,我還會將我的專業知識領域擴充套件到機器學習方面。

或許在10年之後,對普通程式設計師的需求會大幅下降。如果一個人真的喜歡計算機技術,但是在程式設計方面達不到更高的水平,那麼可以考慮成為一名經驗豐富的系統管理員。他們總有很多工作要做,比如配置、部署和維護系統。”

Alec Cawley,DisplayLink(Palo Alto,California)的首席軟體研究員,60多歲

專長:嵌入式、多執行緒、多程序、驅動、通訊棧、C/C++、Java、Python、硬體。軟體架構師/工程師,特別是在與硬體緊密接觸的軟體系統,與硬體工程師一起工作,最大化發揮軟體和硬體的效能。

“在我62歲的時候,我已經是公司裡年紀最大的開發者了,其他人大都是40多歲或50出頭。

我最年輕的同事應該是20多歲,他們與我有35年的年紀差別,不過這不是問題。

我們要擁抱技術。現在的世界與我的職業生涯剛開始的時候(穿孔紙帶時期的Fortran)已經很不一樣了,而變化仍然在持續。但反過來說,需要解決的問題總是很相似的,無非就是如何將人類的需求轉成計算機可以做的事情,以及如何避免犯錯、如何找出不可避免所犯下的錯誤。程式語言、開發環境、工具套件、API等東西只是解決問題的手段,我們只是在需要它們的時候才去學習如何使用它們。

我是從穿孔紙帶開始的。即使是到了磁碟檔案時代,我仍然是最早從行式印表機裡讀取程式的人。後來就有了普通文字編輯器。現在我使用具有語法高亮功能的IDE

我認為,在10到20年的時間裡,仍然需要軟體開發人員。在我看來,軟體開發者的工作就是把客戶的需求轉換成計算機執行的指令,而這樣的工作是不可或缺的。這個世界總是需要一些高手,他們在計算機方面比普通人懂得更多,並且掌握了大量與工具相關的知識(軟體包、API、介面,等等)。

在選擇公司方面,我是幸運的。我的大部分時間都花在了軟體開發上,而且總能做一些以前沒有做過的事情。軟體開發裡總有一些重複性的工作,我可以想象得出那樣做是很無聊的。不過,如果你總是在做新的東西,那就不會無聊了。

我所在的嵌入式領域似乎比應用程式更加能夠扛住潮流的沖刷。應用程式每幾年就會有新的東西出現,有些幾乎是曇花一現,有些會持續一段時間,經歷巔峰,然後逝去。而嵌入式一直保持堅挺,以C語言為基礎,再融合一點C++。另一方面,硬體也在持續發生變化,這讓事情變得更加有趣。”

Victor Volkman,Proquest(Ann Arbor,MI)的高階軟體工程師,54歲

專長:程式設計方面擅長Python、Linux、C/C++、.NET,資料庫方面精通MS Access、MySQL和所有基於SQL的環境,還有TCP/IP、企業系統自動化和分散式計算方面的經驗。

“架構與管理是兩道平行線。在超過250人的公司裡,技術人員一般都會有這兩條路可以走。

你喜歡你正在做的事情嗎?如果是,那麼就繼續做下去。為了一點薪水而放棄你所喜歡的事情,整天擺弄會議和郵件,這樣會讓你得不償失。

每過兩年,遊戲規則就會發生變化。不過不用為此感到苦惱。花3到4天時間學習新的程式設計環境,然後用它們來支援業務。在過去的30年,我幾乎每4年就要學習新的東西。我所在的團隊有6個人,年齡從48歲到56歲。我們經歷了3到8次的技術更新。

以下是我的職業概覽。

1.   從使用C和組合語言編寫MS-DOS程式碼開始

2.   學習使用C++和MFC開發windows應用程式

3.   學習使用Unix Perl開發基於CGI-BIN的Web應用

4.   學習C#

5.   學習Java和JSP

6.   學習智慧手機開發:iOS/Android/Blackberry

7.   回到Unix,開始使用Python

8.   AWS開發(EC2、RDS、SQS,等等)”

Kurt Guntheroth,軟體工程師,50多歲

專長: Windows、Linux/Unix、嵌入式;演算法設計、C++、C、多執行緒和分散式、電信、安全、套接字程式設計、標準委員會成員、產品計劃和概念落地;TQM、ISO 9000、敏捷開發和傳統開發方法論。

“軟體開發仍然是一個年輕的領域,工具和技術仍然在發生快速的變化。如果軟體開發人員不能持續地更新他們的技能,在不到20年的時間裡,他們就會過時。所以,一個40歲的老程式設計師很快就會發現自己已經無法勝任工作,而且前途堪憂。

好的開發人員會持續學習,直到他們退休,比如Ken ThompsonsBjarne Stroustrups。不過,我們大多數人(特別是40歲左右的)最終都會意識到,我們並不能成為行業的大神。

C++變化很大,每幾年就會有新版本出現,並且包含了全新的特性,我從來沒有停止過學習。也就是說,我已經成為了一個非常有經驗的C++開發者,擁有超過20年的全職系統程式設計經驗。如果有人要我給自己的經驗打分,從1分到10分,那麼毫無疑問,我會給打自己9分,因為比我更瞭解C++的人只有那些寫書的人。後來,我寫了一本有關C++優化的書。

程式設計是一件很容易的事情。你告訴它們做什麼,它們就做什麼。它們是可以信賴的,也是可靠的。對於程式碼來說,無所謂好日子,也無所謂糟糕的日子,它們存在的意義就是在你與它們發生互動的時候。程式碼可能會是難啃的骨頭,它們要求對細節的重度關注和相當程度的腦力付出。

人類與程式碼完全不一樣,人類狡猾、變化多端,而且不可能充當工具使用。你不能直接告訴他們做什麼,你要去影響他們,這樣他們才會做你需要他們做的事情。他們不會直接對你的輸入做出響應,而是間接地對你的鼓勵或者你所提供的一些獎勵物品做出響應。雖然人類對獎懲很敏感,但如果只是通過這種方式來管理人類並不會奏效。管理應該要像與家人、朋友和同伴互動一樣。如果你喜歡與人打交道,那麼你就會喜歡上管理。如果你不喜歡與人打交道,那麼你就不會成為一個成功的管理者。

薪水高的管理者比薪水高的程式設計師賺得更多,不過他們需要有很多名校的學歷背景,擁有良好的人際網路和政治同盟,也需要有一定程度的冷酷無情來震懾大部分人。而程式設計不需要這種冷酷無情,這也就是程式設計很好的一個方面。程式設計是關於創新,而不是操縱。

所以,你要問問自己,你更喜歡哪一種互動模式,是程式碼的確定性和優雅,還是人類的友情和領導力?喜歡程式碼完全沒有問題,那些高階架構師和CTO也能賺很多錢。”

James Grenning,軟體顧問,60多歲

專長:面向物件軟體設計、測試驅動開發(C、C++、Java、C#)、嵌入式軟體、重構、極限程式設計、Scrum、敏捷開發、釋出計劃、增量計劃。C和C++單元測試框架CppUTest的主要貢獻者之一。嵌入式系統大會和敏捷大會的演講人。Agile Manifesto的初始作者之一。

“保持學習。我62歲了還在程式設計,我喜歡程式設計。

我會花一些時間在管理上,這對我來說是很重要的。不過我還是決定把程式設計和軟體設計作為我的最愛。在我從管理上學了一些東西之後,我決定還是回到我最喜歡的軟體開發上。

為了保證你的價值,你要確保40年的經驗是不重複的。我們生活在一個快速變化的世界,不僅僅是技術,也包括我們如何構建軟體。

把東西做出來固然是好,但那樣還遠遠不夠。你還要讓產品和程式碼更有用,能存活更長的時間。你要知道如何成為團隊的一員。要想讓職業生涯長久、成功,同時能賺到錢,只是把東西做出來是遠遠不夠的。”

的文章,請點選:

更多JavaUnity3D的文章,請點選:


相關推薦

今日460程式設計師大爺生存祕籍

美國勞動力的中值年齡是42歲,而StackOverflow的一項有關年齡的調查表明,40歲之後的開發人員只佔開發人員總數的13%。 那麼其他人到哪裡去了?他們被解僱了或者上升到管理崗位了嗎?軟體開發對於過了40歲的人來說,是不是就意味著終結? 本文羅列了10位年齡超過40

今日三十五年經驗分享:程式設計師進階八法

如果你的目標僅僅是提高自己,那麼很容易實現,但是如果你的目標是成為一個偉大的程式設計師,那麼這就不簡單了。 很多人都願意說,我想變得更好,但是更好是什麼卻很模糊,而且人們也不知道該怎麼樣去做。 時間到了,提高你的程式設計技能,認真+嚴肅,走起! 我在這裡分享八法

C語言訓練4反序數*

Description 設N是一個四位數,它的9倍恰好是其反序數,求N。反序數就是將整數的數字倒過來形成的整數。例如:1234的反序數是4321。 Input Output Samp

如何看待又一深圳 24 程式設計師倒在工位上?是否程式設計師下班晚、加班多成了常態?

這是職業的焦慮還是環境如此? 如何避免過度加班帶來的身體損傷? 8月25日下午,深圳紅孩兒資訊科技有限公司的程式設計師程某倒在了自己的崗位上。據同事反應,他當天的臉色不是很好,當時正在寫程式碼,起身倒水時暈倒在地不省人事。 程某經常加班到凌晨,有時甚至到早上五六點鐘,第

中級算法4.最長回子串

有效 In 回文子串 lin ini IT 輸出 答案 bstr 題目: 給定一個字符串 s,找到 s 中最長的回文子串。你可以假設 s 的最大長度為1000。 示例 1: 輸入: "babad" 輸出: "bab" 註意: "aba"也是一個有效答案。 示例 2:

今日幹貨分享個微信解綁手機號的方法

申訴 cnblogs 圖片 1-1 記得 賬號 images http mage 1:點設置- 賬號與安全2:微號安全中心3:找回賬號密碼4:用微信號找回5:申訴找回微號賬號密碼6:開始申訴7:我記得微號,輸入手機號(必需是微號好友綁定的手機號),發驗證!8:退出來,重新登

SignalR學習系列4. SignalR廣播程序

back aspnet ocs || tutorial strong family load over 創建項目 創建一個空的 Web 項目,並在 Nuget 裏面添加 SignalR,jQuery UI 包,添加以後項目裏包含了 jQuery,jQuery.UI ,和

有獎征51CTO男/女子圖鑒 哪一面才是真的你

向上 目前 祝福 分享 員工 好的 .com 閱讀量 ado 一、活動主題 51CTO男子/女子圖鑒 二、活動背景 前有東京女子圖鑒,後有北京上海女子圖鑒,北漂滬漂的職場人士“魔系”野心躍然紙上。程序員工程師們還在“佛系”敲代碼嗎?是傳說中專業靠譜低調多金的大牛,還是加

LeetCode 簡單題46- 1的個數

宣告: 今天是第46道題。編寫一個函式,輸入是一個無符號整數,返回其二進位制表示式中數字位數為 ‘1’ 的個數(也被稱為漢明重量)。以下所有程式碼經過樓主驗證都能在LeetCode上執行成功,程式碼也是借鑑別人的,在文末會附上參考的部落格連結,如果侵犯了博主的相關權益,請聯絡我刪除

考題詳解 4月DP練習賽題解

跑步[Neal Wu, 2007] 奶牛們打算通過鍛鍊來培養自己的運動細胞,作為其中的一員,貝茜選擇的運動方式是每天進行N(1 <= N <= 10,000)分鐘的晨跑。在每分鐘的開始,貝茜會選擇下一分鐘是用來跑步還是休息。貝茜的體力限制了她跑步的距離。更具體地,如果貝茜

劍指offor4、重建二叉樹

牛客網題目連結:重建二叉樹 題目描述: 輸入某二叉樹的前序遍歷和中序遍歷的結果,請重建出該二叉樹。假設輸入的前序遍歷和中序遍歷的結果中都不含重複的數字。例如輸入前序遍歷序列{1,2,4,7,3,5,6,8}和中序遍歷序列{4,7,2,1,5,3,8,6},則重建二叉樹並返回。 1

LeetCode 中等題4-Z字形變換

宣告: 今天是中等題第4道題。將一個給定字串根據給定的行數,以從上往下、從左到右進行 Z 字形排列。以下所有程式碼經過樓主驗證都能在LeetCode上執行成功,程式碼也是借鑑別人的,在文末會附上參考的部落格連結,如果侵犯了博主的相關權益,請聯絡我刪除 (手動比心ღ( ´・ᴗ・` )

高速介面-RapidIO4、Xilinx RapidIO核詳解

一、RapidIO核概述   RapidIO核的設計標準來源於RapidIO Interconnect Specification rev2.2,它支援1x,2x和4x三種模式,每通道的速度支援1.25Gbaud,2.5Gbaud,3.125Gbaud,5.0Gbaud和6.25Gbaud五種。   Ra

Spring Boot課程4.日誌

1 日誌框架的選擇 1.1 框架一覽 JUL、JCL、JBoss-logging、log4j、log4j2、slf4j等。 日誌門面(抽象層) 日誌實現 JCL(Jakra Commons

Docker學習總結4.Docker安裝和部署

之前的總結分別介紹了Docker是什麼,以及Docker由哪些部分組成。本篇將為大家詳細介紹Docker是怎樣安裝、部署和使用的。 我們這裡在Windows機器上使用VMware來模擬在Linux的CentOS 7版本上來安裝Docker。 首先開啟虛擬機器: 記住IP地

C語言練習題二進位制模式左右翻轉輸出

《C與指標》5.3題   問題 實現一個函式 reverse_bits 將變數value的二進位制位模式從左到右變換一下後的值返回。 在32位機器上25這個值包含下列各位:  00000000000000000000000000011001 

TensorFlow學習筆記4:認識Variable及其重用(共享),在scope上的初始化

學習《深度學習之TensorFlow》時的一些實踐。 認識TF中的Variable TF通過name來標識變數(Variable),這和呼叫者定義的程式裡的"變數名"無關。當不指定name時,由TF自己指定,當建立的變數的name已經存在時,TF會為其改名。 變數的建立

XSS技巧拓展————4、淺談跨站指令碼攻擊與防禦

跨站指令碼簡稱xss(cross-site scripting),利用方式主要是藉助網站本身設計不嚴謹,導致執行使用者提交的惡意js指令碼,對網站自身造成危害。xss漏洞是web滲透測試中最常見而又使用最靈活的一個漏洞,近期在拜讀了《白帽子講web安全》、《Web實戰篇》、《XSS跨站指令碼

安卓學習4.碎片(Fragment)實踐---一個簡單的新聞應用。

今天看了有關碎片(Fragment)的一些知識,最後面有一個實踐應用,我就做了這個專案,並做了一點小結。 很多時候我們希望我們的app能夠在手機/Pad上通用,但是Pad螢幕面積比較大,手機上可以一個螢幕都在展示一個專案,但是如果平板也這樣,可能就比較浪費,為了應對這個問題

自定義View4.ViewPager卡片滑動效果

【難度★☆☆☆☆】前面我們學過了ViewPager的原理,那麼接下來我們實現一個帶縮放卡片式的ViewPager,它可以用來展示圖片,展示卡片式的UI。   許多時候我們閒原生的ViewPager的效果太過單調,於是我們想做一些更好的UI效果,比如下面