Intellij Idea - Kod Yeniden Düzenleme
Bu bölümde, Kod Yeniden Düzenlemeyi ve IntelliJ'de nasıl çalıştığını öğreneceğiz. Kod yeniden düzenleme, kodun işlevselliğini ve kullanılabilirliğini değiştirmeden yeniden yapılandırılmasıdır. Kod yeniden düzenleme, kod okunabilirliğini, performansını iyileştirmek veya kullanılmayan / yinelenen işlevselliği kaldırmak için yapılabilir. IntelliJ, kod yeniden düzenleme için harika destek sağlar. Bu bölüm, çeşitli kod yeniden düzenleme eylemlerini tartışır.
Adını değiştirmek
Yeniden adlandırma eylemleri, yöntemleri, parametrelerini, sınıf özniteliklerini, yerel değişkenleri vb. Yeniden adlandırmak için kullanılabilir. IntelliJ'de aşağıdaki sınıfı oluşturalım.
public class Employee {
private String name;
private String address;
private int age;
public Employee() {
this("Jarvis", "Palo Alto", 35);
}
public Employee(String name, String address, int age) {
this.name = name;
this.address = address;
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
@Override
public String toString() {
return "Employee{" +
"name='" + name + '\'' +
", address='" + address + '\'' +
", age=" + age +
'}';
}
public static void main(String args[]) {
Employee e = new Employee();
System.out.println(e);
}
}
Şimdi yeniden adlandıralım Employee sınıf Person. Bu eylem, kurucularda değişiklikler yapacak vemain() yöntem -
Çalışan kelimesini seçin
Git Refactor → Rename ve Person ile yeniden adlandırın.
Yinelenen Kodları Değiştirin
Bu, güçlü yeniden düzenleme eylemlerinden biridir. IntelliJ, kod kopyalarını tanımlar ve uygun kodla değiştirir. Kod çoğaltmayı tanıtalım ve yeniden düzenleyelim. Editör'e aşağıdaki kodu yazın -
public class Employee {
private String name;
private String address;
private int age;
public Employee() {
this("Jarvis", "Palo Alto", 35);
}
public Employee(String name, String address, int age) {
this.name = name;
this.address = address;
this.age = age;
}
public void setData(String name, String address, int age) {
this.name = name;
this.address = address;
this.age = age;
}
public void showEmployeeDetail() {
System.out.println("Name = " + name + ", Address = " + address + ", Age = " + age);
}
public static void main(String args[]) {
Employee e = new Employee();
e.showEmployeeDetail();
}
}
Bu örnekte, Çalışan (Dize adı, Dize adresi, int yaş) yapıcı ve public void setData (Dize adı, Dize adresi, intyaş) yöntemi tamamen aynıdır. Yeniden düzenlemeden sonra, Çalışan (Dize adı, Dize adresi, int yaş) yapıcısı aşağıdaki gibi değiştirilir -
public Employee(String name, String address, int age) {
setData(name, address, age);
}
Yinelenenleri değiştirmek için -
Refactor → Kod Yinelemelerini Bul ve Değiştir'e gidin.
Yeniden düzenleme kapsamını seçin ve eylemi tamamlamak için ekrandaki adımları izleyin.
Yeniden Düzenleme Kopyalama
Bu bölümde, bir sınıfı diğerine nasıl kopyalayacağımızı anlayacağız. Employee sınıfını Person sınıfına kopyalayalım. Mevcut modüle veya yenisine kopyalayabiliriz. IntelliJ buna bağlı olarak gerekli değişiklikleri yapacaktır. Kopyayı yeniden düzenlemek için şu adımları izleyin -
Git Refactor → Copyiletişim kutusunu açacaktır.
Yeni adı ve hedef paketi girin.
Tamam düğmesine tıklayın ve gerekli olanı yapacaktır.
Yeniden Düzenlemeyi Taşı
Taşı yeniden düzenleme kopyalamaya benzer, ancak başka bir kopya yapmak yerine kodu farklı bir pakete taşır veya başka bir sınıfın iç sınıfı olarak yapar.
Taşımayı yeniden düzenlemek için şu adımları izleyin -
Refactor → Taşı seçeneğine gidin.
Yeni bir pencere açılacaktır.
Tercihinize göre seçeneklerden birini seçin ve Refactor'a tıklayın.
Güvenli Silme
Güvenli Silme eylemi nesneyi yalnızca projenin herhangi bir yerinde başvurulmadığında siler. Bu seçeneğin hedefi sınıf, arayüz, yöntem, alan veya parametre olabilir.
Bunu eylemde görelim. Aşağıdaki kodu Editör'e yazın -
public class HelloWorld {
static void sayHello() {
System.out.println("Hello, World !!!");
}
public static void main(String[] args) {
sayHello();
}
}
Güvenli silme eylemini gerçekleştirmek için şu adımları izleyin -
Seçin sayHello() yöntem.
Üzerine sağ tıklayın ve Refactor → Safe Delete seçeneği.
SayHello () yöntemi kullanılırken, aşağıdaki ekran görüntüsünde olduğu gibi bir hata gösterecektir -
İmzayı Değiştir
Eylem, yöntem imzasını değiştirir. Yöntem adını, parametrelerini, türlerini, dönüş değerlerini vb. Değiştirebilir. Yukarıdaki örnekten bir yöntem alalım ve onun imzasını değiştirelim.
İmzayı Değiştir eylemini gerçekleştirmek için şu adımları izleyin -
Yöntemi seçin.
Üzerine sağ tıklayın ve Refactor → İmzayı değiştir eylemini seçin
Yukarıdaki işlemleri gerçekleştirebileceğiniz yeni bir pencere açılacaktır.
Pencerenin altında, yeni imzanın önizlemesini gösterir.
Tip Taşıma
Tür Geçişi, sembolün türünü değiştirir. Bu sembol, bir yöntem parametresi veya sınıf özelliği olabilir. Gerekli eylemi gerçekleştirmeden önce aşağıdaki yöntemi ele alalım -
static void sayHello(String name) {
System.out.println(name);
}
Tür geçişini gerçekleştirmek için şu adımları izleyin -
"Dize" veri türünü seçin.
Üzerine sağ tıklayın ve seçin Refactor → Type migration.
Verilen metin kutusuna gerekli veri türünü girin.
Kapsamı seçin ve Refactor düğmesine tıklayın.