{eval=Array;=+count(Array);}
當(dāng)你想學(xué)一門(mén)技術(shù)的時(shí)候先不要考慮這門(mén)技術(shù)難不難,而是要考慮如何去學(xué)習(xí)它,如何使你學(xué)習(xí)的這門(mén)技術(shù)通俗易懂化。如果你想學(xué)習(xí)Java首先考慮這門(mén)技術(shù)如何如何難,估計(jì)你就會(huì)打退堂鼓。
在所有編程語(yǔ)言中,Java算是最好學(xué)的一個(gè),Java語(yǔ)言本身就很簡(jiǎn)單,很容易學(xué)和使用,使用Java語(yǔ)言可以編寫(xiě)簡(jiǎn)短、精確、清晰的一流的程序。
但是有的朋友卻認(rèn)為學(xué)起來(lái)很難,我不想花那么多的學(xué)費(fèi)去培訓(xùn)機(jī)構(gòu),就想自學(xué),看Java視頻教程也可以學(xué)習(xí),對(duì)于零基礎(chǔ),沒(méi)有一點(diǎn)編程底子的來(lái)說(shuō),自學(xué)真的很難,并且效率不高,沒(méi)有專(zhuān)業(yè)的IT培訓(xùn)機(jī)構(gòu)效率好,掌握的速度快。
興趣是最好的老師,如果你對(duì)編程感興趣的話,那么學(xué)什么東西都會(huì)比較快,也很容易學(xué)會(huì)。
作為一個(gè)自學(xué)一年python的人,給你的意見(jiàn)就是先學(xué)下來(lái)再說(shuō)。我曾經(jīng)也覺(jué)得自己學(xué)不下來(lái)這門(mén)語(yǔ)言,但是目前來(lái)看至少算是入門(mén)了。一件事情難不難,取決于你自己的態(tài)度。當(dāng)然你自己的基礎(chǔ)也很重要,你讓一個(gè)農(nóng)民去學(xué)編程,簡(jiǎn)直就是天方夜譚嘛。正常的大學(xué)甚至是高中水平,我覺(jué)得學(xué)一門(mén)編程語(yǔ)言不算特別難。尤其是理工科的大學(xué)生,基本都有學(xué)過(guò)一門(mén)計(jì)算機(jī)語(yǔ)言,不管怎么樣有一定的鋪墊了,再學(xué)起來(lái)就相對(duì)比較容易,理解起來(lái)也不是那么難。當(dāng)然底層的內(nèi)部結(jié)構(gòu),學(xué)起來(lái)就需要鉆研,然后需要更深入的理解。
簡(jiǎn)單的說(shuō)學(xué)一門(mén)東西都不難,但是把任何一門(mén)東西學(xué)好學(xué)精都不容易
就編程語(yǔ)言來(lái)說(shuō),我認(rèn)為Java還是非常好學(xué)的一種,當(dāng)然,編程語(yǔ)言的學(xué)習(xí)還是需要一定天賦的。我和培訓(xùn)機(jī)構(gòu)有過(guò)一些接觸,和其中的一些學(xué)員也做過(guò)一些交流。幾乎所有的學(xué)員在開(kāi)始的時(shí)候都會(huì)有和題主一樣的疑問(wèn)和擔(dān)憂,在經(jīng)過(guò)一定的考慮后,一些學(xué)員會(huì)選擇學(xué)習(xí)Java,但是在學(xué)習(xí)過(guò)程中,很多學(xué)員并不能夠堅(jiān)持下來(lái),真正堅(jiān)持下來(lái)的,往往就業(yè)還是不錯(cuò)的。
Java學(xué)習(xí)初期貴在堅(jiān)持,學(xué)習(xí)的途徑并不重要(相對(duì)),現(xiàn)在除了線下的培訓(xùn)機(jī)構(gòu),還有線上的各種直播,都是非常好的途徑(雖然自學(xué)也是一種途徑,但是不建議在初期自學(xué))。
說(shuō)實(shí)話,如果沒(méi)有接觸過(guò)電腦,Java并不是特別好學(xué)。因?yàn)樵贘ava學(xué)習(xí)之初就要涉及到非常多的電腦基礎(chǔ)知識(shí)應(yīng)用。比如如何配置環(huán)境變量,以及配置Tomcat服務(wù)器等等,所以如果沒(méi)有接觸過(guò)電腦學(xué)Java是非常吃力的。
配置環(huán)境只是最初的階段,關(guān)鍵是后期還有非常多的編程知識(shí)需要學(xué)習(xí)。這里面也涉及到了非常多的電腦基礎(chǔ)相關(guān)知識(shí)。比如說(shuō)內(nèi)存,二進(jìn)制。這都和電腦基礎(chǔ)密不可分。再往后還有很多的web應(yīng)用需要學(xué)習(xí)。
在這些學(xué)習(xí)過(guò)程里又很多的知識(shí)點(diǎn),對(duì)于沒(méi)有接觸過(guò)電腦的人而言,是很難轉(zhuǎn)過(guò)彎的。如果真的有毅力去學(xué),當(dāng)然沒(méi)有問(wèn)題,但是這要付出比常人多10倍甚至百倍的精力。
如果真的想學(xué)一門(mén)編程語(yǔ)言,建議可以從前端學(xué)起。當(dāng)然前端也不是非常的容易。只是入門(mén)相對(duì)簡(jiǎn)單一點(diǎn)。先獲取一些基本的電腦知識(shí)后,再學(xué)習(xí)后端語(yǔ)言可能效果相對(duì)好一點(diǎn)。對(duì)于后端語(yǔ)言,如果要配置環(huán)境等等,簡(jiǎn)單一點(diǎn)的話,其實(shí)倒是建議學(xué)c#,語(yǔ)法和Java幾乎一樣,但是入門(mén)配置更簡(jiǎn)單。
c#由于是微軟開(kāi)發(fā)的,和windows系統(tǒng)結(jié)合非常的好。免去了很多不必要的配置,上手就能開(kāi)發(fā)。在最新的版本中。也實(shí)現(xiàn)了跨平臺(tái)開(kāi)發(fā),能夠同時(shí)開(kāi)發(fā)桌面應(yīng)用程序、手機(jī)應(yīng)用、網(wǎng)站和各類(lèi)服務(wù)。同時(shí)也是一款全開(kāi)源的編程語(yǔ)言。
如果您在接觸Java之后感覺(jué)入手不是很方便,那可以嘗試嘗試從c#/.net入手。
1. Java難學(xué)嗎?準(zhǔn)確的說(shuō)你能堅(jiān)持嗎?
學(xué)習(xí)Java其實(shí)并不難,我認(rèn)為學(xué)Java比在高中學(xué)物理、化學(xué)簡(jiǎn)單多了,但是由于Java知識(shí)體系龐大,學(xué)習(xí)Java其實(shí)并不是只學(xué)習(xí)Java還要學(xué)習(xí)Java周邊的一整套技術(shù),由于學(xué)的內(nèi)容非常多,所以學(xué)習(xí)Java會(huì)非常耗時(shí),過(guò)程會(huì)拉的很長(zhǎng),如果沒(méi)有足夠的動(dòng)力來(lái)堅(jiān)持是很難走到最后的。
2. 學(xué)習(xí)Java的動(dòng)力
由于學(xué)Java非常耗時(shí),所以你要對(duì)Java有足夠的興趣,或者你有一個(gè)其它原因來(lái)堅(jiān)持學(xué)習(xí),比如我一定要學(xué)會(huì)java,一定通過(guò)Java來(lái)完成人生的逆襲。
很多想學(xué)習(xí)java的同學(xué)說(shuō)進(jìn)入IT行業(yè)是一件非常困難的事情。雖然他們普遍認(rèn)為這個(gè)行業(yè)有很大的發(fā)展前景,但認(rèn)為JAVA這門(mén)語(yǔ)音是非常高深的。因此,他們被嚇住了。還有一些學(xué)生已經(jīng)學(xué)了一段時(shí)間,因?yàn)榉椒ú坏卯?dāng),在學(xué)習(xí)過(guò)程中總覺(jué)得沒(méi)有辦法思考或編寫(xiě)代碼,包括許多計(jì)算機(jī)專(zhuān)業(yè)學(xué)生。也因此將一開(kāi)始的學(xué)習(xí)熱情耗盡,隨之放棄。
3. 那么我們?cè)鯓硬拍軐W(xué)好JAVA?
1.興趣是學(xué)習(xí)最好的老師
事實(shí)上,最大的困難是戰(zhàn)勝自己。只要你有恒心。即使你沒(méi)有基礎(chǔ),沒(méi)有經(jīng)驗(yàn),沒(méi)有概念。興趣是非常重要的,因?yàn)榕d趣是學(xué)習(xí)最好的老師,在學(xué)習(xí)中你就能全身心的投入。學(xué)習(xí)的效率就會(huì)提高。只要你有興趣,你會(huì)發(fā)現(xiàn)學(xué)習(xí)java和打籃球一樣簡(jiǎn)單。
2. 能夠靜下心來(lái)學(xué)習(xí)
由于學(xué)習(xí)Java需要很長(zhǎng)的時(shí)間,學(xué)習(xí)見(jiàn)效慢,需要有足夠的耐心,要能靜下心,不能浮躁,不能學(xué)幾天就學(xué)不下去了就想出去玩。如果沒(méi)有足夠的耐心是檢查不下去的。
3.樹(shù)立學(xué)習(xí)的信心
許多高中學(xué)歷和高中的學(xué)生認(rèn)為他們不能學(xué)習(xí)編程,他們不能學(xué)習(xí)java。事實(shí)上,java學(xué)習(xí)不同于學(xué)習(xí)一般的知識(shí),更注重技能。學(xué)習(xí)IT技術(shù)必須更多實(shí)踐和更多書(shū)面化。畢竟,第一次接觸比計(jì)算機(jī)專(zhuān)業(yè)的要慢,但最好多讀幾遍,多寫(xiě)幾遍。
4.堅(jiān)持到底
java是相對(duì)簡(jiǎn)單的開(kāi)始,每個(gè)人都有學(xué)習(xí)的積極性。后面越來(lái)越難,很多人開(kāi)始退縮,甚至想放棄這個(gè)想法。這是登山一樣的原理。你們都要到山頂了。你肯定不會(huì)放棄,如果你再堅(jiān)持一下,你就會(huì)看到勝利的黎明。
4. 學(xué)習(xí)Java都學(xué)啥
1. 學(xué)習(xí)Java先學(xué)會(huì)一些基礎(chǔ)東西,比如html、javascript、css這些雖然是前端的基礎(chǔ),但作為Java程序員也要會(huì)。
2. Java基礎(chǔ)知識(shí),學(xué)習(xí)Java基礎(chǔ)是走向服務(wù)器開(kāi)發(fā)的最先走的路。
3. 學(xué)習(xí)數(shù)據(jù)庫(kù),如MySQL。
4. 當(dāng)學(xué)會(huì)一定的Java基礎(chǔ)了就可以學(xué)習(xí)一些框架了,如Spring、Spring MVC, SpringBoot、MyBatis。
5. 學(xué)點(diǎn)NoSQL,如Redis學(xué)完這些算是入門(mén)了,達(dá)到初級(jí)程序員了,當(dāng)然每個(gè)知識(shí)點(diǎn)的學(xué)習(xí)都需要很長(zhǎng)時(shí)間。
總之:學(xué)習(xí)Java并不難,難的是要有足夠的興趣,要有足夠的堅(jiān)持,要能靜下心來(lái)學(xué)習(xí)。
Java難學(xué)嗎?其實(shí)這個(gè)問(wèn)題歸根結(jié)底還是在自己身上,你喜歡學(xué)習(xí)嗎?當(dāng)然也取決于你的學(xué)習(xí)方法。
Java工程師這個(gè)職業(yè)發(fā)展非常好,未來(lái)前景也是非常好,掙錢(qián)算不上是IT行業(yè)里最多的,但卻是使用人數(shù)最多的語(yǔ)言。原因是:Java的就業(yè)崗位是很多的。
但是想入行的人都容易忽略了一個(gè)東西,既然是這么好的職業(yè),那么它一定沒(méi)有那么容易讓你勝任這個(gè)工作,我們都知道現(xiàn)在Java工程師的競(jìng)爭(zhēng)很激烈,但是這種競(jìng)爭(zhēng)主要發(fā)生在碼農(nóng)、初級(jí)工程師這個(gè)層次。高級(jí)Java研發(fā)人員的市場(chǎng)一直是不飽和的。
我已經(jīng)入行近5年時(shí)間,這里給想要學(xué)習(xí)Java的同學(xué)幾個(gè)建議:
1、認(rèn)準(zhǔn)了就擼起袖子,加油學(xué)。不要三天打魚(yú),兩天曬網(wǎng)。
2、Java工程師不缺半桶水,缺的就是真正掌握技術(shù)的人才,不要想著培訓(xùn)4個(gè)月,出來(lái)偽造工作經(jīng)歷,就可以月入萬(wàn)元。
3、不要偷懶,前期入門(mén)會(huì)比較枯燥,但是堅(jiān)持半年,你就會(huì)發(fā)現(xiàn)代碼的樂(lè)趣,有句話叫“程序員靠成就感生存”。
4、最好找IT行業(yè)的朋友幫忙制定一個(gè)學(xué)習(xí)計(jì)劃,要有計(jì)劃的學(xué)習(xí)。別上來(lái)就啃最新的技術(shù),別把自己當(dāng)天才,基礎(chǔ)很重要。
所以,Java難學(xué)嗎?你自己經(jīng)歷過(guò)后就知道了。
1、 java語(yǔ)法。通過(guò)任何一本Java入門(mén)書(shū)籍,都可以學(xué)會(huì)Java的基本語(yǔ)法。千萬(wàn)不要認(rèn)為,你把書(shū)上的例子程序都能寫(xiě)出來(lái)就算學(xué)會(huì)了Java語(yǔ)法。要想真正掌握,還需要做大量的測(cè)試題。對(duì)語(yǔ)法不準(zhǔn)確的理解,會(huì)使你寫(xiě)的代碼出現(xiàn)邏輯錯(cuò)誤。而這些錯(cuò)誤會(huì)使你在真正的項(xiàng)目開(kāi)發(fā)中吃盡苦頭:你認(rèn)為正確才會(huì)寫(xiě)上去。而在幾十萬(wàn)行代碼中找出幾行有邏輯錯(cuò)誤的代碼,非常困難。因?yàn)槟銕缀醪粫?huì)懷疑你認(rèn)為正確的代碼存在錯(cuò)誤。2、 常用類(lèi)。永遠(yuǎn)不要寫(xiě)別人已經(jīng)實(shí)現(xiàn)的代碼。有很多功能,用JDK中現(xiàn)有的類(lèi)就可以完成。你需要熟悉JDK.可以通過(guò)研究JDK幫助文檔和JDK源代碼的方式,逐漸了解,你需要的類(lèi)都在什么地方。一方面,要熟悉有哪些可以直接使用的資源,另一方面,學(xué)習(xí)一下,SUN公司的工程師怎樣寫(xiě)代碼。3、 IDE 集成開(kāi)發(fā)環(huán)境?,F(xiàn)在企業(yè)最常用的是IBM公司的eclipse ,類(lèi)似的還有JBuilder 、Idea,NetBeans等等。畢竟,只有5%的頂尖高手在使用簡(jiǎn)單的文本編輯器在寫(xiě)Java代碼。多數(shù)程序員都是在使用這些東西。4、 數(shù)據(jù)庫(kù)。MySql,Oracle,DB2.小項(xiàng)目多數(shù)使用MySql這樣的免費(fèi)數(shù)據(jù)庫(kù)。大一些的項(xiàng)目會(huì)考慮使用Oracle或者DB2. Java項(xiàng)目很少使用SqlServer。因此,你還需要學(xué)習(xí)數(shù)據(jù)庫(kù)方面的一些知識(shí)。可以從SQL語(yǔ)言開(kāi)始。這些數(shù)據(jù)庫(kù)都支持標(biāo)準(zhǔn)SQL.學(xué)會(huì)基本的SQL,參考具體的數(shù)據(jù)庫(kù)手冊(cè),就可以完成一般的項(xiàng)目開(kāi)發(fā)了。當(dāng)然,要想使你的程序運(yùn)行的效率更高,需要更深入的學(xué)習(xí)。大部分的程序優(yōu)化,都是從這部分開(kāi)始的。5、 JDBC Java數(shù)據(jù)庫(kù)連接。使用Java程序操作數(shù)據(jù)庫(kù)。這部分非常重要。幾乎所有的企業(yè)項(xiàng)目都會(huì)用到。6、 HTML CSS Javascript。HTML-- 超文本標(biāo)記語(yǔ)言。CSS --層疊樣式表。JavaScript--是一種由Netscape的LiveScript發(fā)展而來(lái)的腳本語(yǔ)言。準(zhǔn)確的說(shuō),這些東西和Java語(yǔ)言本身關(guān)系不大。但是,現(xiàn)在的企業(yè)項(xiàng)目,以B/S結(jié)構(gòu)的居多。因此,我們的Java程序,會(huì)有大量的機(jī)會(huì)和它們打交道。需要提前準(zhǔn)備一下。7、你需要學(xué)習(xí)如何使用及管理WEB服務(wù)器,例如tomcat,并且知道如何在其基礎(chǔ)上擴(kuò)展和維護(hù)WEB程序,如何使用它的附加服務(wù),如連接池。8、 JSP Servlet。這兩個(gè)是初級(jí)Java程序員必須掌握的基本技能,是所有B/S結(jié)構(gòu)框架的基礎(chǔ)。相應(yīng)的,還需要學(xué)習(xí)EL以及JSTL(StandardTagLibraries)和可以選擇的第三方TagLibraries,以提高表示層的處理能力。9、企業(yè)流行框架 Struts,Spring,Hibernate等。10、Java設(shè)計(jì)模式。有一些特殊的功能,只有按照特定的設(shè)計(jì)模式才能實(shí)現(xiàn)。如果你有了5萬(wàn)行以上的代碼經(jīng)驗(yàn),可以開(kāi)始研究一下設(shè)計(jì)模式。11、你還要跟上技術(shù)發(fā)展的步伐,了解在Java項(xiàng)目中使用的新技術(shù)。如Ajax等。
入門(mén)Java,自然是選擇一本好書(shū),給你推薦一本我出版的新書(shū)《Java無(wú)難事》,本書(shū)的目的是:讓Java的學(xué)習(xí)再無(wú)難事!
詳情可以查看:
java應(yīng)該算編程語(yǔ)言里比較簡(jiǎn)單的一門(mén)了。萬(wàn)事開(kāi)頭難,不管你用什么語(yǔ)言入門(mén)。一般大學(xué)都是用c語(yǔ)言入門(mén)吧,以我自己為例的話,我是用c語(yǔ)言入門(mén)的,剛開(kāi)始會(huì)不知道自己再干嘛,因?yàn)橛幸恍┬碌母拍钚缘臇|西需要理解,不理解你就不知道自己在干嘛~
但是你接觸一門(mén)語(yǔ)言之后,比如c,我們知道它是面向過(guò)程的,你可能會(huì)學(xué)會(huì)在一個(gè)項(xiàng)目下先聲明一個(gè)一個(gè)你想要實(shí)現(xiàn)的功能函數(shù),然后一個(gè)一個(gè)去實(shí)現(xiàn)它,這時(shí)候你會(huì)發(fā)現(xiàn)你可以寫(xiě)一些程序了,一些邏輯清晰,目標(biāo)明確的程序了,語(yǔ)法能有多難?寫(xiě)多了你會(huì)熟的不能再熟,真正難得應(yīng)該是算法,你不知道要怎么實(shí)現(xiàn)你的想法,比如斐波那契,約瑟夫環(huán)等,你寫(xiě)這些的時(shí)候會(huì)考慮到我要去api文檔里去查一個(gè)函數(shù)嗎?
時(shí)代在發(fā)展,有些東西不能很好的解決問(wèn)題,或者說(shuō)有更好的解決方式出現(xiàn)了,面向過(guò)程的語(yǔ)言做大項(xiàng)目開(kāi)發(fā)的時(shí)候就存在很多問(wèn)題,比如代碼難以維護(hù)之類(lèi)的。
面向?qū)ο罂梢愿玫奶幚泶祟?lèi)問(wèn)題,諸如c++,java之類(lèi)的,這些較于c語(yǔ)言有什么區(qū)別呢,我覺(jué)得它們的好處在于把很多常見(jiàn)的數(shù)據(jù)封裝成了類(lèi),說(shuō)白了就是有很多很多別人寫(xiě)好了的函數(shù),你可以直接拿來(lái)用,不用自己寫(xiě)函數(shù)了。當(dāng)然這不是面向?qū)ο蟮乃枷?,我覺(jué)得我只言片語(yǔ)也說(shuō)不清楚。
學(xué)習(xí)java,語(yǔ)法什么的不說(shuō),就是一個(gè)思想很重要,把一種類(lèi)型的數(shù)據(jù)對(duì)象封裝成類(lèi),比如人,人可以吃飯,睡覺(jué)。你寫(xiě)好了人這個(gè)類(lèi),你就可以在你的主程序了導(dǎo)入這個(gè)類(lèi),然后在你的主程序里人做了吃飯,也可以睡覺(jué)的事情。java有豐富的api,也就是別人給你封裝了好多好多類(lèi),你只需要用它就可以了,還免了你寫(xiě)函數(shù),怎么能說(shuō)難呢
寫(xiě)程序就是要實(shí)現(xiàn)某些功能,有時(shí)候這些功能很大,我們不好直接實(shí)現(xiàn)它,所以有了分布式,一點(diǎn)一點(diǎn)的把大問(wèn)題化小一個(gè)一個(gè)的去解決。所以會(huì)有很多小功能,不管怎么說(shuō)都是為了實(shí)現(xiàn)功能是吧。一種方式是寫(xiě),另一種方式當(dāng)然也換湯不換藥。只是形式變了,c到j(luò)ava,函數(shù)變成了類(lèi)的函數(shù),提高了代碼的復(fù)用性對(duì)吧,事物的發(fā)展總是從不好操作到容易一點(diǎn)操作。java是一個(gè)更為簡(jiǎn)便的語(yǔ)言
有人說(shuō)python是最好的一門(mén)語(yǔ)言,為什么,因?yàn)樗?jiǎn)便,相當(dāng)于java更加高級(jí),比如他可以把函數(shù)當(dāng)成參數(shù)來(lái)傳遞,100行的java代碼可能要用1000行c來(lái)表達(dá),而python可能只要用10行就可以像計(jì)算機(jī)傳達(dá)相同的命令。
扯遠(yuǎn)了,總之,不要覺(jué)得哪里難啊,船到橋頭自然直,聽(tīng)別人說(shuō)難,也許你自己嘗試著理解其中
0
回答7
回答10
回答0
回答0
回答0
回答0
回答0
回答2
回答10
回答