作者peter98 (PyTorch AI套件爛死惹)
看板Soft_Job
標題Re: [請益]沒有任何的程式基礎,如何自學JAVA
時間Sat Oct 22 22:05:21 2022
先說結論: 語言的部分從 C++ / Java / Python三個挑一個都可以
非本科的話我建議是挑Python
其實多年前我只會建議C++或Java 但不得不承認Python真的是後起之秀(尤其是3.0開始)
拿Python來搞CI/CD根本開掛 重點是他好學
壞處是很多底層的東西你可能會不懂 但無所謂 除非你做底層不然這不一定重要
學完其中一個後 再從三個中剩下的兩個再挑一個學學 之後語言部分就是絕對無敵了
另外語言只是個工具 你只要會這三個的其中1個 根本沒人會刁難你不會某種語言
我自己就是C++出身 而且是用最久的一個語言 10年來我面試用C++
不管找的工作內容是要寫C還是Java還是甚麼其他語言 從來沒被面試官刁難過
面試考coding時也都是C++直接上 除了一個Fidelity不知道為啥硬要我寫Javascript除外
真正需要的能力是: 你能不能快速地上手一個語言 然後完成一個專案
我第二份工作寫Java 從此真的點開了技能樹 後來跳槽到現在這一份工作後
除了原本會的C++ Java跟一點Python外 各種Kotlin/Go/Scala/Ruby等都是現學現用
至於要怎麼學Java喔 其實不難阿 把大學課程教的先走過一遍就有 挑一本書
網路資源也是多如牛毛 中英文都有 我是建議英文還行的話看英文
上次我跟北京單位的討論專案 我聽好久才聽懂"棧" 我還以為是甚麼暗度陳倉的梗
記得各種Framework或EE啥小的都先不要管 這些東西對初學者來說只會讓人迷路而已
從plain Java開始看就好
先看Introduction (至少知道Bytecode / JVM / Garbage Collection / Reference就好)
然後就是各種簡單的結構語法: array / list / map 和if-elseif-else / for / while
然後學OO繼承跟多型 基本上到這邊再刷個100-200 LC 你就已經可以是個初階的碼農惹
你只需要半年的時間 真的 沒騙你
之後上班後 就看個人造化
※ 引述《Uzak (常寂光)》之銘言:
: ※ 引述《hym121023 (無)》之銘言:
: : 由於大學唸的科系跟程式完全沾不上邊,所以想請問,如果沒有程式的基礎,想自學JAVA
: : 該怎麼學呢?
: : 希望的學習模式是一個有系統的學習模式,因為沒有程式基礎,只能從最基本的開始學上
: : 去,所以希望各位大大能夠指點一下該如何自學,而希望有系統,是希望可以有一個比較
: : 完整的學習架構,而不是東一塊西一塊的學
: [目標非轉職]
: yt免費教學 -> udemy python基礎課程
: 想玩點web的話接著買udemy django課程和資料庫課程
: 想玩其他比如數據分析就買相對應課程就夠了
: 非轉職不要學java, 即便java也很簡單, 用python效率最高
: python能夠做的事情的廣度也絕對夠你用的了
: [目標是轉職]
: yt免費教學(找一個完整度較高的頻道跟著做一個成品出來)
: 這階段你學不到完整的東西, 只是測試你是不是耐得住coding的枯燥與寂寞
: 接著就三條路:
: 1. 考資工所
: 2. 去補習班(資策會或tibame或相關有就業媒合的)
: 3. 如果有認識業界軟工人,請他們幫你列出該會的東西然後udemy買課
: 上完課做出一個完整的成品然後去面試
: 想要有系統的話去補習班,他們直接把業界要會的東西有系統交給你
: 優點是容易就業,缺點是基本功太差,上班後要花幾年時間一點一點補回基本功
: 不然會淪為以為自己在學寫程式,其實只是在學使用工具
: 資工所容易進高薪公司,底子比較好,人脈也比較多,想要成為真正的大師
: 而不是只為了就業,這條路比較適合
--
→ P*To*ch: 我citations早就破百 就是推薦人找不齊 辦不了08/23 21:57
歷經綠卡洗禮的過來人建議: 社交connection does matter! 共勉之!
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 73.195.162.171 (美國)
※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1666447524.A.4E5.html
※ 編輯: peter98 (73.195.162.171 美國), 10/22/2022 22:14:12
推 stupid0319: Python之外都是 10/22 23:12
→ tsao1211: 非本科學python 工作沒那麼好找 10/22 23:33
推 CoNsTaR: 單論語言本身的話 Java 已經是最好學的語言之一了吧 10/23 00:33
→ CoNsTaR: Python 沒有明確的 type system,不熟悉反而很難用 10/23 00:33
推 Hsins: 速成: 裝好 Intellij 然後讓他糾正你怎麼寫 (? 10/23 00:41
→ kevin10449: c# 不推嗎 10/23 10:38
→ Firstshadow: 我學python現在無業 == 10/23 11:13
推 za755188: Python的問題是面試競爭對手太多 10/23 11:35
推 lovdkkkk: python 不懂底層用一下 pandas 很容易各種爆炸 (抖) 10/23 11:37
推 za755188: 底層不懂的問題是要tune東西的時候可能會卡住 10/23 11:37
→ airtsubasa: 公司禁用任何第三方套件 純內網環境 寫啥好呢 10/23 12:26
→ loadingN: 寫shell scripts 10/23 12:49
推 aidansky0989: 啟蒙玩玩的階段可以學py,挫折感不會太大,想深入 10/23 13:30
→ aidansky0989: 再學java 10/23 13:30
推 SHANGOYANYI: java 現在入門就是綁spring全家桶 但是還在用java的 10/23 13:49
→ SHANGOYANYI: 公司基本上又會是各種魔改變形題 等到上手了又發現 10/23 13:49
→ SHANGOYANYI: 只剩老公司在用… 10/23 13:49
推 yamakazi: 編譯式直譯式語言不太一樣吧 10/23 14:02
推 c80352: 建議先學 PY 純粹是建立程式思維吧 如果急著找工作就不推 10/23 15:29
推 marsonele: 沒基礎學python比較好吧 之後再學java 非本科系自己硬 10/23 16:03
→ marsonele: 幹 陣亡率很高 10/23 16:03
推 marsonele: 學習本來就是從簡單的開始 再慢慢加深難度 才有辦法持 10/23 16:05
→ marsonele: 久 10/23 16:05
推 MyNion: 把我大C#放在哪裡? 10/23 17:24
推 Burwei: 小聲推Go,好學好寫職缺又香 10/23 18:23
推 NerVGear: 其實學C也滿好學的 複雜的部分那也是之後的事 10/23 19:29
推 lasekoutkast: py上手比較容易 10/23 21:37
推 holebro: 如果是工作導向的學習倒是熟框架比熟leetcode還有用吧 10/23 22:09
推 jobintan: 沒基礎的學JS/TS好了,還比較有就業市場。 10/24 11:32
→ jobintan: JS/TS可以玩FP也可以玩OOP。 10/24 11:33
→ testPtt: small basic上手比較容易 10/24 14:19
→ ABuJiuHaoBun: 純python工作門檻很高 學c++才是最紮實的 10/24 18:56
推 pornstar: 我奶奶80歲只唸過小學, 之前花了一下午教她迴圈跟語法, 10/25 02:13
→ pornstar: 現在Leetcode easy她基本上都會, 再練兩個月可能會幫 10/25 02:13
→ pornstar: 她投Google試試~ 10/25 02:13
→ deeeplove: Stack哈哈 10/25 08:10
→ Zepho: 台廠IT不用紮實 js py隨便寫年薪都破百 10/25 11:17
推 jakai: 研究所C++為主,進業界後VB、JAVA、C#都被迫學過一輪 10/25 15:53
推 thbw666: 窩覺得你可以快速上手是因為你起手點cpp壓 10/26 00:09
推 d630200x: 我覺得是你有被C++操過,c/c++打過底之後對程式看法跟其 10/26 01:20
→ d630200x: 他主流語言的看法差滿多的我覺得 10/26 01:20
→ superpandal: @@ XDDD 10/27 19:52
推 s37166117: 推學C# 夠強再往C++學 本科或研究再用Python 10/30 23:15
推 yueayase: 我覺得C#的確是很方便,寫web和視窗,工具箱幫你省很多 10/30 23:31
→ yueayase: 力氣,又跟C++比較接近,如果是我我也是會先學C# 10/30 23:31
推 cathychg: 看用途 工程用C跂 股票算牌 用python 11/02 07:18
→ cathychg: black jack 11/02 07:19
→ cathychg: algorithm 11/02 07:19
推 vuncent: 謝謝前輩分享 11/29 20:45