Yazılım Mühendisliği

Sistem geliştirme yaşam döngüsü içinde çalışan profesyoneller, akademisyenler ve öğrenciler için soru-cevap

6
Bir sınıfı kendi listesinin alt sınıfı olarak tanımlamanın dezavantajı ne olabilir?
Yakın tarihli bir projemde, aşağıdaki başlığa sahip bir sınıf tanımladım: public class Node extends ArrayList<Node> { ... } Bununla birlikte, CS profesörümle konuştuktan sonra, sınıfın "hafıza için korkunç" ve "kötü uygulama" olacağını belirtti. İlkini özellikle doğru, ikincisini öznel olarak bulamadım. Bu kullanım için gerekçem, bir örneğin davranışının ya özel bir …

4
GitHub'taki terkedilmiş konularla ne yapmalı?
Birisi GitHub'da bir sorun açar ancak hatayı yeniden oluşturmak için daha fazla bilgi sorulur ve asla verilmezse, normal prosedür nedir? Örnek . İşte yazar "nav kırıyor" diyor. Sabit olduğuna inanırken, aynı şey hakkında konuştuğumuzdan emin olmak için yazardan haber rica ediyorum. Ancak bazen meselenin muhabiri ortadan kayboluyor. Terk edilmiş konular …


16
Bir for-loop içinde, eğer mümkünse, mola durumunu koşul alanına taşımalı mıyım? [kapalı]
Bazen böyle bir mola gerektiren döngülere ihtiyacım var: for(int i=0;i<array.length;i++){ //some other code if(condition){ break; } } Yazarken kendimi rahatsız hissediyorum if(condition){ break; } çünkü 3 satır kod tüketiyor. Ve ben döngü olarak yeniden yazılabilir buldum: ↓ for(int i=0;i<array.length && !condition;i++){ //some other code } Öyleyse benim sorum şu, eğer …

8
Sanal yıkıcılar kullanılmadığında?
Sanal yıkıcılar hakkında defalarca aradığımı, sanal yıkıcıların amaçlarından ve neden sanal yıkıcılara ihtiyaç duyduğunuzu düşündüğüme inanıyorum. Ayrıca çoğu durumda yıkıcıların sanal olması gerektiğini düşünüyorum. Öyleyse soru şudur: c ++ neden tüm yıkıcıları varsayılan olarak sanal olarak ayarlamıyor? veya başka sorularda: Ne zaman sanal yıkıcılar kullanmam gerekmiyor? Bu durumda sanal yıkıcılar …

6
Gizli AJAX'ın sahte performans talepleri ne kadar güvenli?
Gizli bir AJAX isteği nedir? Bir kullanıcının işleminin hemen gerçekleşmesini sağlamak için tasarlanan gizli AJAX isteklerinin kullanımında bir artış olduğunu fark ettim. Bu tip AJAX isteğine bloke edici olmadığına bakacağım. Bu, kullanıcının farkında olduğunu bilmeden yapılan bir AJAX talebidir, arka planda gerçekleştirilir ve çalışması sessizdir ( AJAX çağrısının başarılı bir …

1
MIT lisansındaki durum tam olarak ne anlama geliyor?
Lisansın kendisinden alıntı yapmak için: Telif Hakkı (C) [yıl] [telif hakkı sahipleri] Bu yazılımın ve ilgili dokümantasyon dosyalarının ("Yazılım") bir kopyasını alan herhangi bir kişiye, Yazılım'da, kullanım, kopyalama, değiştirme, birleştirme haklarını sınırlandırmak dahil, ancak bunlarla sınırlı olmamak üzere, ücretsiz olarak izin verilir. Yazılımın bir kopyasını yayınlamak, dağıtmak, alt lisans vermek …

7
Kelime hem isim hem de fiil olduğunda bir değişkeni isimlendirmek
Genel rehberlikle bir köşe problemiyle karşılaştım: değişkenler için isimler fonksiyonlar için fiiller Özellikle, kelimenin belirsiz olduğu bir durum var - bu bir fiil veya bir isim olabilir. Bazı durumlarda, uygulamayı tartışırken , aynı cümleyle her iki şekilde de kullanılacaktır . Niyetim, aylar sonra kod bölümlerine döndüğümde programın gelecekteki geliştiricilerin yanı …
48 naming  variables 

8
Kaynak kontrol sistemimizden ekibimin temel bir yeterliliğinden daha fazla olmasını beklemeli miyim?
Şirketim Subversion'dan Git'e üç ay önce geçti. Geçiş öncesinde haftalarca önceden haberimiz vardı. Git'i daha önce (ya da başka herhangi bir DVCS'den önce) hiç kullanmadığımdan, Pro Git'i okudum ve biraz zaman harcadım, kendi depolarımı toplayıp etrafta dolaştım, böylece değiştirdiğimizde minimum acı ile çalışmaya devam edebilecektim. Şimdi varsayılan olarak 'Git adam' …

3
Node.js Hakkında Çok Benzersiz Nedir? [kapalı]
Son zamanlarda Node.js. için övgüler var. Ağ uygulamasına çok fazla maruz kalmış bir geliştirici değilim. Nodes.js 'nin çıplak anlayışından yola çıkarak, gücü şudur: olaya dayalı bir mimari sağlayan, birden fazla bağlantıyı yöneten sadece bir iş parçacığımız var. Ancak, örneğin Java’da, NIO / AIO’yu kullanarak (yalnızca benim anladığımdan engellemeyen API’ler) API …

14
Kod incelemelerinde olumlu geribildirim ne kadar önemlidir?
Kod incelemesi sırasında kodun iyi kısımlarına ve iyi olmasının sebeplerine dikkat çekmek önemli mi? Olumlu geri bildirim, incelenen geliştirici ve incelemeye katılan diğer kişiler için yararlı olabilir. Çevrimiçi bir araç kullanarak incelemeler yapıyoruz, bu nedenle geliştiriciler taahhüt edilmiş kodları için incelemeler açabilir ve diğerleri kodlarını belirli bir süre içinde inceleyebilir …


8
LSP vs OCP / Liskov Değişimi VS Aç Kapat
OOP'un SOLID ilkelerini anlamaya çalışıyorum ve LSP ile OCP'nin bazı benzerlikleri olduğu sonucuna vardım (daha fazla söylemediyseniz). açık / kapalı prensipte "yazılım varlıkları (sınıflar, modüller, fonksiyonlar vb.) uzatma için açık, ancak değişiklik için kapalı olmalıdır" yazmaktadır. Basit bir ifadeyle LSP, herhangi bir örneğinin türetilmiş Fooherhangi bir örneğiyle değiştirilebileceğini ve programın …

9
Birim testine veya teste dayalı geliştirmeye değer mi?
İş yerindeki ekibim Scrum'a taşınıyor ve diğer ekipler birim testleri ve kullanıcı kabul testleri kullanarak test odaklı bir gelişim göstermeye başlıyor. UAT'leri severim, ancak genel olarak test odaklı geliştirme veya test odaklı geliştirme için birim testinde satılmam. Test yazma ekstra bir iş gibi görünüyor, insanlara gerçek kodu yazarken bir koltuk …

4
Python'daki yineleyiciler neden bir istisna yaratıyor?
İşte Java'da yineleyiciler için sözdizimi (C # ile benzer bir sözdizimi): Iterator it = sequence.iterator(); while (it.hasNext()) { System.out.println(it.next()); } Bu mantıklı. İşte Python'da eşdeğer sözdizimi: it = iter(sequence) while True: try: value = it.next() except StopIteration: break print(value) İstisnaların yalnızca istisnai durumlarda kullanılması gerektiğini düşündüm. Python neden yinelemeyi durdurmak …

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.