JavaRush /Java Blog /Random-TK /Intellij IDEA-da düzediş: täze başlanlar üçin gollanma

Intellij IDEA-da düzediş: täze başlanlar üçin gollanma

Toparda çap edildi
Hemmelere salam, JavaRush jemgyýeti. Bu gün düzediş barada gürleşeris: nämedigi we Intellij IDEA-da nädip düzetmeli. Intellij IDEA-da düzediş: täze başlanlar üçin gollanma - 1Makala, Java Core-ni eýýäm az bilýän adamlar üçin niýetlenendir. Kitaphanalary neşir etmek üçin çarçuwalar ýa-da çylşyrymly prosesler bolmaz. Ansat ýöremek. Şonuň üçin özüňizi rahatlandyryň we başlalyň!

Näme üçin düzediş gerek?

Derrew düşnükli edeliň: kemçiliksiz kod ýok ... Durmuş şeýle işleýär. Şonuň üçin kod garaşyşymyz ýaly işlemese, derrew agsama bolup, hemme zatdan ýüz öwürmeli däldiris. Intellij IDEA-da düzediş: täze başlanlar üçin gollanma - 2Whatöne näme etmeli? Elbetde, System.out.printlnislän ýeriňizde sazlap bilersiňiz we ýalňyşlyk taparsyňyz diýip umyt edip terminaldaky çykyşy tertipläp bilersiňiz. Muňa garamazdan, bu mümkin ... we muny edýärler, hem-de hasaba alyşdan peýdalanyp edýärler (bu hakda şu ýerden okap bilersiňiz ). Theöne kody ýerli enjamda işletmek mümkin bolsa, Düzediş ulanmak has gowudyr . Derrew belläsim gelýär, bu makalada Intellij IDEA-nyň içinde bir taslamany düzetmek meselesine serederis. Uzakdan düzedişler hakda okamak isleseňiz, ine, çeşmämizden bir makala .

Düzediş näme

Intellij IDEA-da düzediş: täze başlanlar üçin gollanma - 3Düzediş kody düzetmek (barlamak) prosesi, ýerine ýetirilende belli bir ýerde durup, ýerine ýetirişiň gidişine tomaşa edip bilersiňiz. Belli bir ýerde programmanyň ýagdaýyna düşüniň. Durmuşy duruzyp, daşardan hemme zada seredip bilýän ýaly. Gowy, şeýlemi? Biziň maksadymyz, iň gowy görýän ösüş gurşawymyz bolan Intellij IDEA ulanyp, programmalary nädip düzetmelidigini çalt we aňsat öwrenmek.

Düzedip başlamak üçin näme gerek

Mugt maslahat berýärin: makalany okaýarkaňyz, şu ýerde beýan ediljek zatlaryň hemmesini ediň, bagtymyza munuň üçin hemme zat bar. Size näme gerek:
  1. Intellij IDEA ösüş gurşawynyň 2019.3.1 we has ýokary wersiýasy. Kimdir biri ýok bolsa, ony göçürip alyp boljak bir baglanyşyk bar. Jemgyýet neşirini göçürip alyň, sebäbi men ulanjak zadym.
  2. Taslamany GitHub-dan klonlaň we IDEA arkaly import ediň.
IDEA-ny açyň: Düzediş-prezentasiýaIntellij IDEA-da düzediş: täze başlanlar üçin gollanma - 4 taslamasyny saýlaň , OK basyň we alyň: Daşarky çeşmelerden import taslamasyny goýuň , Maven we Finish düwmesine basyň . Taslamany import edenimizden soň, prosesi janly mysal bilen suratlandyryp bileris. Intellij IDEA-da düzediş: täze başlanlar üçin gollanma - 5

Biraz teoriýa ... Men söz berýärin: D.

Biraz düzedip başlamak üçin breakPoint-iň nämedigine düşünmeli we başlamaly birnäçe düwmejiklere düşünmeli. “BreakPoint” programmanyň duruzylmaly ýerini ýa-da ýagdaýyny görkezýän ýörite bellikdir. Çep gapdalynda çep düwmä basmak ýa-da koduň ýerleşýän ýerine basmak we Ctrl + F8 basyp, aralyk nokadyny düzüp bilersiňiz . Bölüniş nokatlary üç görnüşde bolýar: setir belligi, üýtgeýän bellik we usul belligi. Görnüşi ýaly:
  • Her setir boýunça:

    Intellij IDEA-da düzediş: täze başlanlar üçin gollanma - 6

    aňlatmada lambda bar bolsa, IDEA size saýlamagy teklip edýär - aňlatmany tutuş setire ýa-da lambda goýmak:

    Intellij IDEA-da düzediş: täze başlanlar üçin gollanma - 7
  • Her usul boýunça:

    Intellij IDEA-da düzediş: täze başlanlar üçin gollanma - 8
  • Her synp üçin

    Intellij IDEA-da düzediş: täze başlanlar üçin gollanma - 9
Arakesme nokatlary goşulanda edil şol ädimleri ýerine ýetirip aýrylyp bilner. Olary hereketsiz (sessiz) etmeli ýagdaýlaryňyz bar. Munuň üçin düzediş bölüminde Intellij IDEA-da düzediş: täze başlanlar üçin gollanma - 10ähli nokatlary hereketsizleşdirjek nyşan tapyp bilersiňiz. Haýsy nokatlaryň eýýäm kesgitlenendigini görmek üçin çep aşaky burçdaky düzedişe girip, nyşany tapyp bilersiňiz Intellij IDEA-da düzediş: täze başlanlar üçin gollanma - 11, ýa-da Ctrl + Shift + F8 basyp bilersiňiz : Intellij IDEA-da düzediş: täze başlanlar üçin gollanma - 12Bölüm nokatlarynyň sanawyna girenimizde göreris: Intellij IDEA-da düzediş: täze başlanlar üçin gollanma - 13Iki sany nokat bar şu ýerde:
  • Bee.java:24 - 24-nji setirde ary synpynda
  • Main.java:14 - 14-nji setirde esasy synpda
Taslamany klonlasaňyz, bu BreakPoints-iň bolmazlygyny belläsim gelýär: olary özüňiz düzmeli! Şeýle hem “Java Expression Breakpoints” bölümi bar . Örän peýdaly zat. Ony ulanyp, haýsydyr bir kadadan çykma ýa-da belli bir zady goýmazdan ozal programma durar ýaly, aç-açan nokat goşup bilersiňiz. “RuntimeException” üçin aç-açan nokat goşalyň. Bu aňsatlyk bilen ýerine ýetirilýär: çep ýokarky burçda “+” goşmaça belgisi bar. Oňa basyň we Java kadadan çykmalar nokatlaryny saýlaň : Intellij IDEA-da düzediş: täze başlanlar üçin gollanma - 14Peýda bolan penjirede goşulmaly kadadan çykma adyny ýazyň, teklip edilýän sanawdan saýlaň we " OK" düwmesine basyň : Intellij IDEA-da düzediş: täze başlanlar üçin gollanma - 15Bu bilim programmasyny tamamlaýarys we amaly dowam etdirýäris.

Geliň, düzedişiň ýabany ýerlerine gireliň

Intellij IDEA-da düzediş: täze başlanlar üçin gollanma - 16Miras aryçy bolanym üçin, düzediş prezentasiýasy üçin arylar tarapyndan nektar ýygnamak, nektary bal bilen gaýtadan işlemek we uýadan bal almak prosesini beýan edýän taslama döretdim. Taslamanyň düýbünde ýerleşýän README faýlynyň resminamalaryna esaslanyp , okaýarys: garaşylýan özüni alyp baryş - nektar ýygnan ähli güllerden ( goşa baha hökmünde), bal ýarysyna deňdir. ýygnan nektar. Taslamada aşakdaky synplar bar:
  • Ary - adaty işçi ary;
  • BeeQueen - şa aýal ary;
  • BeeHive - ary;
  • HoneyPlant - bal ýygnalýan bal ösümligi;
  • Esasy - public static void main()taslamanyň başlaýan usulynyň ýerleşýän ýeri.
Usuly işletseňiz main(), diňe balyň mukdary hasaplanman, eýsem ýalňyşlyk hem ýüze çykýar ... Intellij IDEA-da düzediş: täze başlanlar üçin gollanma - 17Şol ýerde nämäniň ýokdugyna seretmeli. Sagyň aşaky burçundaky yz yzyndan, “ HoneyPlant.java:20RuntimeException” -yň atylýandygyny görüp bileris: Intellij IDEA-da düzediş: täze başlanlar üçin gollanma - 18Bu edil biziň ýagdaýymyz: “RuntimeException” bar, geliň ýokarda görkezilişi ýaly şeýle kadadan çykma gözlegini goşalyň we main()usuly işledeliň düzediş tertibi. Munuň üçin Intellij IDEA-daky usuldan öň ýaşyl üçburçluk okuna basyň main(): Intellij IDEA-da düzediş: täze başlanlar üçin gollanma - 19we bu nyşan bilen kadadan çykmazdan ozal togtadylan programmany alarys Intellij IDEA-da düzediş: täze başlanlar üçin gollanma - 20Intellij IDEA-da düzediş: täze başlanlar üçin gollanma - 21. Doly maglumat almak üçin Düzediş bölümine seretmeli. Programmanyň bu böleginde bar bolan üýtgeýänleri görkezýän üýtgeýjiler bar :
  • nektar = 1.0;
  • nektarCapacity = -1.0.
Kadadan çykma adalatly zyňylýar, sebäbi bal ösümligindäki nektaryň mukdary negatiw bolup bilmez. Emma näme üçin beýle bolýar? Galyberse-de, nektar gutarsa, 15-17 setirlerde nol bahanyň yzyna gaýtaryljakdygy barlanýar:
if ( nectar == 0 ) {
         return 0;
}
Catchöne tutulýan zat, nädogry üýtgeýjini barlaýar ... we bu koddaky näsazlyk. NektarCapacity üýtgeýjisindäki güldäki nektaryň bahasyny barlamagyň deregine , programma usula girýän we nektardan almak isleýän mukdary bolan nektaryň bahasyny barlaýar. Ine, ilkinji näsazlyk! Şonuň üçin ony dogry goýýarys we aňlatmany alýarys:
if ( nectarCapacity == 0) {
         return 0;
}
main()Ondan soň usuly adaty tertipde işleýäris (Run `Main.main()`)we başga ýalňyşlyk ýok, programma işledi: Programma Intellij IDEA-da düzediş: täze başlanlar üçin gollanma - 22işledi we jogap berdi: “33.0 bal 2 bal ösümliginden 7 ary öndürildi” Hemme zat gowy bolardy, ýöne jogap nädogry ... Sebäbi resminamalarda README faýlynda nektaryň 2-den 1 nisbatynda bal öwrülýändigi ýazylýar:
## Documentation
Presentation based on honey getting process.

**Note**: 1 honey point = 2 nectar points
Esasy usuldan iki sany bal ösümliginiň, 30 we 40 birlik nektaryň bardygyny görmek bolýar, şonuň üçin ahyrynda 35 birlik bal almaly. 33-i ýazýar. Beýleki iki bölüm nirä gitdi? ... Indi öwreneris! Main.main()Munuň üçin 28-nji setirde ýerine ýetirilen nokady düzmeli beeHive.populateHoney()we mainýerine ýetiriş usulyny düzetmek tertibinde işlemeli: Intellij IDEA-da düzediş: täze başlanlar üçin gollanma - 23Geliň, bu meselä has içgin seredeliň. Programma 28-nji setiri ýerine ýetirmezden ozal saklandy. Aşakda işleýän programmadaky ähli maglumatlary beýan edýän düzediş bölümini görýäris. Üýtgeýjiler bölegi, ýokarda belläp geçişimiz ýaly, programmanyň bu böleginden girip boljak ähli üýtgeýänleri we obýektleri öz içine alýar. Çarçuwalar bölüminde programmanyň geçýän ädimleri görkezilýär, öňki ädime seredip, ýerli maglumatlary alyp bilersiňiz. Programmanyň işlemegini dowam etdirmek üçin aşakda görkezilişi ýaly F9 ýa-da ýaşyl nyşany basyp bilersiňiz: Intellij IDEA-da düzediş: täze başlanlar üçin gollanma - 24Programmany duruzmak üçin gyzyl meýdana basmaly: Intellij IDEA-da düzediş: täze başlanlar üçin gollanma - 25Programmany düzediş tertibinde täzeden açmak üçin oky basmaly: Intellij IDEA-da düzediş: täze başlanlar üçin gollanma - 26Ondan soň, programmany ädimme-ädim geçmek üçin iki düwmäni ulanyp bilersiňiz:
  • F8 - kod bölüminden geçiň we içerki usullara girmäň;
  • F7 - kod bölüminden geçiň we içerki usullary giriziň.
Şonuň üçin usuly işe girizmek üçin beeHive.populateHoney()F7 basmalydyrys we dowam etdireris: Indiki, bu usuly ulanyp, ahyryna çenli F8Intellij IDEA-da düzediş: täze başlanlar üçin gollanma - 27 ulanyp düzediş tertibinden geçeris we bu usulda bolup geçýän wakalary suratlandyrarys:
  • 25-nji setir - Akym API ähli arylardan bal ýygnamak üçin ulanylýar;
  • 26-njy setir - bar bolan birine bal goşulýar;
  • 27-nji setir - şa aýal üçin 2 birlik bal bölünip berilýär;
  • 28-nji setir - bu iki birlik balyň umumy mukdaryndan aýrylýar;
  • 29-njy setir - ýatgy bu baly iýýär.
Ine, bu iki bölüm gitdi! Işewür analitik bilen habarlaşanymyzdan soň, README faýlynda resminamalaryň ýalňyşlygy bar we täzelenmeli bolar diýen netijä geldik . README faýlyny täzeläliň:
## Documentation
Presentation based on honey getting process.

**Note**:
*  1 honey point = 2 nectar points
*  2 honey point queen bee eats every time when beehive populates the honey.
Munuň özi: tapylan ähli näsazlyklar düzedildi, arkaýyn kofe içmegi we JavaRush merkezinde akylly görnüş bilen makalalary okamagy dowam etdirip bileris :)

Gysgaça jemläň

Bu makalada biz düşündik:
  • ýalňyşsyz iş ýok we düzediş olary çözmegiň ajaýyp usulydyr;
  • kesiş nokady we haýsy görnüşleri bar;
  • kadadan çykma nokadyny nädip sazlamaly;
  • Düzediş tertibinde nädip gezmeli.

Okamak üçin makala

Beýleki makalalarymy hem görüň:
Teswirler
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION