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

3
GDB bir yürütmeyi nasıl duraklatır
Bildiğiniz gibi, hata ayıklama için yürütmeyi duraklatmak için GDB'yi kullanabilir ve kodumuzda kesme noktaları ayarlayabiliriz. Sorularım, GDB bir işlemi nasıl duraklatır ve i rörneğin kullanarak kayıtların içeriğini görüntülemenize izin verir . Bu kayıtlar diğer işletim sistemleri tarafından sürekli olarak kullanılmıyor mu? nasıl yazılmazlar? Canlı verilerin değil, yalnızca içeriğin anlık görüntüsü …
16 c++  debugging 


2
Bir C ++ yöntemini işaretçi argümanlı bir C işlevine dönüştürmek kabul edilebilir bir kalıp mı?
ESP-32'de C ++ kullanıyorum. Bir zamanlayıcı kaydederken bunu yapmak zorundayım: timer_args.callback = reinterpret_cast<esp_timer_cb_t>(&SoundMixer::soundCallback); timer_args.arg = this; Burada zamanlayıcı çağırır soundCallback. Ve bir görevi kaydederken aynı şey: xTaskCreate(reinterpret_cast<TaskFunction_t>(&SoundProviderTask::taskProviderCode), "SProvTask", stackSize, this, 10, &taskHandle); Böylece yöntem ayrı bir görevde başlatılır. GCC beni bu dönüşümler hakkında her zaman uyarıyor, ancak planlandığı gibi çalışıyor. …
16 c++  c  functions 


1
Bir .NET Çözümü için dizin yapısı
Son zamanlarda projelerin yapılandırılması metodolojimizi sorgulayan bir yüklenici ziyaretimiz oldu. Özellikle dizin yapısına atıfta bulunduğumu lütfen unutmayın. Microsoft yönergelerini kullanmanızı önerdi. Google "Microsoft yönergeleri .NET proje dizin yapısı" ve yararlı bir şey bulmak mümkün olacağını düşündüm, ancak bu durum böyle olmadığı kanıtlanmıştır. Durduğu gibi böyle bir şey yapıyoruz: [Company.System.Feature] |-doc …
16 c#  visual-studio 

4
Tamamen statik sınıflara sahip olmak kötü bir fikir mi?
Daha büyük bir solo proje üzerinde çalışıyorum ve şu anda bir örnek oluşturmak için herhangi bir neden göremediğim birkaç dersim var. Örneğin, şu anda zar sınıfım tüm verilerini statik olarak saklar ve tüm yöntemleri de statiktir. İlklendirmem gerekmiyor çünkü zar atmak ve yeni bir değer elde etmek istediğimde, sadece kullanıyorum …

3
Neden hemen birleştirilmiş değişiklikler yapmayasınız ki?
Ofisim sürüm kontrolümüz için Git ve SourceTree kullanıyor. Bu ortaya çıktı çünkü katıldığımda sıfır sürüm kontrolü vardı ve SourceTree şimdiye kadar kullandığım tek sistemdi. Ben hiçbir şekilde uzman değilim, ama iş arkadaşlarımdan en deneyimli olanıyım, bu yüzden herkesi Git'i düzgün kullanmasını ve yaptıkları hataları düzeltmeyi öğretmekten sorumlu fiili uzmanım. Git …

4
Javascript'teki fonksiyonların gizemi çözülemiyor
Javascript'in perde sahnelerini anlamaya çalışıyorum ve nesnelerin, özellikle Nesne ve Fonksiyonun yaratılmasını ve aralarındaki ilişkiyi anlamaya sıkıştım . Array, String vb.Gibi tüm yerleşik nesnelerin Object'den uzantı (devralınan) olduğunu okuduğumda, Object'in yaratılan ilk nesne olduğunu ve kalan nesnelerin kendisinden miras aldığını varsaydım. Ancak, Nesnelerin yalnızca işlevler tarafından oluşturulabileceğini bilmeniz mantıklı değildir, …

3
Bir arayüzde string_view'i ne zaman kullanmalıyım?
Ben mimik a amacıyla tasarlanmış, bir iç kitaplığı kullanıyorum C ++ kütüphanesi önerdi ve bazen son birkaç yıl içinde gördüğüm kendi arayüzü kullanarak değiştirildi std::stringkadar string_view. Bu yüzden yeni arayüze uymak için kodumu saygıyla değiştiriyorum. Ne yazık ki, ne geçmek zorunda bir std :: string parametresi ve std :: string …

5
Daha etkileyici programlama dillerinin gelişimi ile yazılım tasarım spesifikasyonlarına duyulan ihtiyaç önemli ölçüde azaldı mı?
Birkaç yıl önce kendim de dahil olmak üzere birçok BT insanı için ideal yazılım geliştirme süreci, bir kod satırı yazılmadan önce çok sayıda UML diyagramı içeren ayrıntılı tasarım belgelerinin oluşturulmasını içerecektir. (Bu şelale modelinin bir tanımına benziyor, ancak iterasyonların daha küçük olması dışında çevik ile aynı.) Son iki ya da …

4
Hızlı ana sürüm kötü tasarımın bir kanıtı mı?
Birkaç ay önce genç programcı olarak işe başladım. Üzerinde çalıştığımız sistem ~ 2 yıldır üretimde. Sistemin ya da tasarımın dilenmesiyle ilgilenmedim. Fark ettiğim bir şey, sistem ana sürümünün zaten 11.YZ Form diğer sistemler ve kütüphanelerle çalışma deneyimimi oluşturması, bu kadar hızlı bir ürün çarpma büyük sürümünü gördüğümü hatırlamıyorum. 1.XY'de yıllardır …

3
Tek amacı harici bir API'yi sorgulamak olan ancak API karmaşık bir sorgu sözdizimi kullanan bir işlevi nasıl test edersiniz?
Tek gerçek mantık harici API'nin sorgu sözdizimindedir. API'yi sorgulayıp sorgulamadığını test etmek istemiyorum, doğru veri döndürülecek şekilde sorguladığını test etmek istiyorum. Örneğin, bazı sözde kodlar: function retrieve_related_data(id) { query = "[potentially long, syntactically complex query that uses param id to get some data]"; results = api_wrapper.query(query); return results; } Hazırlanmış …

5
Ortak bir kütüphane iyi bir fikir midir?
Her zaman bir "ortak kütüphane" nin iyi bir fikir olduğunu düşündüm. Bununla, genellikle birkaç farklı uygulamanın ihtiyaç duyduğu ortak işlevselliği içeren bir kütüphane demek istiyorum. Daha az kod çoğaltma / artıklık ile sonuçlanır. Son zamanlarda bunun aslında kötü bir fikir olduğunu ve bir "anti-desen" olduğunu söyleyecek bir makale okudum (şimdi …
16 design  go 

2
EMS hala alakalı mi?
Gibi konuları okuyarak Benim anlayış bu bir ems noktası ile web sayfanıza tüm ölçümleri tanımlamak olmasıdır baz font boyutu tarayıcınız tarafından ayarlanabilir. Örneğin, Chrome'da bunu giderek yapabilirsiniz settings -> show advanced settings -> web content -> font size: very large. Çok uzaktaki büyük, yüksek çözünürlüklü bir monitör kullanıyor olsaydım bunu …
16 css 

9
Gereksiz durum en iyi uygulamalara karşı kontrol ediliyor mu?
Son üç yıldır yazılım geliştiriyorum, ancak kısa bir süre önce iyi uygulamalardan ne kadar cahil olduğum konusunda uyandım. Bu, hayatımı daha iyiye çeviren Temiz Kod kitabını okumaya başlamamı sağladı, ancak programlarımı yazmak için en iyi yaklaşımlardan bazılarını anlamak için mücadele ediyorum. Ben bir Python program var ... required=Trueher ikisi de …

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.