-
1 # LeoTian
-
2 # 井151276607
別說你年齡也是與高中生相仿。自學,做程式設計師,10年前還算一條生路。如果不愁生計,僅僅滿足興趣,也要把路走的有趣些。先找個工作機會,然後在開始學習吧!
-
3 # 人生路誰主沉浮
高中可以嘗試去學習JAVA,但首先要做到如下幾點:(前方高能)
第一:態度認真,包括工作態度,學習態度,請教別人問題的態度。在自己努力學習,努力工作的過程中,會遇到很多人,這些人可能有些技術不怎樣但不要排斥他們,因為他們熟悉的領域可能你不懂,有些呢技術特牛,但很重視別人的尊重,很重視別人的態度,而好的態度則可能換來他的幫助,有些也是翫忽職守,工作敷衍的人,千萬遠離這部分人,保持距離。
第二:思維嚴謹,程式語言重在邏輯思維,保持邏輯思維的清晰嚴謹性,有利於自己接觸很多的知識和技能,這是精通JAVA的前提條件,很多報了培訓機構的人都是斷在缺乏嚴謹的思維能力迫使自己無法在這個行業生存下去。
第三:自我認知,認識自己的不足和短板,發揮自己的優勢,這是每個職業人的必修課,但在程式語言這門學科上剛開始不是這樣,剛開始你需要懂JAVA基礎,你需要懂資料庫,你需要知道如何運用一些主流框架完成開發,你需要學習各種中介軟體來加以應用!但是,最終也必然是這樣,當你的技術面達到一定程度,必然要選擇一個自己感興趣的方向或者自己的強項去摸索去探究!
以上三點是作為優秀程式設計師的必修課,是接下來學習工作過程中要把持的習慣,堅持自己的目標,把握自己的心態,控制自己慾望!
緊接著你需要一個能夠接納你的培訓機構為你指點迷津,充實自己的JAVA技術棧,學習如何面向企業完成開發任務!培訓學習是一個比較痛苦的過程,你會接觸到自己內心不曾預見的另外一個世界!剛開始對這個世界迷迷糊糊甚至培訓過後也是迷迷糊糊,這時候你需要不斷地喚醒自己,不要迷失自我,沉下心來學習,理解,記憶,實操!
作為初學者,學習,理解,記憶,實操,這四項是王牌,是自己知識結構體系擴充的王牌!邊學習,邊理解,邊記憶,邊實操!實際上,學歷代表的就是這樣四種學習能力,高中學歷的你如果擁有這樣的學習能力,JAVA自然也不在話下,但是隻會HelloWorld是不行的,這連JAVA基礎都算不上,這只是作為JAVA程式語言的展示!真正入行,得從計算機體系,計算機作業系統來了解,和學習,瞭解到什麼層次?即CPU,儲存(檔案系統)和資訊傳輸,任何語言,都是基於CPU,儲存,資訊傳輸的,瞭解這些再去理解程式語言就會事半功倍!
JAVA語言的學習過程大多是從瞭解Linux作業系統的檔案系統基本命令開始的,這與JAVA多執行在Linux系統上分不開的,其次是面向物件程式設計的特點和JAVA的發展史,這裡要重視的是面相物件程式設計,即OOP思想。然後是JAVA基礎,比如一些關鍵字,八大基本型別,變數的宣告,類,方法,邏輯語句,邏輯運算子等等,這是寫JAVA程式的基礎,然後就是一些JAVA常用的API了, 例如集合元素(資料儲存元素)Collection,List,Set,Map等等,又如檔案IO操作的API,一般被分為位元組流和字元流,大多數培訓機構這樣劃分,實際上底層實現是分為Input/ Output, Writer/ Reader兩種型別的介面,後者是對前者的包裝(不懂的就用IED點進去看),最後就是一些規範或者框架了,比如JDBC建立資料庫連結(這個階段一般會要求學習資料庫),主流企業級開發框架Spring,主流的ORM框架Hibernate和Mybatis等等!如上是大多數培訓都會有的課程!如果想要追隨主流,這些是遠遠不夠的!
進階學習則為多執行緒,高併發!首先是對多執行緒的理解,從最基本的執行緒狀態,synchronize關鍵字開始理解執行緒這個概念,從CPU多核心層次來深化執行緒概念!其次是熟悉瞭解對多執行緒常用的控制類,ReentrantLock,ReentrantReadWriteLock,LockSupport,Condition等獲取鎖和釋放鎖以及面試經常被提及的AQS-Abstract QueuedSynchronizer框架,然後是對常用的原子類操作如AtomicInteger,LongAdder等,重要是要了解到自旋和CAS的實質以及容易出現的問題,最後是經常用的高併發API,如可以控制併發的CountDownLatch,Semphore等,高併發可控佇列ArrayBlockingQueue,LinkedBlockngQueue等等還有高併發快取ConcurrentHashMap,CopyOnWriteArrayList等等。
近些年,隨著分散式,微服務的受熱程度不斷提高,不斷出現了諸如Spring Cloud,Dubbo,包括阿里最近開源整個前兩者生態的Nacos微服務框架!在分散式和微服務扮演者更多角色的中介軟體火熱起來!例如分散式協調者Zookeeper,Chubby,Eureka等,訊息中介軟體KAFKA,ActiveMQ,Rabbit MQ等,資料庫中介軟體Mycat,Sharding-Sphare等,都是基於分散式業務系統誕生的中介軟體,還有一些非關係型資料庫,Redis,MongoDB,Memchche等等。JAVA技術棧異常的龐大,可能程式設計師一直處在學習和應用過程中!
還不能少了一些承載應用的容器,比如Tomcat,Jetty,Undertown等等這些WEB容器都基於HTTP協議,因此你必須要了解HTTP協議,才能去最佳化容器!另外,還要了解到這類容器對應的高可用方案!Nginx既用作WEB容器又具有負載均衡的作用,透過對Nginx的負載均衡又可實現Nginx的高可用!負載均衡在高併發,分散式當中扮演者相當重要的角色,需要了解到四層負載與七層負載的區別!
當然了,開發怎麼少的了運維操作。Doker,k8s等
-
4 # 大學生程式設計指南
作為一個寫了十幾年程式碼的程式設計師,程式設計是一個需要投入大量精力的工作,奉勸即將學習程式設計的小夥伴,編碼的工作大部分時間就要靠熬和堅持,哪有這麼多所謂的興趣愛好,當然也不排除有個別對於程式設計真的十分熱愛,在國內程式設計工作大部分還是加班加點趕專案或者做產品,在整天加班的日子裡即使有點興趣也會被折騰光了,剩下就是為了生活為孩子掙奶粉錢。
程式設計入門的學習其實對於學歷沒有太嚴格的要求,只要肯付出這些都可以通過後天的努力給彌補上,但有些對於數學演算法要求很高的崗位學歷的要求還是必須的,讓對於線性代數或者離散數學一竅不通的人去研究高深的演算法也不是很現實,學歷對於程式設計師的限制主要表現在兩個方面:
1.演算法,複雜高深的演算法沒有數學底子做鋪墊基本上寸步難行,國內現在演算法工程師的待遇比普通的工程師待遇基本上高一倍了。物以稀為貴,這個主要考察的數學基礎以及毅力,演算法需要耐得住寂寞,程式設計師工作不是每個細節點都會涉及到演算法所以很多人覺得不懂演算法也能把程式做好的現象是存在的,程式設計師關心主要重點在程式效能是不是最優的,是不是很消耗記憶體。
2.英語,並不是直接看程式語言的關鍵字不認識,主要是要閱讀原汁原味的英文文件,如果英文基礎不過關很難,看起來文件如同看天書,將會非常痛苦,這個時候會想到學歷對於程式設計影響就出來了,原則上高中以上的水平就能做程式設計了,專業的術語可以現學現賣。
對於高中以上的學java,和上大學的學習java的方法是一樣的,與其在研究如何學習程式設計的方法,倒不如踏踏實實的學習每個語法細節,然後在電腦上實踐操作。現在根據多年的開發經驗給初學者一些經驗:
1.不要多種程式語言一起學習,弄得各種程式語言都懂點但又都不熟練,這種狀態是無法找到合適工作的,在企業中只會用你最擅長的程式設計技能,開始學的時候選擇一種程式語言死磕到底,一直堅持到自己開竅。
2.學習過程中不要意味著學習理論,要懂得實踐,在網路上會有各種程式語言的測試題目,都可以拿過來好好學習,很多學習java看影片看的如痴如醉離開了影片什麼也寫不出來,這就是理論到位了但實踐太少,程式設計的學習就是知識體系建立的過程一旦有一天體系建立了,那就是傳說中開竅了,後面開始程式設計的學習就快了許多。
3.Java的學習基本功需要紮實,網路程式設計,發射機制,設計模式,多線城機制等等都要掌握,熟悉一種框架,並且加以實踐使用。
程式設計的學習是一個長期的過程不要指望一勞永逸,而且在學習過程中會有很多坑,要做的事情就是保持平常心,堅持到底,好的結果自然會來到。
-
5 # 程式設計字典
很多單位都卡學歷,不知道會不會都找工作有影響。根據自身的情況,你可以自學.codingdict.com/article/2331,也可以看影片http://www.codingdict.com/video/2。
多讀書,多做專案。
-
6 # 玩著學程式設計
選定一個方向,如果現在在學習Java的話,就繼續學習Java,深入學習,學習程式設計,切忌“三心二意”,今天想學習這個,明天想學習那個語言,是很難把程式設計學好的。先深入一門語言,學精,後期如果想轉到其他的語言相對來說也是比較容易的。
學到最後更考驗程式設計的思想,而不是僅僅限於語言的語法。
以前學習Java的學習路線,可以作為學習的參考。1、Java基礎入門
2、Java高階技術
3、web前端
4、Java web程式設計(核心)
5、框架
6、綜合專案
7、企業專題
具體的可以到“如鵬網”上去看下,有網路的地方就可以學習。根據自己時間安排學習進度,每個章節的後面都有相應的練習題和麵試題,需要通過錄音的方式進行提交,夯實基礎,為面試做準備,有新的課程更新了,也是可以繼續來學習的。
-
7 # 匿名使用者623
沒有大學文憑,基本是找不到這樣的工作的
因為現在人太太太太太多了,別說你高中畢業我,稍微差一點兒的本科都過不了初篩
不要說你技術很強什麼的,沒用
所以建議樓主把程式設計當個興趣愛好還行,當飯碗就算了吧
有部分基礎,會用好幾門語言寫hello world,現在在擼JAVA,後續該怎麼學習?想要學習能跟上網際網路開發潮流的內容。
回覆列表
建議找一個培訓班先去試聽兩節課,這個主要的目的是看你能不能聽懂,完全聽不懂的話就不建議入行了。
如果感覺還行的話,可以選擇培訓班,這樣快一點。不過缺點就是基礎比較差,需要付出比別人更多的努力來填補基礎知識。
另外,建議讀一個成人學歷,選擇計算機專業的,他們會講一些理論知識和軟體工程的基本理論。
希望回答可以幫到你。