易語言編程游戲,有哪些適合新手學編程的書推薦?
本文從以下幾個方面給大家分享幾本高價值書單,并不一定全面,歡迎讀者補充,希望能對你有幫助。
1 關于編碼與重構
1.1 代碼整潔之道
英文名《Clean code》,該書出自 Robert C Martin 之手,又被稱為 Bob 大叔,是一位美國著名的軟件工程師和作家,他已經寫了有關敏捷軟件開發的書籍。書中提到眾多有名的編程原則:比如 SOLID 原則、 Law of Demeter(LoD,又被稱為最少知識原則)。推薦理由:每個程序員都必須擁有本書并閱讀它。這是一本非常著名的書,它將完全改變您的編程風格,書中介紹的規則均來自作者多年的實踐經驗,涵蓋從命名、數據結構、面向對象的設計原理到重構的多個編程方面,雖為一“家”之言,然誠有可資借鑒的價值。或許,真正整潔的代碼真能讓同行讀起來像詩一樣。任何傻瓜都可以編寫計算機可以理解的代碼。優秀的程序員編寫人類可以理解的代碼。— 馬丁·福勒如果只能讀一本書,我就推薦這本。最后,基于本書,眾多開發者還推出了各種語言的整潔之道:? Javascript 整潔之道? PHP 整潔之道? ABAP 整潔之道? Java 整潔之道? .NET 整潔之道還有各大科技公司的代碼風格指南:? Google 風格指南? Uber Go 語言風格指南Bob 大叔的《架構整潔之道》也值得推薦,這本書是在架構領域的登峰之作,圍繞“架構整潔”這一重要導向,系統地剖析其緣起、內涵及應用場景,涵蓋軟件研發完整過程及所有核心架構模式。還有《程序員的職業素養》,作者以自己以及身邊的同事走過的彎路、犯過的錯誤為例,意在為后來人引路,助其職業生涯邁上更高臺階。1.2 重構(第2版)
英文名: 《Refactoring: Improving the Design of Existing Code,2nd Edition》,作者 Joshua Kerievsky。本書是理論和實踐最佳組合的罕見書籍之一。重構是一個使您的工作代碼更加美麗的過程,這本書可以利用已經嘗試和測試的軟件開發世界的模式來為您提供幫助。推薦理由:重構一詞經常在各種大會上被提及,那就是這本書帶來的影響。重構也就是重寫軟件的過程,而無需更改其功能,以提高其可讀性,可檢驗性或可維護性。重構是使工作代碼美觀的過程,重構有助于改進工作代碼的設計。這也是優秀程序員的必備技巧之一,通常優秀的程序員也擅長重構。本書將教你重構代碼的藝術和科學。無論您是 Java 程序員、C++ 開發人員還是 Python 開發人員,每個程序員都可以從本書中受益。與《重構》經常被提及的書就是大名鼎鼎的《代碼大全》,書中解釋的也是久經考驗的技術和策略,能有效幫助程序員和軟件開發人員。筆者也曾在大學的時候把這本書圖書館借出來,發現這本書太厚,啃不動,到期就立馬歸還了。1.3 代碼之美
英文名:《Beautiful Code: Leading Programmers Explain How They Think》,作者:Grey Wilson。推薦理由:大牛前輩的博客合集,同時也是提高編碼技能的好書之一,因為它為您提供了一個機會,讓您了解專業程序員如何處理問題、編寫的代碼以及他們如何解決問題,并且仍然能夠保持他們的代碼美觀。這本書是一系列案例研究的集合,揭示了 Emacs 到 Facebook 等大型網站架構秘密,講述了那些專家程序員,包括布萊恩·克尼原,喬恩·本特利(Jon Bentley)(編程珠璣的作者),蒂姆·布雷(Tim Bray),卡爾·福格爾(Karl Fogel),邁克爾·菲瑟斯(Michael Feathers)(有效地使用舊版代碼的作者),以及許多更多偉大的作者和程序員。關于二分查找,在書中數次被不同作者提及,了解不同作者的觀點。無論您使用哪種編碼語言,例如 Java,C#,Python 或 Ruby,都會在本書中找到有趣的東西。代碼之美調查了一項努力的人類發明和創造力的范圍:計算機系統的開發。每章中的美觀來自發現獨特的解決方案,這是作者的力量超越界限,識別他人所忽略的需求,并找到令人驚訝的解決方案,以解決令人困擾的問題。2 關于職業成長
2.1 程序員修煉之道(第2版)
英文名《Pragmatic programmer》,作者是 Andrew Hunt & David Thomas。中文版的譯者是大名鼎鼎的云風,副標題是:通向務實的最高境界。推薦理由:本書是時隔 20 年的新版,覆蓋哲學、方法、工具、設計、解耦、并發、重構、需求、團隊等務實話題的最佳實踐及重大陷阱,以及易于改造、復用的架構技術。剛出來的時候博文出版社舉辦了一個推廣活動,在云風和皓子叔聯袂推薦下,毫不猶豫的入手了本書。程序員往往最難得就是務實主義,總想追求新技術,炒新概念。工作后才逐漸明白,編程的本質,均不依賴于特定語言、框架和方法,技術改變世界在于能夠有效解決用戶的真實需求。本書本質上是程序員的自助指南。它探索了良好的軟件開發實踐,并為您提供了出色的建議、提示和技巧,以更有效地編程。正是對經典和現代軼事、引人入勝的類比和發人深省的例子的創造性使用,使每個部分的學習都變得有趣而有趣。如果說大學期間讀的都是類似于 C 語言圣經和 Head First 系統書籍的話,工作后的人才會真正懂得為什么這本書籍不厚,讀起來拍案叫好,這大概就是大道至簡。作者另一著作:《程序員修煉之道: 從小工到專家》也是值得推薦的2.2 卓有成效的程序員
英文名:《The Productive Programmer》,作者:Neal Ford。推薦理由:本書就是講述如何在開發軟件的過程中變得更加高效。同時,《卓有成效的程序員》的講述將會跨語言和操作系統:很多技巧的講述都會伴隨多種程序語言的例子,并且會跨越三種主要的操作系統,Windows(多個版本),Mac OS X 以及 *-nix (Unix 或者 Linux)。貫穿全文的思想大概就是盡量讓機器做機器該做的事情,讓程序和程序打交道,發揮程序員在這方面的先天優勢。學會善用工具,命令行、學會寫腳本,學會宏。提供效率,不去做重復單調的工作。最終的目的:成為一個“慵懶”的程序員。2.3 軟技能:代碼之外的生存指南
英文名:《Soft Skills: The software developer's life manual》,作者:John Z. Sonmez推薦理由:研究生期間讀過最受益的一本非技術書。程序員都知道編碼很重要,這是我們吃飯的硬技能。可是實際工作上才發現不止寫代碼,代碼之外的軟技能也很重要:比如面臨著與客戶溝通、與產品打交道的溝通問題;比如應該關注自身發展,書中也介紹了怎么做職業突圍;還有更多章節介紹了作者如何學習、如何理財、健身、自我營銷等等。分享書中有趣讓我印象深刻的點是作者去面試,面試官瀏覽過他的博客文章,兩人因此相談甚歡。 最后也想給閱讀的朋友聲明一下:這本書涉獵了很多方面,但是并不是沒一點都是一套可以照抄的完美答案,畢竟作者也是從當時的環境和自己經歷出發介紹這些內容,每個讀者應該都有自己的選擇,綜合而言,這本書挺適合各個階段的人閱讀的,尤其大學生和初入職場的朋友。作者也出了《軟技能2:軟件開發者職業生涯指南》,如果說軟技能關注于生活,那軟技能 2 則更加關注于了軟件開發職業。3 關于黑客與開源
3.1 Unix 編程藝術
書籍英文名:《The Art of UNIX Programming》,作者:《Eric S. Raymond》從 1982 年開始就是 UNIX 開發者。推薦理由:本書涉及 Unix 系統領域中的設計和開發哲學、思想文化體系、原則與經驗,由公認的 Unix 編程大師、開源運動領袖人物之一 Eric S.Raymond 傾力多年寫作而成。程序會過時,編程語言會更新,代碼會跟隨業務不斷改動,但編程思想的生命力會長盛不衰,好的編程藝術也是具有穿透力的,盡管書中的案例已經偏老,但貫穿始終的 KISS 原則、思想文化體系、設計與開發哲學一定能夠給你帶來醍醐灌頂的感覺。Keep it simple stupid,簡稱 KISS 原則。在做軟件設計的工作中,很多時候都不要想得過于復雜,也不要過度設計和過早優化,用最簡單且行之有效的方案也就避免了復雜方案帶來的各種額外成本。這樣既有利與后續的維護,也有利于進一步的擴展。另外,本書還可以與“左耳朵耗子”ef="">皓子叔推薦 過的《UNIX傳奇:歷史與回憶》結合著一起看,了解 UNIX 的誕生記與發展史,貝爾實驗室的幕后故事!本書不但書寫 Unix 的歷史,而且記錄作者的回憶,一探 Unix 的起源,試圖解釋什么是 Unix,Unix 是如何產生的,以及 Unix 為何如此重要。3.2 大教堂與集市
英文名:《The Cathedral & the Bazaar: Musings on Linux and Open Source by an Accidental Revolutionary》, 《Unix編程藝術》作者 Eric S. Raymond 的另一封神之作,副標題是《對 Linux 和開源革命的沉思》。推薦理由:大家都知道程序員熱衷于開源文化,都在說不要重復造輪子。開源時代下的軟件開發可能只需要三個鍵盤按鈕:CTRL + C + V,開個玩笑。說到開源文化,那么本書《大教堂與集市》是開源運動的《圣經》,顛覆了傳統的軟件開發思路,影響了整個軟件開發領域。作者把軟件開發思路類比于古代的大教堂文化和集市文化,講述了集市如何變成大教堂,書中系統解釋了開源軟件是如何生產的,開源開發的優勢在哪,開源軟件的傳承是如何做到的。3.3 黑客與畫家
英文名:《Hackers and Painters: Big Ideas from the Computer Age》,作者:Paul Graham,本書的譯者是大名鼎鼎的阮一峰大佬。推薦理由:說到黑客文化,就不得不提到硅谷創業之父Paul Graham 的這本書,本書主要介紹黑客 Hacker,即優秀程序員的愛好和動機,討論黑客成長、黑客對世界的貢獻以及編程語言和黑客工作方法等所有對計算機時代感興趣的人的一些話題。本書是一本為黑客正名的技術散文集,看完書后第一次將我從電影中的黑客形象顛覆過來,才了解到并不是入侵系統、制作病毒、各種解密的人就是黑客,Hacker 是專家級程序員,是一群與畫家有著極大的相似性,他們都是在創造,而不是完成某個任務,“黑客”象征著第一流的能力,以及求解問題過程中產生的精神愉悅或享受。他們崇尚分享、開放、民主、計算機的自由使用和進步。而那些惡意入侵計算機系統的人更應該被稱為 cracker(駭客)。4 關于算法與設計模式
4.1 算法設計手冊
英文名:The Algorithm Design Manual (2nd Ed.),作者:Steven S Skiena推薦理由:關于算法的重要性大家都知道,大家肯定都知道另外兩本著名的《算法導論》和《算法4》:《算法導論》側重與算法的數學推導,適合研究,而《算法4》側重于算法的代碼實現,適合入門。而這次推薦的《算法設計手冊(第2版)》卻沒有那么有名氣,但也不失為設計實用且高效算法的最全面指導書。該書揭密了算法的設計與分析,以簡單易懂的寫作風格,介紹了各種算法技術,著重強調了算法分析。目前市場上算法書層出不窮,但是經典的算法卻一直在那里,不曾走遠。4.2 Head First 設計模式
英文名:《Head first design patterns》,作者:Elisabeth Freeman / / Eric Freeman / Bert Bates / Kathy Sierra / Elisabeth Robson推薦理由:這本書完整地涵蓋了 GoF 版本全部23個設計模式,毫不費力地解釋了世界各地熟練的軟件開發人員和程序員用來構建優雅、功能齊全、靈活和可重用的軟件的幾種軟件設計模式。。圖文并茂,配有大量說明性和啟發性的示例,它們將使學習同時變得高效和有趣。與其他文本繁重的編程書籍不同,這本書具有引人深思、視覺豐富的格式。Head First 系統書籍充滿了幽默感,選題和編輯都很用心,值得一讀。相信讀完的讀者逐步邁向對軟件設計模式的深入了解。再來讀 GoF 不失為一個不錯的選擇。4.3 設計模式:可復用面向對象軟件的基礎
英文名:《 Design Patterns: Elements of Reusable Object-Oriented Software》,又被簡稱為計算機領域的 GoF ,因為本書的作者是四個人:Erich Gamma / Richard Helm / Ralph Johnson / John Vlissides。推薦理由:本書是任何使用面向對象代碼的開發人員的必備入門讀物。而且作者 Erich Gamma 是 jUnit、Eclipse、IBM Jazz 項目、Visual Studio、Azure 和 Office 365 的幕后推手。如果您沒有很好地掌握 UML,您可能會發現很難吸收編程書中匯編的一些信息和示例。然而,這不會阻止您欣賞設計模式書中敘述的美妙之處,它既簡單又內容豐富。《設計模式》一書詳盡地解釋了 23 種軟件設計模式,可幫助軟件開發人員和設計人員制作更好、更優雅、更靈活的軟件。這本書討論了針對常見軟件設計問題的大量簡潔明了的解決方案。如果說 GoF 太難讀下去,那么就推薦程杰的《大話設計模式》,這本書通過對話的形式帶領大家入門設計模式,人人都可以是好學的小菜和經驗豐富的大鳥。4.4 編程珠璣(第2版?修訂版)
英文名:《More Programming Pearls,Second Edition》,作者:John Bentley推薦理由:這是一本帶你真正領略計算機科學之美,融深邃思想、實戰技術與趣味軼事于一爐的奇書。與大多數其他編程書籍不同,這本書側重于基本問題和一般問題。它討論了可以提高性能或減少內存需求的各種算法和技術。作者選取許多具有典型意義的復雜編程和算法問題,生動描繪了歷史上眾大師們在探索解決方案中發生的軼事、走過的彎路和不斷精益求精的歷程。就如書名一樣,大浪淘沙,計算機科學中的智慧正如自然界里珍珠出自細沙對牡蠣的磨礪,留下一個個編程“珠肌”。題外話:
上面的書都是本人曾經閱讀過,或者說在圖書館中有借閱翻過的書。也是計算機領域評分很高、有口皆碑的書籍。但計算機行業的經典書籍太多,本人能推薦的也只是其中一部分,想要推薦的內容也不想針對某個特定編程語言和領域,所以像《C++編程思想》和《On Java8》這類書籍沒有進行推薦,推薦理由也不一定完全正確,歡迎大家批評指正。另外,看完上述的書并不能說自己就能在工作中就能運用到,看完就能成為一個頂尖的程序員。何況看書也不能完全接收前輩們的這些大智慧,但如果在某個瞬間(看書過程或者實踐過程中)對自己有一種醍醐灌頂的感覺,就已足夠。參考鏈接:
? UNIX傳奇(上篇)? 假期好讀書? Top 5 Books to Improve Coding and Programming Skills? http://www.osnews.com/images/comics/wtfm.jpg本文分享自華為云社區《【云駐共創】對于編程思想和能力有重大提升的書有哪些》,作者:宇宙之一粟 。
女生適合編程嗎?
前言
現在已經是新世紀了,不存在哪個職業有性別差異,性別不再是職業發展阻礙。商界有格力的董明珠,老干媽的創始人陶華碧,政界的原外交部發言人華春瑩…,巾幗英雄很多很多!
女性程序員占比問題以下內容來自:
2003 年,卡耐基梅隆大學的計算機科學家 Allan Fisher 和社會學家 Jane Margolis 發表了一篇研究
據統計,自 1960 年到 2013 年
在法律行業,女性律師的占比,從 3% 提高到了 33%;對于醫師和外科手術師,女性占比則從 7% 上升至 36%;在生物學領域,女性占比從 28%,上升到 53%;在化學領域,女性占比從 8%,上升到 39%。計算機行業呢?在 1960 年,女性在計算機行業從業占比是 27%;到了 2013 年,這一數字是 26%。其他行業的女性從業者占比大幅上升,計算機行業反而略微下降。
現在這一數字是多少呢?不同的統計渠道,不同的統計方法,對術語的不同定義(比如什么叫“程序員”),可能得到的結果不同。但這里有一個數字可以參考:
Statista 在 2020 年初給出的統計,女性開發者占比大概是 8%。
這一現象的解釋相較男性,女性在邏輯思維上差一些,所以在編程學習上不如男性
但實際上,對于這一論斷,在認知神經科學領域有過很多相關的實驗和研究,至今都沒有靠譜的證據來證明這一結論。(所以說要有自信)
換句話說,目前的科學研究更支撐的結論是:在邏輯思維能力上,女性和男性是沒有差異的。
但是,社會對“女性邏輯思維能力較差”這一刻板印象,卻真實影響了女性的信心。
2004 年,斯坦福大學 Lilly Irani 的一份簡單的研究,驗證了這一點。這個研究,最終發表在了 ACM SIG Computer Science Education 上。
Irani 教授的實驗非常簡單,她找來一組計算機科學系的學生,他們在學習成績上是一個水平的。
但是當被問到,在使用計算機科學的知識解決問題的能力上,你們認為自己的水平是如何的時候,男同學給自己打出的平均分是 8.4 分;而女同學卻只有 7.7 分。
也就是雖然大家在學校的表現是一樣的,但是整體,男性卻普遍認為自己使用計算機解決問題的能力更強。
而當問到,你是否有信心成為一個比平均水平更好的程序員的時候(比 50% 的程序員更好),有 60% 的男性有這個信心;相較而言,只有 10% 的女性有這個信心。
L. Irani. 2004. Understanding gender and confidence in CS course culture in Proceedings of ACM SIG Computer Science Education 2004.
如果我們去追究,在計算機科學領域,男性的信心是從哪里來的?或者女性的不自信源于哪里?很顯然,社會的刻板印象是很重要的一個原因。
在美國的 70 年代末,80 年代初,小型家用電腦開始流行起來。
比如 1977 年蘋果公司發布的 8 比特家用電腦 Apple II:
再比如 1981 年,IBM 發布的 IBM Personal Computer 5150.
當個人電腦開始走進家庭的時候,青少年有了更早的機會,可以隨時隨地接觸電腦,開始計算機啟蒙。
在 80 年代中期,一些美國青少年已經在大學前有了對編程的基礎認識,比如什么是 if 語句,什么是循環邏輯。
毫不出人意料地,來自大學的統計數據表明:有這些對計算機基礎認識的學生,大多數是男生。
Allan Fisher 和 Jane Margolis 深入走訪了很多家庭,發現了很多原因。
比如,相較女生,男生有高出兩倍多的機會,獲得一臺屬于自己的個人電腦,當做圣誕節或者生日的禮物。
而如果一個家庭購買了一臺計算機公用的話,這臺計算機將有更大的概率被放置到兒子的房間中,而非女兒的房間中。
更重要的是,在教育上,如果父親從事和編程相關的工作的話,父親和兒子之間更有可能建立起“師徒”的關系。
父親會手把手教自己的兒子寫 BASIC 程序,查看相關的文檔,甚至鼓勵他們做出一個屬于自己的游戲。
而女兒能獲得這樣的機會很少,即使自己父親的工作和編程相關。
不僅在家庭教育上存在這樣的“偏見”,在學校,也存在這樣的“偏見”。
Allan Fisher 和 Jane Margolis 的研究提到了一個很有意思的結論,那就是,社會對男性和女性的“要求”,可能并不僅僅是學習什么專業,從事什么工作這么簡單。
他們的研究顯示,整個社會似乎更能容忍男性是一個“專才”,而對女性的要求,更多的,是要成為一名“全才”。
結論:兩位教授的解釋是:雖然那些男孩子從小就接觸計算機,從小就接觸編程,但是,那是一種“業余”的接觸。
相較于在大學里體系化,嚴格,并且極高密度的學習和訓練,大多數男孩子那些早期對計算機的學習和接觸,在大學課程面前,簡直是皮毛,不值一提。
通過專業的學習和訓練,這些早期的優勢,很快就會被追趕上,哪怕是零基礎。
他們的研究表示,“是否在少兒時期就接觸過計算機”這一因素,完全不能成為預測“日后在計算機領域的成績”的指標。
至此,在我看來,這個研究已經超越了對“計算機領域的性別差異”的研究范疇,而有了更加普世的意義,對所有人都成立。
早,并不是一個不可取代的優勢;
相較而言;成體系,持續,高密度的訓練,才是更重要的因素。
只有有這些因素作為前提,早,才可能是一種優勢;
而如果沒有這些因素,早,是很容易被超越。
自學編程學哪些語言比較好?
初學者如何選擇編程語言和開發方向全世界的編程語言有 600 多種,TIOBE 統計的有 100 種,參與排名的有 50 種,前 20 種是常用的,它們目前正在流行,或者曾經非常流行。
圖1:2021 年 11 月份編程語言排名 TOP 20要想選擇編程語言,首先得確定開發方向,比如網站開發、APP 開發、機器學習、大數據、嵌入式、GUI 軟件、算法設計等。編程語言不是萬能的,一門編程語言只能勝任一個或者幾個開發方向,一個開發方向往往也有多種編程語言可以選擇。我們首先談一下開發方向的選擇,然后再說編程語言的選擇。1. 選擇開發方向
選擇大于努力,只有切入一個適合自己的開發方向,才能持續進步。關于開發方向,我有以下兩個選擇標準。(1) 興趣學習編程是一個非常枯燥的過程,內容多,時間長,成本高,就算參加全職培訓班,至少也得學習半年才能入門,做出一點小玩意來。要想成為別人眼中的大神,或者編程專家,沒有三五年的功夫肯定是不行的。學習編程的過程是比較艱苦的,沒有興趣很難硬抗下來,即使報名了培訓班也學不會,所以,我們首先要選擇自己感興趣的一個開發方向,這樣不但能快速學習,以后還能持續進步。比如我就對網站感興趣,高中階段我就想開發一個屬于自己的網站,感覺非常炫酷,所以大學我毫不猶豫地選擇了網站開發這個方向。我在選擇開發方向的時候沒有任何糾結,我知道自己必須選擇網站開發。興趣是最好的老師,沒有之一。遺憾的是,對某個事物有強烈興趣的人很少,大部分人都是被動選擇。此處我說的興趣,是指別人無法撼動的熱愛,是工作之余讓你放松的事情。如果你只是有過某種想法,別人告訴你這個想法不靠譜,你就放棄了,這頂多是一時的雞血。(2) 未來發展
如果你學習編程不是因為興趣,只是想選擇一份職業,那我希望你切入一個有發展潛力的開發方向。每個產業的發展規律都是類似的,都要經歷以下幾個周期:拓荒期 -> 發展期 -> 成熟期 -> 衰落期我希望你在發展期切入一個產業,然后持續努力和積累,讓產業的發展帶著你起飛。站在風口上,豬都能飛起來。你應該聽說過很多沒啥背景的人,突然之間一夜暴富了,惹得別人羨慕嫉妒恨吧,這些人,大都是在一個爆發式增長的行業里面翻了身,比如十年前的包工頭、持續火熱的程序員。注意,最好不要在拓荒期切入一個產業,你很有可能堅持不到曙光到來之時就已經轉行或者年老色衰了,成為了別人談笑中的“烈士”。對于軟件開發產業來說,GUI 桌面軟件已經是過去式了,APP 和網站也已經進入成熟期,我推薦機器學習(人工智能)和大數據兩個方向,它們都是國家重點扶植的細分產業,而且寫入了十四五規劃,未來至少還有十年的發展時間。機器學習需要大數據提供原料,反過來,大數據分析也依賴機器學習模型,它們是相輔相成的,很難隔離開。另外,選擇產業方向也是有風險的,也是一次命運賭博,誰也不能確定這個產業能不能發展起來,就算發展起來,又需要多少年呢?又有多大的產值呢?比如人們一直談論的人工智能已經發展了幾十年了,到現在還是“人工智障”,底層理論并沒有本質的突破。雖然國家把人工智能選為重點產業,注入了海量資金和人才,各家大公司也跟風進入,但是底層理論如果不突破,十年以后沒準還是智障,只不過應用場景多了。誰也不能穿越到未來,誰也不能告訴你確定的答案。就算一個國家,也會點錯科技樹,比如:美國認為自己無人能敵,發展了朱姆沃爾特級驅逐艦,打算近岸攻擊,想不到中國突然崛起,海軍開始下餃子,美國不得不轉為遠洋作戰,廢掉朱姆沃爾特級。日本押寶混動汽車和氫能汽車,積累了大量專利,但是中國卻切換了賽道,傾力發展純電動汽車,并且積累了一定的優勢,日本想逆襲非常困難,汽車產業岌岌可危。在產業發展過程中,會有很多不確定因素,我們只能盡力選擇一個有前景的產業。其實吧,很多“暴發戶”也不懂得什么產業發展規律,他們只是陰差陽錯地進入了某個產業,恰好趕上產業崛起而已。我自己當初也不懂互聯網,只是對網站感興趣,就進入了互聯網產業,抓住了 PC 互聯網的尾巴,所有才比其他行業的同學混得好點。也就是說,我混的好,不是因為我足夠優秀,而是因為我進入了互聯網產業,搭上了產業的便車,我只是比我的同學更加幸運而已。2. 選擇編程語言
確定了開發方向,接下來就可以選擇編程語言了。有的開發方向比較純粹,只有一兩種編程語言,有的開發方向魚龍混雜,有五六種編程語言,選擇編程語言也是一個讓人糾結的過程。以下是部分開發方向可以選擇的編程語言:1) GUI 桌面軟件
能開發 GUI 軟件的編程語言眾多,既有傳統的 C++、C#、VB、Delphi、Java,也有新晉選手 Python、Node.js(JavaScript),還有小眾的易語言(中文編程語言)。如果你只是想玩玩,那么你隨意,適合自己的就行,其中 Python 上手比較簡單。如果你想找一份工作,建議學習 C++ 或者 C#。C# 雖然比 C++ 簡單一點,但是它只適用于 Windows 平臺;而 C++ 是一種通用語言,它可以應用于 Windows、Linux 以及嵌入式平臺,就業選擇較多。2) 網站開發
網站開發分為前端和后臺,前端就是用戶在瀏覽器中看到的界面,后臺就是放在服務器上的程序。前端開發需要學習 HTML、CSS 和 JavaScript,沒得選,而且必須都學習。后臺發開語言則多如牛毛,有走進墳墓的 ASP、Ruby on Rails,也有常用的 PHP、Java(JSP)、C#(ASP.NET),還有新晉選手 Python、Node.js(JavaScript)、Go 語言。如果你想自己玩玩或者創業,建議選擇 PHP,上手非常簡單。我使用的也是 PHP,因為當時學不會 ASP.NET 和 JSP,所以選擇了簡單的 PHP。如果你想找一份工作,那么已經走近墳墓的 ASP、Ruby on Rails 就不要選了,沒人用了。C# 也不要選了,只適用于 Windows 平臺,而大量的服務器都是 Linux。Python 也不要選,實際應用場景不多。Go 語言主要用作 Web 底層開發,而不是應用層開發。剩下的 PHP、Java、Node.js 你自己看著辦吧,沒法說哪種語言一定有優勢,它們只是適用于不同的場景。值得一提的是,這里我們將 Node.js 和 JavaScript 看做是等價的,如果你選擇了 JavaScript,那么你既能開發網站前端,也能開發網站后臺,就不用學習多種編程語言了。3) APP 開發
這個開發方向比較簡單,Android APP 開發使用 Java 或者 Kotlin,iOS APP 開發使用 Objective-C 或者 Swift。每種操作系統都有兩種編程語言,一種是傳統的,一種是新晉的,選擇好了操作系統,把兩種語言都學了吧。4) 嵌入式開發
一般使用匯編、C語言和 C++,近年來也有開發板支持 JavaScript 和 Python。自己玩的話,可以選擇 Python,上手簡單。想找工作的話,還是走傳統路線吧,把匯編、C語言和 C++ 都學了吧。只有那些有 Web 開發基礎的程序員才會選擇 JavaScript。5) 機器學習
這是一個比較綜合的開發方向,初學者一般從 Python、MATLAB 開始搭建模型,實際工程應用中可能需要使用 C++、Java 等其它語言去實現。Python 是必學的,MATLAB 最好也要掌握,C++ 和 Java 視情況而定。6) 大數據
這也是一個比較綜合的開發方向,相關語言有 Python、R語言、Java、Scala。把 Python 和R語言學習一下,剩下的看情況吧。由于我的能力所限,我無法對所有開發方向做深入的分析,有說的不到位的地方,請大家留言,或者在公眾號聊天框中反饋給我。以上說的僅僅是編程語言,除了編程語言,大家還需要學習某些框架或者庫,比如:Java 網站開發需要掌握 Servlet、JSP 技術,以及 Spring、Spring MVC、Spring Boot、Spring Cloud、Mybatis、Hibernate 框架;Python 機器學習需要掌握 PyTorch、TensorFlow、Caffe 等框架,以及 sklearn、NumPy 等模塊。除了編程語言和框架/庫,你當然還要掌握一兩種數據庫,常用的有 MySQL、Oracle、MongoDB、Redis、Sqlite 等,這里不再展開討論。總結
軟件開發是一個大產業,其中有很多細分方向,每個方向使用的技術棧都不一樣,而且要經過長期學習才能掌握,所以大部分程序員都只擅長某個開發方向,那些多面手,要么是學藝不精,要么是技術大咖。人們之所以迷茫,就是不知道如何選擇,這篇文章雖然不一定能讓你做出最終的決定,但是可以給你一種不同的視角和標準,幫助你打開思路。以上就是關于易語言編程游戲和有哪些適合新手學編程的書推薦的相關問題解答,希望對你有所幫助。