: : → 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++,所以上課當然是要用全面支援的語言阿
: 如果用javascript打程式競賽會很奇怪嗎?
又是一個問題,javascrpit是什麼?
當你在一直挑語言的時候,你真的知道你在挑什麼嗎?
直接回答你的問題就是,程式競賽執行正確只是基本,拚的是效能與空間的利用
所以在你心目中最有效能以及最好使用空間的語言是javascript嗎?
還是你的目標只是正確的執行而已呢?
: 我看UVA CPE APCS大多都是用C++
: (我學測上來的沒學過程式,和那些APCS上大學的馬上就有程度上的差距QQ)
既然你開頭都表明自己是初學者了,你應該先搞懂你問題中的每一個詞
C++是什麼?網頁又是什麼?答案是C++不是讓你來寫網頁的
你現在這階段只是要你搞懂基礎中的基礎,所以你只要能用程式來達到目的就好
你提到的程式競賽只是考驗參加者將程式語言當作工具使用的熟練度而已
有的人很有天分,有的人沒有天分,但最大的重點還是你是否願意學習
更何況具備這能力充其量只是個programmer而已,進入職場要得是R&D
: 比較常聽到的系統廠會用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,但你寫得出一個作業系統嗎?
也就是別人回答你的,你確定你真的會一門語言了嗎?
有做功課很好,不過目標是寫好程式的話,你需要先了解各個名詞
--