Re: [請益] 轉職仔的語言選擇

軟工

標籤:轉職
23181

: ※ 引述 《makeupmakeup (elena)》 之銘言:
: : → DrTech: 另外機會大不大,薪水多不多,跟你學什麼程式語言無關。 05/24 22:53
: : → DrTech: 會用程式語言來限制自己的產業發展與職業角色,也顛倒了吧 05/24 22:54
: : → DrTech: 。應該是先選理想的產業,公司,思考一下自己要扮演的職業 05/24 22:55
: : → DrTech: 角色,職缺類型。再來談論學什麼程式語言。你怎麼相反了。 05/24 22:55
: : → DrTech: 選程式語言的推薦,根本無法給你任何實質幫助。 05/24 22:56
: 一個很菜的初學者想來發問一下
: 目前還是學生
: 很常看到有人說:語言不是重點

語言不是重點,要看接在什麼主題後面
學寫程式,語言不是重點(O)
轉職,語言不是重點(O)
領更高的薪水,語言不是重點(O)

但,目的是了解程式,語言就是重點了
每一個不同的領域都有各自的目的,這時候語言的特性就會非常重要
不過因為你本身是入門中的入門,會完全沒辦法理解是很正常的

: 很好奇這句話到底代表什麼意思?
: 依我自己觀察來看
: 網路上大多的轉職、轉軟體工程師的幾乎沒有從C/C++來學的
: 比較合適的,例如從python開始學起
: 可能走網頁或app那就學那一塊的
: 可能再加個資料庫這樣就夠了

如果你只希望寫出一個能動的程式,能拿來demo用的,那隨便選都可以
但你要知道,目的很重要
你只是要呈現一個東西
所以會不會寫程式這件事情,就完全不重要
也就是說程式語言的特性在你設定的條件下就是完全不需要被考慮到的事情
甚至可以直接說你最出發點就是,程式語言不是重點,你只是想要有東西而已
這樣的事情基本上就是個maker,或者說創客

: 這樣很多指標都不知道也活得好好的
: 我是想說,那大學一年級為何不直接從python教起
: python也可以寫資料結構 演算法也是

你有想過為什麼要資料結構與演算法嗎?
資料結構是為了有效的儲存與運用在記憶體內的資料
演算法是為了讓運算邏輯可以收斂,容易被理解
每個人都會對資料結構、演算法有不同的理解
但你需要自行理解而不是看書或別人的理解,要不然拿出來討論你也得不到什麼收穫

回到問題,為什麼不用python教學資料結構與演算法?
因為這兩者牽涉到的東西是怎麼使用資料的本體
也就是記憶體內的數值
恰好python不是一個讓你直接碰觸記憶體內的資料的語言
這邊有個很好的問題,你知道什麼是call by value, call by address, call by reference嗎?
然後你就會發現完全支援這三者的語言基本上就是C/C++,所以上課當然是要用全面支援的語言阿

: 我唯一只知道打競賽都會用C++
: 如果用javascript打程式競賽會很奇怪嗎?

又是一個問題,javascrpit是什麼?
當你在一直挑語言的時候,你真的知道你在挑什麼嗎?
直接回答你的問題就是,程式競賽執行正確只是基本,拚的是效能與空間的利用
所以在你心目中最有效能以及最好使用空間的語言是javascript嗎?
還是你的目標只是正確的執行而已呢?

: 用C++寫網頁會有問題嗎?
: 我看UVA CPE APCS大多都是用C++
: (我學測上來的沒學過程式,和那些APCS上大學的馬上就有程度上的差距QQ)

既然你開頭都表明自己是初學者了,你應該先搞懂你問題中的每一個詞
C++是什麼?網頁又是什麼?答案是C++不是讓你來寫網頁的
你現在這階段只是要你搞懂基礎中的基礎,所以你只要能用程式來達到目的就好
你提到的程式競賽只是考驗參加者將程式語言當作工具使用的熟練度而已
有的人很有天分,有的人沒有天分,但最大的重點還是你是否願意學習
更何況具備這能力充其量只是個programmer而已,進入職場要得是R&D

: 看了很多工作用不到C 但又一直聽到這是基礎
: 比較常聽到的系統廠會用C,或是寫作業系統(?)
: 一次問了這麼多,因為真的完全不了解XD
: 目前跟著學校進度只有學過C++ 覺得很痛苦
: (但又不能跟人說:我只會寫C++
: 之前有人這樣問,得到的答案都是:你要確定你真的會誒?)
: --

身為一個學店CS學士畢業,寫程式七年的過來人
我大學用過C/C++、C#、JAVA、javascript、html、php、mysql...各式各樣的東西
但出社會先靠的是資料結構跟計算機概論跟一點點作業系統的知識起步
第一份工作用C#寫windows上的有UI的程式
第二份工作用C寫BIOS,但基本上只是看BIOS,寫根本輪不到你
第三份工作用python寫資料分析,用python寫後端,用C寫嵌入式裝置,用vuejs寫前端
第四份工作用C++寫SDK,這時候才真正開始接觸到C/C++的根本,才知道自己的粗淺

這麼多年的經驗用過幾種不同的語言,做各種不同的事情
經歷了這些我認為各樣語言我只懂得只有一點點,但這一點點就足夠我做出成品出來
不過完全稱不上真的會一門語言,學得越多不懂的就越多
以一個學生來說,程式語言是其次的,重要的是:
計算機組織與結構、作業系統、資料結構、演算法、離散數學、線性代數

語言不重要,講的就是當你懂得越多,就會知道各種不同實作的方法
語言的重要,在你需要深入的開發會直接的體現出來

最簡單的例子就是你學一個學期就可以說自己會C,但你寫得出一個作業系統嗎?
也就是別人回答你的,你確定你真的會一門語言了嗎?
有做功課很好,不過目標是寫好程式的話,你需要先了解各個名詞

--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.128.240.146 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1653886960.A.3FB.html
ko27tye1樓不要再call by address了 c++只有call by value和call 05/30 14:18
ko27tye2樓by reference 05/30 14:18
Dracarys3樓C/C++ 05/30 14:27
royyy4樓C++支援call by reference, 但原本的call by address 還是 05/30 15:47
royyy5樓有啊 05/30 15:47
holebro6樓c就是call by value jserv在教都沒在聽 05/30 16:02
感謝各位先進提點,不過這邊也是個很好的例子,我在程式語言的基礎上出現了理解錯誤 但如果使用時並沒有用到那一部分,也就不影響實作的狀況 只是在這種情況下,並不能說我真的選擇了這門語言,只是這門語言剛好能讓我達到目的而已
royyy7樓C要用call by address 解釋才能理解傳址的抽象觀念,你跟 05/30 21:25
royyy8樓初學者說其實address 也是傳值就是在搞人家 05/30 21:25
aidansky09899樓轉職語言是重點沒錯,每種語言都有適合做的事 05/30 22:07
在轉職上,通常會限定語言都是為了符合團隊,不過廣泛地來看,假設以後端來看 JAVA、C#、PYTHON、乃至於GO都有很多職缺,所以進特定公司的特定部門,語言是 重點。但如果只是進特定職缺類別,語言的重要度就下降不少了
ifor10樓好心人把重點寫出來了,推! 05/30 22:32
kkttyy11樓推好心人 05/30 22:35
ttss409212樓笑死,能達到目的...所以語言還是一樣不是問題啊 05/31 08:15
入門到專精,路途非常的遙遠,選擇特定的語言就是要達到後面卓越的效果,或是特定的成果 我想表達的就是,選擇語言不重要是要看命題的
hegemon13樓如果單純只是想要把東西做出來交差,語言不是問題. 但是 05/31 08:31
hegemon14樓如果考慮可維護性,日後人才尋找,生態系,及資源利用效 05/31 08:31
hegemon15樓率的話,語言就是問題 05/31 08:31
很多的時候是古早開發的歷史共業,前人就這樣搞了,也只能找這方面的人來續命了 要成為一個專案開創的主導者,需要不少的資歷,甚至是一些機運,對一般人來說不容易遇到阿
ttss409216樓認同 hegemon,重點還能選擇技術的知識 05/31 08:39
testPtt17樓我一開始學覺得那些call by xxx有點天馬行空 05/31 09:41
testPtt18樓後來想想所有的目的都是要get value只是要求的來源不同 05/31 09:43
testPtt19樓學程式只要懂碰到什麼指令符號做相對應的動作不用想太多 05/31 09:48
hegemon20樓看很多小朋友新創整天說語言不重要,隨著創始成員個人喜 05/31 10:15
hegemon21樓好來選擇語言,結果之後要補人找不到人,團隊變大以後發 05/31 10:15
hegemon22樓現需要結構化,需求變多發現生態系不完整,用戶變多發現 05/31 10:15
hegemon23樓資源效率不彰就覺得好笑 05/31 10:15
ttss409224樓其實沒什麼,活下去以及變大才是最重要的,有錢找高手處 05/31 10:20
ttss409225樓理就好 05/31 10:20
hegemon26樓很多人都這樣想,結果後來發現沒有資源去處理,不處理又 05/31 10:32
hegemon27樓阻礙公司發展,超慘 05/31 10:32
hegemon28樓第一天就做正確的決定比後來找高手省太多了 05/31 10:32
keyofdejavu29樓但一開始就這樣搞可能直接就倒了 05/31 11:34
hegemon30樓如果一開始就走正確的道路會倒的話,這種團隊還不快逃? 05/31 12:10
延伸閱讀
Re: [請益] 轉職仔的人生規劃
[請益] 年近30非本科轉職(台中)
[請益] 轉職仔的語言選擇
Re: [請益] 轉職仔的人生規劃
Re: [請益] 轉職仔的人生規劃
[請益] 轉職仔的人生規劃
[請益] 金融業轉職(中信)
[心得] 非本科自學轉職分享