自學C 資料結構與演算法 DirectX 9 0,快畢業了卻很迷茫,是不是不適合做程式設計師?

時間 2021-06-03 03:52:07

1樓:洪濤

@伍一峰 伍老師給的答案很明確,題主我幾個月前就如同你,很迷茫,今年畢業,你的學習經歷跟我很類似,但是現在我隱約找到學習路線,就是伍老師說的,先了解引擎,做點東西,有兩個好處如果覺得自己沒有精力繼續深入底層,那麼也可以就引擎繼續學習下做客戶端,如果對底層有興趣研究,那麼可以自己深入學習,去研究如何開發引擎。如果可以最好去了解幾個C++的框架,當然要看你個人的選擇了。具體多的細節我無法為你提供,本人自己也在尋路中,很多東西需要去不斷的嘗試、實踐。

另外補充一點常識:遊戲開發分客戶端和服務端,這點需要明確,我也是因為這個不清楚導致走了幾年彎路,祝題主好運,上班了~

2樓:

嗯,不要臉的自己蹭過來回答了。題主的話題讓我有點感慨,先大概說一下自己的情況吧。

大學專業是鋼鐵冶煉,現在在一家手遊公司做程式,中間經歷了什麼就不說了,總之現在想起來覺得自己的堅持是對的。

選擇這條路是因為對冶煉沒什麼興趣,喜歡玩遊戲,大學的時候自學程式,然後就自然而然想去遊戲公司做程式了,後來就進了這個門,先是端遊,後來是手遊。這樣。

對題主要說的是。

遊戲程式並不是全都是211,985畢業的,甚至於連計算機專業也不一定,我的同事(僅說程式)裡有學中醫的,以前做自由職業的,有以前當兵的,反而計算機專業佔很小的比例。

對自己要有信心,這個是最重要的。

不要想著自己學到什麼程度再去找工作,應該是在工作中學習,因為你現在沒有進入這個行業,你對遊戲開發的很多核心的環節處於猜想的狀態,很可能你學的東西在真正開發的時候用不到,而找工作的時候面試官不認可你的這些努力。

也許找工作的時候很辛苦,但你一定要記住,只要你爭取,就一定會有機會,我的理解是,你想不想去做這件事,關鍵在於你自己覺得是不是不做就會後悔一輩子,繼而你的人生是否會因此變得毫無意義,也就是說,做遊戲,對於你來說是不是必須要去完成的一步,這個你要想清楚,想清楚你就不會覺得虛了。

遊戲公司真的是那種你行你就上的地方,所以,別為學歷的事情自卑或者自責。

因個人經歷所給出的建議,不喜勿噴,

題主加油。

3樓:伍一峰

說上面的話我是想表達,計算機,至少遊戲,是乙個很field specific的行業。開發者不需要有相關的文憑來加入這個行業,只要你足夠出色。

關於題主的疑惑,我認為是方法不合適導致的——題主從c++、資料結構、DirectX開始學習遊戲程式設計,這是一條艱苦的由下至上的學習路線。然而在軟體開發裡,比較好的學習路線應該是由上到下的。

首先是因為軟體裡的下層大都是對上層抽象的,也就是說你不需要完全了解下層的細節來使用上層。舉乙個例子,Unity遊戲引擎在渲染的底層用了DirectX [2],但Unity的使用者在開發過程中根本不用接觸到DirectX,就能完成開發任務。

其次,上層往往比下層更容易理解,更容易掌握,也更有效率。因為上層就是因為下層難用、不方便而開發出來的。乙個極端的例子是,計算機最底層的邏輯是焊接在cpu上的電子元件,但我們開發軟體(本質是教計算機怎麼計算)時,我們不會直接去焊,而是選擇用c++這些高階語言來寫邏輯。

[4]再次,遊戲行業從來都是以解決問題為目的的 [3]。既然題主發現DirectX並不能有效地讓你開發出乙個遊戲,那麼就應該用其他技術。如果說目的是學習,那麼請參看上一段——既然DirectX現在不能make sense,那可以從上層開始學起。

最後總結一下,題主需要的是一條更加有趣更有效率的學習路線,而由上而下會是乙個很好的方法。具體做法是,從一款遊戲引擎開始學起,做一些小demo小遊戲,了解遊戲開發的大致過程後,再選擇自己感興趣的領域探索。

Reference

[1] Ludum Dare Survey 2014: Survey 2014 | Ludum Dare

[2] 準確地說,graphic library不同平台不同。

[3] 其實每乙個行業都一樣。

[4] 了解底層的確對上層開發有好處,但如果底層包裝得好,資訊足夠的話,那並不是必需。

《資料結構與演算法分析C語言描述》真的適合初學者嗎

看前言 本書適合作為高階資料結構 CS7 課程或是研究生第一年演算法分析課程的教材。學生應該具有中等程度的程式設計知識,包括像指標和遞迴這樣一些內容,還要具有離散數學的某些知識。 法布 初學者看這個會覺得很吃力,注意看一下這本書前言中的介紹 本書適合作為高階資料結構 CS7 課程或者研究生第一年演算...

資料結構和演算法先以C語言開始學習好還是按照自己學的語言開始

龍馬精神 看現在招聘,公司的要求。大致感覺是c python。學了c以後,很多底層的東西可以理解了,我覺得這樣對培養乙個計算機程式設計從業者的意識很重要。也許以後你用到高度封裝的產品,不需要你了解到底層。但我覺得,有了c的基礎,再去理解一些其他的語法現象會比較容易,畢竟c生萬物,很多東西說到底就是c...

求教C語言資料結構題

0x76 比如int removeDuplicates int array int array size else current array i return array size 函式返回新的陣列長度,可見複雜度並不是 如果陣列元素資料範圍較小,可以使用計數陣列。比如,假設 0 array i ...