Basa pamrograman meh padha karo basa lisan. Mung bedane yaiku basa khusus sing tujuan utamane kanggo nggampangake komunikasi karo komputer supaya bisa nerangake komputer apa sing dikarepake. Nanging sampeyan ora bisa duwe obrolan pribadi karo komputer. Nalika sampeyan miwiti sinau basa pamrograman, sampeyan ndeleng buku utawa sawetara sumber pendidikan kaya CodeGym. Lan sumber daya iki nuduhake sampeyan kode sing komputer mangertos. Nanging sampeyan uga kudu ngerti nalika sampeyan sinau babagan basa Jawa. Kaya basa apa wae, sawetara konvensi format wis diadopsi ing pemrograman. Contone, ing masyarakat sing sopan, nulis kaya iki bakal dianggep ora sopan. Lan ing Jawa, miwiti jeneng metode kanthi huruf kapital minangka nglanggar konvensi coding. Aturan kanggo kode Jawa diwenehi ing dokumen Code Conventions for the Java Programming Language . Konvensi coding uga bisa ngatur rincian sing luwih cilik, kayata indentasi. Mbayangno ngipi elek sing kontrol versi bakal dadi yen indentasi ora konsisten, sawetara wong nggunakake tab lan wong liya nggunakake spasi. Apa bakal kaya kanggo wong sing kudu mriksa ing fix mung siji cara, nanging nemokake kabeh file diganti amarga beda spasi lan tab? Mesthi, kaya basa biasa, konvensi bisa uga beda-beda gumantung ing ngendi basa digunakake. Contone, ing jembar web, sampeyan bisa nemokake Google Java Style Guide lan Twitter Java Style Guide.. Kanggo review iki, kita butuh subyek tes. Kita bakal nggunakake sistem otomatisasi mbangun Gradle. Iki bakal ngidini kita miwiti kanthi cepet kanthi nggawe proyek anyar saka cithakan. Gradle duwe plugin sing apik: Mbangun Plugin Init . Ayo dadi menyang direktori anyar lan mbukak printah ing ngisor iki ana:
gradle init --type java-application
Sawisé iku, miwiti IntelliJ IDEA. Yen sampeyan ndeleng jendhela kanthi proyek sing mbukak (yaiku sampeyan ndeleng editor kode lan wit proyek), tutup proyek iki nggunakake File -> Close Project
. Saiki ing jendhela sambutan, bukak " Import Project
" lan impor proyek anyar kita. Nalika ngimpor, setel Use autoimport
kothak centhang "". Ayo ngerteni apa kita bisa nggunakake alat pangembangan canggih kanggo nyederhanakake urip.
Format kode ing IDEA
Sawise ngimpor proyek, penet Ctrl + N lan pindhah menyangAppTest
kelas. Iki minangka kelas tes standar. Katon kaya mangkene:
import org.junit.Test;
import static org.junit.Assert.*;
public class AppTest {
@Test public void testAppHasAGreeting() {
App classUnderTest = new App();
assertNotNull("app should have a greeting", classUnderTest.getGreeting());
}
}
Apa langsung narik mripatmu? Anotasi ing baris sing padha karo deklarasi metode, sing katon ala, ta? Carane ndandani iki? IntelliJ IDEA nduweni Code
entri menu " " kanggo macem-macem manipulasi kode. Salah sawijining manipulasi yaiku " Reformat Code
", sing bisa sampeyan gunakake nggunakake Ctrl+L. Sawise sampeyan nindakake iki, anotasi bakal ana ing siji baris, lan deklarasi metode ing liyane. Perlu dicathet yen operasi iki ditindakake ing kode sing saiki dipilih . Yen ora ana pilihan, banjur operasi format ditindakake ing kabeh. Saiki ayo nambah metode tes anyar:
@Test
public void testSumOfOddNumbers() {
List<Integer> data = Arrays.asList(1, 4, 2, 3, 6, 7, 9);
Integer result = data.stream().filter(number -> number % 2 == 0).reduce((n1, n2) -> n1 + n2).get();
assertThat(result, is(12));
}
Lan loro impor:
import static org.hamcrest.CoreMatchers.is;
import static org.junit.Assert.assertThat;
Nalika sampeyan bisa ndeleng, operasi ing Stream ing siji baris. Nanging apa yen kita pengin mesthekake yen telpon cara chained tansah dipérang dadi baris anyar ing saben operator periode? Kita bisa nindakake iki kanthi manual. Nanging elinga yen kita pengin kabeh kedadeyan kanthi otomatis. Pancen, kita mesthi bakal lali langkah manual saka wektu kanggo wektu, banjur kita bakal mungkasi karo format beda nang endi wae, lan iku ora apik. Dadi, kita kudu ngowahi aturan sing digunakake IDEA kanggo format. milihFile -> Settings
ing menu IDEA (utawa pencet Ctrl+Alt+S). Ketik "Gaya kode" ing kolom telusuran ing jendela setelan. Ing bagean "Gaya kode", sampeyan bisa nemtokake setelan kanggo luwih akeh basa tinimbang Jawa. Ananging basa Jawi ingkang sapunika dados kasengsem. Nalika sampeyan bisa ndeleng, setelan dipérang dadi sawetara tab. A fitur super migunani iku conto saka operasi ditampilake ing sisih tengen jendhela: Gambar nuduhake yen kita bisa nyetel "Panggilan cara Chained" kanggo "bungkus tansah", IE tansah pamisah telpon cara chained menyang baris kapisah. Saiki klik tombol format maneh ing kelas test lan kita weruh yen pancene bisa digunakake! Nanging kadhangkala sampeyan kudu ngowahi format sawetara kode ing njaba aturan format standar. Setel format kaya ing ngisor iki: Kanggo nyegah format, ing bagean "Gaya Kode", aktifake panandha formatter: Saiki kita bisa ngganti kelas tes supaya kode kasebut ora diformat maneh:
@Test
public void testSumOfOddNumbers() {
List<Integer> data = Arrays.asList(1, 4, 2, 3, 6, 7, 9);
// @formatter:off
Integer result = data.stream().filter(number -> number % 2 == 0)
.reduce((n1, n2) -> n1 + n2)
.get();
assertThat(result, is(12));
// @formatter:on
}
Sampeyan bisa uga wis ngeweruhi yen sampeyan menet Tab, IDEA nerangake minangka spasi (iki minangka prilaku standar). Nanging sampeyan bisa ngganti iki ing Code Style
bagean " ": Nalika sampeyan bisa ndeleng, ana akeh setelan ing kono. Sampeyan bisa maca rincian liyane babagan Code style
setelan " " ing kene: " Bantuan IDEA: Gaya Kode ". Ana fitur format penting liyane: format impor. Operasi iki ditindakake kanthi kapisah lan diarani " Optimize Imports
". Dumunung ing ngisor Code -> Optimize Imports
(Ctrl + Alt + O). Ngoptimalake impor mbusak impor sing ora perlu lan ngatur impor kanthi urutan sing bener miturut setelan ing Imports
tab " " ing Code Style
setelan " " kanggo Jawa. Apa maneh, yen sampeyan pengin format iki kelakon kanthi otomatis, ana kabar apik:Plugin Simpen Tindakan .
Distribusi setelan ing printah
Kita weruh ing ndhuwur yen sampeyan bisa ngatur gaya format apa wae sing dikarepake. Nanging kepiye sampeyan nggunakake gaya iki ing tim? Gampang banget. Ana sawetara opsi. Sing paling gampang yaiku nyimpen skema gaya kode. Bukak setelan IDEA nggunakakeFile -> Settings
(utawa pencet Ctrl + Alt + S). Ing Code Style
bagean " ", kita bisa ndeleng "Skema". Iki minangka skema format kita. Kanthi gawan, skema "Default" digunakake lan diwenehi label "IDE", tegese setelan iki mung ditrapake kanggo IDE kita - ora mengaruhi wong liya. Kanggo nggawe skema "adat", gunakake tombol ing sisih tengen kanggo nggawe salinan lan menehi jeneng, contone: CodeGym Banjur kita bisa ngimpor utawa ngekspor setelan: Pilihan liyane yaiku ngimpor setelan IDEA: Pilihan katelu yaiku Repositori Setelan. Kanggo nggunakake Repositori Setelan, deleng dokumentasi Bantuan IntelliJ IDEA kanggo rincian liyane ing link ing ngisor iki: Repositori Setelan ". Ngomong babagan nyurung gaya gabungan ing tim, aku uga ora bisa ngomong babagan dhukungan sing apik kanggo gaya saka Eclipse. IDE. Kanggo nindakake iki, sampeyan kudu nginstal plugin kapisah: mbukak setelan IDEA liwat File -> Setelan (Ctrl+Alt+S) lan pindhah menyang bagean "Plugins". Kanggo nemokake plugin anyar, klik tombol "". Browse Repositories
Banjur Temokake plugin Eclipse Code Formatter ing jendela telusuran. Sawise nginstal, sampeyan kudu miwiti maneh IDEA - iki prosedur standar. Saiki kabeh wis rampung. Ana bagean anyar ing setelan IDEA: "Eclipse Code Formatter".. Bakal katon kaya iki:
Syarat sing luwih kenceng
Saliyane alat IDEA, sampeyan uga bisa nggunakake plugin otomatisasi mbangun kanggo ngencengi syarat. Ora ana cara sampeyan bisa mriksa kanthi manual manawa ana wong sing nggunakake format sing bener. Mungkin sampeyan bisa karo 5 wong ing tim. Nanging kanthi 100 wong ing perusahaan, iku ora nyata. Lan malah limang bakal angel dilacak. Lan kenapa mbuwang wektu sampeyan ing samubarang iki? Iku bakal luwih gampang kanggo nyegah project saka dibangun yen aturan sing nerak. Nyatane, iki minangka topik kapisah sing diarani "Kode Priksa". Ing artikel iki, aku mung pengin nuduhake cara kerjane. Salah sawijining plugin Gradle sing paling populer (amarga mbangun proyek kita, sampeyan bakal kelingan) yaiku pmd. Kanggo ngaktifake, bukak skrip mbangun proyek Gradle (file build.gradle ing oyod proyek kita) lan tambahake pmd ing jejere plugin liyane:
plugins {
// Apply the java plugin to add support for Java
id 'java'
// Check source code
id 'pmd'
// Apply the application plugin to add support for building an application
id 'application'
}
Saiki kita bisa ngetik setelan sing luwih rinci ing panggonan sing padha:
pmd {
ignoreFailures = false
pmdTest.enabled = true
ruleSets = [
'java-basic',
'java-braces',
'java-clone',
'java-codesize',
'java-comments',
'java-controversial',
'java-coupling',
'java-design',
'java-empty',
'java-finalizers',
'java-imports',
'java-optimizations',
'java-strictexception',
'java-strings',
'java-typeresolution',
'java-unnecessary',
'java-unusedcode'
]
}
Malah proyek kita saiki rusak. Mbukak gradle build
lan kita entuk kesalahan. Sing apik yaiku laporan digawe sajrone mbangun. Lan yen ana kesalahan, kita entuk pesen kaya iki:
BUILD FAILED in 35s
6 actionable tasks: 6 executed
7 PMD rule violations were found. See the report at: file:///C:/_study/codestyle/build/reports/pmd/main.html
Menyang laporan, kita bisa ndeleng kaya iki: Menapa malih, kolom " Problem
" nyedhiyakake pranala menyang katrangan babagan masalah ing situs web plugin pmd. Contone, kanggo headerCommentRequirement Required
kesalahan " ", pranala menyang kene: pmd — CommentRequired . Kesalahan iki minangka tandha yen kelas kita ora duwe JavaDoc. Kita bisa nggunakake cithakan kanggo ngatur JavaDoc kelas ndhuwur: Lan nemtokake isi kanggo File Header
: Sawisé iku, kita bisa nguripake komentar ing ndhuwur kelas App menyang JavaDoc lan ndeleng sing kesalahan wis ilang ing mbangun anyar.
Garis ngisor
Gaya kode penting kanggo ngoptimalake produktivitas ing sawijining proyek. Kode sing apik sing ditulis miturut aturan sing dienggo bareng njamin kanca kerja sampeyan bakal luwih gampang lan cepet ngerti lan ora bakal menehi kritik. Kanthi alat pangembangan modern, ora angel netepi aturan gaya. Mugi review iki wis mbuktekaken kanggo sampeyan sing iki bener. Ing ngisor iki tradhisi, kene ana materi tambahan babagan topik:- Video saka JetBrainsTV: " Inspect Code (IntelliJ IDEA) "
- Tinjauan " Analisis Kode Kanthi Plugin Gradle "
- Kursus " Kualitas Kode Otomatis ".
GO TO FULL VERSION