GUI kontrollerinizi nasıl adlandırıyorsunuz?


12

Macarca gösterimi kullanmak genellikle kötü bir uygulama olarak kabul edilir , ancak userNameTextBoxve adlı GUI denetimlerini bulmak yaygındır userNameLabel.

Kontrol türünü ismine koydunuz mu? Bu bir çeşit Macar notasyonu değil mi?


tüm madende isimlere sahip değiller çünkü WPF
jk'de

Yanıtlar:


12

Dediğin gibi. Genel olarak, Macarca gösterim kötü bir uygulamadır. Adlarımı etki alanına olabildiğince yakın tutmayı seviyorum, ancak bazen söylemeye çalıştığınız şey bu metin kutusu ve etiket .

Kramii'nin belirli durumlarda neden hala Macarca kullandığına dair makul mantığı için başka bir soruya verilen cevaba bakınız .

Tüm kodlarda olduğu gibi, tutarlılık ve öz değerlendirme önemlidir. Siz ve ekibiniz farklı GUI kontrollerinin nasıl etiketlendiğini ve hangi öğelerin etiketlere ihtiyaç duyduğunu kabul ediyorsanız iyi olacaksınız :)


8

Aslında Macarca gösterimi sadece GUI denetimleri için kullanıyorum. Etiketler, radyo düğmeleri ve liste görünümleri için lblText, rbGroup1, lvTable vb.

Yine de hiçbir zaman değişme eğilimi göstermezler ve hangi değişkenin GUI kontrolü olduğu ve hangisinin olmadığı açıktır.

Ancak, bağlanma olasılıkları ile WPF kullandığım için artık C # özelliğine bağlandığından onları adlandırmak gerçekten gerekli değildir.

Btw, ara sıra gördüğüm bir kontrol lvListViewPersons aramak için hata yapmayın. Bir değişkene lv öneki eklenmişse, bunun zaten bir liste görünümü olduğunu görebilirsiniz.


3
Buna katılıyorum. GUI kontrolleri, Macarca gösterimin kardinal bir günah olmadığı tek yerdir (elbette IMO)
Wayne Molina

4

Ekibimiz, kodun geri kalanı için değil, GUI kontrolleri için Macarca gösterimini kullanıyor.

Tipik bir örnek, bir etiket ve ardından bir metin kutusu:

  • lblFirstName
  • kutuları txtFirstName

Ayrıca, metin kutunuzu bulmanızı kolaylaştırır, sadece "txt" yazın ve intellisense gerisini halleder.


1

GUI öğeleri için Macarca gösterim kullanıyorum. Gerçekten sen QtDesigner açık Visual Studio kapatın ve metin kutusu adında varsa butonuna ayarlanan metin istediğinizde zaman acıdır username, passwordtüm GUI elemanları içine sarılmış, çünkü sen Qt kullandığınızda, vb, bu büyük bir sorun değil uinesne ( ui.username), ancak Windows Forms kullandığımda, kullanıcı adı adlı metin kutusu yalnızca ad alanını şişirir.

Bu durumda, txtUsername, btnLogin, lblStatus, vb açıkça daha iyi seçeneklerdir.


1

GUI denetimleri için Macarca gösterimi kullanmaktan kaçının - `` lblFirstName '' gibi bir denetimi adlandırmaktan kaçınırım çünkü gerçekten bir etiket olmasını ummuyorum - veri bağlama açısından sadece bağlanacak bir şey.

Ad gerektiren denetimler için genellikle ux'kullanıcı deneyimi' önekini eklerim . Bu, öğenin yalnızca kullanıcının etkileşim kurması için tasarlandığını açıkça gösterir. Örneğin, görünüm modelim adlı bir özelliğe sahip olabilir FirstNameve görünüm adlı bir denetime sahip olabilir uxFirstName. Bu, adlandırılmış tüm kontrollerimin IDE'mde güzel bir şekilde gruplandırılmasının ek bir yararı var.


3
Ön uxekin kendisi Macar Notasyonu değil mi? Belki de anlamını ve türünü değil, yine de Macarca bir biçimini belirten diğer tür (ikisinin isimlerini unuttum)
Wayne Molina

Sanırım apps hungariankarşıt olarak bahsediyorsun systems hungarian. Uygulamalar macarca neredeyse sistemler kadar zararlı kabul edilmez, ancak bence'ux 'anlamı uygulamalar olarak kabul edilemeyecek kadar yüksek olabilir. Sanırım buna katman macar falan
diyebilirsiniz

1

İnsanların genel olarak Macar gösterimine dayanamayacağını biliyorum, ancak yine de birçok yerde çok kullanışlı buluyorum. GUI için en azından wnd önekini kullanıyorum.

Macarca gösterim kullanmama sorunu basittir, MSVS'nin yumuşak sularından ayrıldıktan sonra navigasyon bir burun dalışı alır. Bir çeşit görüyorsunuz SomeValue = SomeOtherValueve her lanet şeye bakmazsanız neler olup bittiğine dair hiçbir fikriniz yok. Genellikle oradaki üretkenliği öldüren grep veya iyi eski arama yoluyla, QT ve MSVS dışındaki IDE'ler aramalarda gerçekten kötüdür.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.