新手學java,應該用IDE仍是記事本?

我在剛開始學習java那會,會糾結這樣的一個問題,我該用什麼來寫java程序呢?那時候看的視頻教程和書籍,剛開始都是用記事原本演示如下這個經典的程序代碼:java

  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
  • ounter(line
public class HelloWorld {複製代碼 public static void main(String[] args) {複製代碼 System.out.println("Hello World!"); 複製代碼 }複製代碼}複製代碼

那時候我就在想,難道之後寫java就用記事本了,這顯然不太科學啊,而後看看後面的視頻教程或者書籍,都提到了一個叫作eclipse的集成開發工具。web

我想這纔是開發java程序的正規軍吧,而後本身百度搜了一下eclipse,由於本身當時對集成開發環境真的沒有什麼概念,不知道究竟是個啥,總以爲它功能很強大,我當時從百度得知,它是個這:編程

說實話,當初的我看了這些依然以爲懵,感受對它仍是有點模糊,可能如今不少人說到集成開發環境都知道是個啥,可是對於當時的我來講,由於自己接觸到的編程知識就比較少,因此對於一些專業名詞,確實有點模糊。eclipse

什麼是集成開發環境(IDE)

那麼,這個集成開發環境究竟是個啥呢?下面我就通俗的給你們說一下集成開發環境究竟是個啥?ide

咱們日常其實不多說***集成開發環境***,咱們通常會說IDE。工具

完了,IDE是個啥,在這裏我要說下,在編程開發中的不少概念名詞其實都是來源於它的英文首字母縮寫,舉幾個簡單的例子:學習

JDK:是Java Development Kit 首字母簡稱。開發工具

JRE:是Java Runtime Environment首字母簡稱。flex

關於JDK和JRE咱們在上一篇文章中就詳細的介紹過了。你看,這些都是英文單詞的首字母的縮寫,也就是一個簡稱,因此IDE也是如此,集成開發環境的英文全稱是:Integrated Development Environment。idea

注意啦,首字母縮寫就是IDE,因此說IDE其實就是集成開發環境。

ps:如今公認的開發java的主流IDE是IDEA,有些人會被這個弄迷糊,IDE和IDEA只差一個字母啊,IDEA其實全稱是IntelliJ IDEA,它是一款商業化(就是須要付費才能使用完整的功能版本)的java集成開發環境,你們日常不多說全名,直接就叫IDEA了。

那麼集成開發環境有啥用呢?說簡單點,集成開發工具就是個軟件,是用來幫助你開發程序的,使用它你能夠更快的開發程序,由於它提供了不少的功能,好比若是咱們不使用IDE,而是使用記事本本身寫一個java源代碼,那麼咱們須要手動輸入如下指令來編譯運行它:

javac HelloWorld.java

java HelloWorld

要知道,若是咱們使用IDE的話,咱們只須要點擊一個按鈕,這個IDE就會自動幫咱們完成這些指令。

固然,除此以外,IDE提供的功能還有不少,會讓你的開發效率大大提高,總的來講,編程開發,最終必定是要使用IDE的。

那麼,爲啥我剛開始看的那麼多的視頻教程和書籍,剛開始的代碼演示都是使用記事本而不是使用IDE呢?

我當初這麼疑惑,想必也有其餘夥伴有這樣的疑惑,既然IDE那麼強大,爲啥不直接使用IDE呢?還要使用記事本。

其實,這就牽涉出了一個問題,一直存在爭論的問題:

新手編程,是該用IDE仍是記事本呢?

對於這個問題,早在咱們以前,就有不少人在爭論了,有人支持使用IDE,有人支持使用記事本編程,對了,這裏是有個前提的,在剛開始學習編程的時候,而不是過了入門階段了,若是過了入門階段,好比要作一些完整的項目之類的,那是必須上手IDE的。

那麼,是該用IDE還記事本呢?

《瘋狂java講義》一書中對這個問題,有這樣的描述:

對於java語言的初學者而言,這裏給出一個忠告:不要使用任何IDE工具來學習java編程,在Windows平臺上能夠選擇「記事本」程序。

做者的意思很明確,對於java初學者而言,不建議使用IDE,使用自帶的記事本便可,做者還舉了這樣一個例子:

曾經看到一個在某培訓機構已經學習了2個月的學生,連extends這個關鍵字都拼不出來,不由使人啞然,這就是依賴IDE工具的後果。

因此做者建議java初學者,千萬不要對IDE工具產生依賴,不然就會出現上述的狀況。

可能有些小白不知道咋回事,爲啥會這樣呢?使用IDE怎麼會形成這樣的狀況呢?我這裏簡單給小白解釋一下。

對於IDE來講,它有個重要的功能就是代碼提示和補全,說的直白點就是你寫代碼的時候,好比你想輸入extends,可是你只要輸入ext就能夠給出提示,就像這樣:

你看,你並不須要完整的輸入extends就能夠獲取這個關鍵字,那麼對java初學者而言,由於自己對java的一些關鍵字就不熟悉,再加上若是你對英語單詞不敏感的話,脫離了IDE的自動提示,讓你去手寫,頗有可能寫錯或者寫不出來。

那麼若是是使用記事本呢?由於記事本的功能很單一,沒有什麼自動提示,都須要你一個字母一個字母的寫,因此若是你寫錯了,那麼程序編譯是會出錯的,這樣你就知道你對哪一個單詞不熟悉,你就會格外注意它,從而加深對它的印象,再加上常常完整的去寫它,那麼一回生二回熟,你也就不會忘記了。

因此這就成了那些不支持初學的時候使用IDE的一個緣由之一,那麼除此以外,不支持初學就使用IDE的一個緣由就是IDE因爲功能強大,封裝了不少功能,所以讓初學者看不到一些執行細節,就好比以前舉的那個例子。

若是不使用IDE,那麼你就要手動輸入javac和java指令來編譯執行java程序,那麼使用IDE的話,一個按鈕就搞定了,這樣帶來的一個問題就是,初學者根本不知道點擊了按鈕以後幹了什麼,而使用記事本的話,起碼初學者知道java程序的執行是由於輸入了javac和java指令形成的。

因此,使用IDE會讓初學者對一些底層執行感到疑惑,不利於他們的學習。

那麼,那些支持使用IDE的就說了,使用記事本編程並不能幫助你理解編譯原理和操做系統原理,看上去只能是讓你對一些經常使用單詞寫法記得更加牢固,由於你須要本身完完整整的把單詞都寫一遍,可是這些相比較你失去的時間和效率根本不值一提,所以這種作法是不值得的。

更狠的則發問:「既然有了記事本,爲啥還要發明IDE呢?

爲何會有不一樣意見

那麼,究竟是用記事本仍是IDE呢?可能你立刻也要糾結了,接下來我簡單說下個人見解:

首先,那些不支持初學者使用IDE的大體由於以下緣由:

一、IDE會隱藏一些實現細節,對新手不友好

二、形成新手對IDE的依賴,致使基礎不紮實,可能最簡單的一些關鍵字都寫不出來

三、反正就是不利於新手的學習。

而那些支持使用IDE的大體是由於以下的緣由:

**一、使用記事本也並不能讓新手瞭解底層實現

**

二、使用記事本效率低下,弊大於利

三、使用IDE能夠提升學習效率

其實吧,說到底,咱們的注意點應該是語言自己,也就是要把重點放在java這門語言上,工具始終只是工具,若是你對語言自己掌握的很透徹,使用什麼工具就不會對你形成那麼大的困擾了,所以,首先要注意的就是分清重點,你要學的是語言而不是工具。

個人建議

那麼在學習語言的基礎上有個好工具那也是錦上添花的事情啊,因此我這裏給出我具體的見解:

一、剛剛接觸java階段,這個時候使用記事本,最起碼要在上面寫出來一個java的經典程序,而後使用javac和java命令去編譯和執行,你要知道一個java源代碼是怎麼變成字節碼的,又是怎麼執行的,使用的jdk中的哪些工具,這個是你必定要知道的,並且必需要會本身操做。

二、學了一段時間以後,就能夠不使用記事本了,這裏也暫時不推薦使用eclipse或者idea,這個時候可使用折中一些的工具,就目前來講VSCode是個很是不錯的工具,推薦使用VSCode,VSCode也是有代碼提示的,爲了幫助新手鍛鍊對java一些常見代碼的熟悉度,你們能夠把自動提示的功能關閉掉,其實我以爲沒有必要關掉,你只須要記住,剛開始階段,大部分的代碼你都要本身試着去敲,即便有提示,也不要直接一步到位,本身要把單詞寫完整,由於有提示,也能夠對照本身寫的是否正確。

三、到了後期學習,好比學完基礎了,能夠作一些簡單的項目了,推薦使用IDEA,作java的,就目前來講,之後仍是要把IDEA做爲主要生產力工具的。

小結

說了這麼多,其實道理也很簡單,做爲初學者,必定會有不少不熟悉和不懂得地方,因此在學習的時候,咱們要有耐心,不可急躁,更加不能偷懶耍滑,要多寫寫代碼,培養本身的手感,要牢記,前期必定要腳踏實地的打牢基礎,只有這樣,後面的路纔會走得順暢。

相關文章
相關標籤/搜索