Eğer Python için hangi iyileştirme yapma araçları kullanıyorsunuz?

oy
59

Ben adlandırmak istediğiniz sınıfların bir grup var. Bazıları küçük adlara sahip ve bu ismi ben bu ismi değişti istemediğiniz diğer sınıf isimleri, tekrar kullanılır. Bunun büyük kısmı Python kodu yaşıyor, ama biz de sınıf isimlerine atıfta bazı XML kodu var.

yerine Basit arama ve ancak şimdiye kadar beni alır. Benim durumumda, ben AdminActionLoggerPlug için AdminActionPlug ve AdminActionLogger için AdminAction adlandırmak istiyorum, bu yüzden ilk kişinin arama ve değiştirme de yanlış, ikincisini vurmak istiyorum.

Herkes Python yeniden düzenleme araçları ile deneyime sahip mi? Bonus puan onlar da XML belgelerinde sınıf isimlerini düzeltmek eğer.

Oluştur 26/08/2008 saat 17:26
kaynak kullanıcı
Diğer dillerde...                            


7 cevaplar

oy
48

Bu arada, ben o vim ile entegrasyon çeşit iki araç denedim.

Ilk halat , bir Vim (ve emacs) ile birlikte bir piton yeniden düzenleme kütüphanesi plug-in. Birkaç yeniden adlandırır için denedim ve beklendiği gibi bu kesinlikle çalıştı. Bu beni güzel bir fark olarak üstlenmeden dinlemelerine olanak. Sadece öğrenmek için daha uzun sürer, Biraz metin odaklı, ama bu benim için sorun değil.

Ikinci Bisiklet Tamir Adam ben adına kazanç noktaları sanırım. Ayrıca vim ve emacs takılır. Henüz onunla çok oynamadım, ama uzun zaman önce çalıştığımı hatırlıyorum.

Henüz hem yeterli oynanır, ya da üstlenmeden daha fazla türde çalıştı, ama onlarla hack biraz daha yapacak mı.

Cevap 27/08/2008 saat 08:15
kaynak kullanıcı

oy
4

Kişisel IDE refactorings destekleyebilir !! Bunun edin Eric Eclipse, WingIDE (dahil Rename) refactorings araçları inşa var. Ve bu çok güvenli refactorings vardır - bir şey alışkanlık ref yapmak yanlış IDE gitmek eğer.

Ayrıca refactorings sırasında zarar vermedi kodunuzu sağlamak için birkaç ünite testi eklemeyi düşünün.

Cevap 28/11/2009 saat 17:07
kaynak kullanıcı

oy
4

WingIDE 4,0 hala yapılması gereken işler var ... Birkaç refactorings destekleyecektir (WingIDE benim piton seçim IDE), ama sadece son beta, beta6 denedik ve. Geri Çek Yöntemi güzel çalışır, ancak yeniden adlandır Sembol yok.

Güncelleme: 4.0 sürüm yeniden düzenleme tüm araçları belirlemiştir. Onlar şimdi büyük iş.

Cevap 03/02/2011 saat 01:57
kaynak kullanıcı

oy
-3

Bunu gerçekleştirmek için sed kullanabilirsiniz. hüner düzenli ifadeler kelime sınırlarını tanıyabileceği hatırlamak etmektir. Bu Windows üzerinde Cygwin olan araçları almak sağlanan tüm platformlarda çalışır, Mac OS dev araçları yükleme gerektirebilir, emin değilim ve Linux kutunun dışında bu vardır. Yani grep, Xargs ve adam sayfaları ve deneme yanılma okuma 12 saat sonra, hile yapmak gerekir sed;)

Cevap 26/12/2012 saat 20:12
kaynak kullanıcı

oy
4

Pycharm bazı üstlenmeden özelliklere sahiptir.

python üstlenmeden

Rename üstlenmeden güvenle ve anında küresel kod değişiklikleri gerçekleştirmesini sağlar. Bir dosya içinde yerel değişiklikler yerinde yapılmaktadır. Refactorings düz Python ve Django projelerde çalışmak.

Kullanım Değişken / Alan / Sabit tanıtılması ve Yerel satır içi bir yöntem dahilinde kod yapısını iyileştirmek için, Özü Yöntemi , uzun yöntemleri kırmaya SuperClass Özü , Push Up , Pull Down ve Taşı yöntem ve sınıfları taşımak için.

Cevap 10/09/2014 saat 11:21
kaynak kullanıcı

oy
21

Şiddetle tavsiye ediyorum pycharm sadece refactorings için -. İlk pycharm cevap birkaç yıl önce burada yayınlanan bu yana pycharm içinde üstlenmeden destek önemli ölçüde iyileşmiştir.

Pycharm mevcut Python refactorings (son pycharm 2016,2 yılında 2016/07/27 işaretli)

  • Değişim İmza
  • Python Paketi dönüştür / Modülü
  • kopya
  • Özü refactorings
  • Çizgide
  • İnvert Boole
  • Üst Düzey İşlevini yapın
  • Taşı refactorings
  • Aşağı Üyeler itin
  • Üyeler yukarı çekin
  • refactorings yeniden adlandırma
  • Sil Güvenli

XML refactorings (Ben bir XML dosyasında bağlam menüsünde işaretli):

  • Adını değiştirmek
  • Hareket
  • kopya
  • CTE olarak alt sorgu Özü
  • Çizgide

JavaScript refactorings:

  • JavaScript Parametre Özü
  • JavaScript İmza değiştirin
  • JavaScript Değişken Özü
Cevap 15/10/2014 saat 10:34
kaynak kullanıcı

oy
2

Ben bir göz alacağını Bowler ( https://pybowler.io ).

Bu ip daha komut satırından doğrudan kullanım için daha uygun olduğunu ve komut dosyası (bir defaya mahsus komut dosyaları) teşvik eder.

Cevap 27/09/2018 saat 13:28
kaynak kullanıcı

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more