Höyükte OOP hakkında konuşun - sayfa 11

 
Andrei :

Evet, OOP ile yapılan hareketlerin sayısı prensipte daha az olamaz, çünkü tüm bu arayüzler genellikle mantığın kendisini yazma maliyetlerini aşan ek genel masraflardır. Ve bu, herhangi bir işlevin zaten bir arayüze sahip olmasına rağmen, yani, aslında anlamsız olan bir bahçeyi daha çitle çevirmeniz önerilir.

Aynı zamanda, hem arayüzdeki hem de işlevdeki koddaki herhangi bir değişiklik, biri diğerine bağlı olduğu için çok daha karmaşık hale gelir, yani, olası hata sayısında ve emek yoğunluğunda en azından ikinci dereceden bir artışa sahibiz. ... Açık görünüyor.

Terminal, kodunuzla ilgili bir sınıftır. Sizden gizlenen ve yalnızca genel yöntemler sağlanan terminal kodundaki bir şeyi ne sıklıkla değiştirmeniz gerekir - programlarınızı uygulamak için işlevler.
 
Andrei :

Evet, OOP ile yapılan hareketlerin sayısı prensipte daha az olamaz, çünkü tüm bu arayüzler genellikle mantığın kendisini yazma maliyetlerini aşan ek genel masraflardır. Ve bu, herhangi bir işlevin zaten bir arayüze sahip olmasına rağmen, yani, aslında anlamsız olan bir bahçeyi daha çitle çevirmeniz önerilir.

Aynı zamanda, hem arayüzdeki hem de işlevdeki koddaki herhangi bir değişiklik, biri diğerine bağlı olduğu için çok daha karmaşık hale gelir, yani, olası hata sayısında ve emek yoğunluğunda en azından ikinci dereceden bir artışa sahibiz. ... Açık görünüyor.

Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum

Höyükte OOP hakkında konuşun

fxsaber , 2018.01.14 11:35

Programlamanın kendisi özel bir üretim durumudur. OOP yaklaşımı, herhangi bir şey üretmeye yönelik ilkeli bir yaklaşımdır. Bu nedenle, programlama hakkında konuşmak çok dar. OOP, programlamada görünmeden ÖNCE başarıyla uygulandı.

Endüstrinin oluşum tarihi, boru hattının bir sonraki aşaması olarak nesneye dayalı İMALAT'a geldi. OO programlama hakkında konuşmak dar bir bakış açısıdır. Botların OO-terziliği hakkında nasıl konuşulur. Çok özel bir durum olarak, yazılımın oluşturulması da dahil olmak üzere, herhangi bir üretimin organizasyonuna algoritmik yaklaşımlardan bahsediyoruz.


OOP üretimleri rekabette konvansiyonel boru hatlarına göre üstünlüğünü kanıtlamıştır. Şimdi çalışması gerektiğinde kısa vadeli üretim planlaması var. Ve uzun vadeli bir tane var - şu anda çok fazla "gereksiz" atıldığında, ancak bu temel basit bir üretim ölçeklendirmesine katkıda bulunuyor. Tekrar ediyorum, bu programlama ile ilgili değil, üretim yaratmaya yönelik genel yaklaşımlarla ilgili.


OOP yaklaşımları, modern iktidar kurumlarında bile izlenebilir.

 
Artyom Trishkin :
Terminal, kodunuzla ilgili bir sınıftır. Terminal kodundaki bir şeyi ne sıklıkla değiştirmeniz gerekir?

Örnek yanlış. Programımız içindeki arayüzlerden bahsediyoruz...

 
fxsaber :

Endüstrinin oluşum tarihi, boru hattının bir sonraki aşaması olarak nesneye dayalı İMALAT'a geldi.

OO programlamanın ayrıca kendi veri işleme boru hatları vardır ve OOP, yalnızca her bir boru hattının ve tüm üretimin ek yükünü artıran başka bir soyutlama düzeyi sunar.

 
Andrei :

OO programlama ayrıca kendi veri işleme boru hatlarına sahiptir ve OOP, yalnızca her bir boru hattının ve tüm üretimin ek yükünü artıran başka bir soyutlama düzeyi sunar.

Ne yazık ki aptalsın. Çevrenizdeki her şeyde (sadece değil) büyük bir rol oynayan bu tarihin aşamalarından biri olarak size endüstri tarihi ve OOP hakkında bilgi veriliyor. Ve sen sürekli programlamanın özel bir durumundan bahsediyorsun.

İnsani gelişme tarihindeki cehalet. Doğrudan torunlarınızın hafızasında hiçbir iz bırakmayın.

 
fxsaber :

Çevrenizdeki her şeyde (sadece değil) büyük bir rol oynayan bu tarihin aşamalarından biri olarak size endüstri tarihi ve OOP hakkında bilgi veriliyor.

OOP'yi endüstri tarihine sürüklemek için naif girişiminiz eğlenceli ama ne yazık ki cahil.

 
Andrei :

Örnek yanlış. Programımız içindeki arayüzlerden bahsediyoruz...

Neden "yanlış"?

Programın bilgisayarda çalışan TÜM yazılımlardan farkı nedir?

Sonuçta bu, herhangi bir kullanıcı programında olduğu gibi aynı talimat ve veri dizisi dizisidir. Neden yanlış - nedir, yazılımın bir bölümünün yerleşik değişim protokolleri dışında yazılımın başka bir bölümüne erişimi olmayan ne var?


Ciddi bir şekilde programlama yaparsanız sorun değil - er ya da geç erişim haklarını ayırt etme ihtiyacına kendiniz geleceksiniz.

Ben de gerçek moddan korumalı moda geçiş günlerinde, herhangi bir fiziksel bellek adresinin benim için mevcut olmamasından gerçekten hoşlanmadım. Korunan sistem alanından benimkine veri kopyalayan DMA denetleyicisiyle bile uğraştım (orada neyin kopyalandığını anlamak çok zor olsa da, yapmadım). Gençken öfkeliydim - nasıl oluyor, doğrudan erişimim yok - bu neredeyse haklarımın ihlali ... Ve programda bir şeyin benim için erişilemez olmasına izin vermek ???

Hiçbir şey, deneyim kazandıkça, erişim haklarının farklılaşmasının programcının kendisi için bir nimet olduğuna defalarca ikna oldum, çünkü bu beni birçok kez yazılı modüllere hatalar eklemekten kurtardı. Ders alıyorsun, kullanmak istiyorsun ama bazı verilere erişimi yok... Çok kızıyorsun ama nasıl oluyor, anlamaya başlamalısın... ve oops... İşte, ortaya çıktı. , dikkate alınması gereken anlar var ve verilere doğrudan erişilemiyor, bunun için "dolambaçlı yollar" var, sistemin mimarisi öyle ki, doğrudan iletişim kurarak - oldukça geçersiz veriler alabilirim. Her ne kadar yapabilirim ve geçerli olsa da - hepsi zamana bağlı. Ve böyle bir hatanın hesaplanması çok zor olacaktır.

Burada en basit soru önbellekteki verilere erişmektir. Önbelleğe alınmış verilere ihtiyacınız varsa ve bu verilere doğrudan erişiyorsanız, doğru verileri alacağınızdan emin misiniz? Hakların sınırlandırılması olmayan prosedürel bir yaklaşımda - ne zaman erişebileceğinizi, ne zaman erişemeyeceğinizi, ne zaman verinin geçerli olduğunu, ne zaman olmadığını bulmanız gerekir ... OOP yaklaşımında - her şey çok basittir, sadece erişiminiz yoktur. önbellek verileri, yalnızca gerekli verileri size döndürecek, geçerli olup olmadıklarını kontrol edecek ve geçersizlerse geçerli olanları yükleyecek olan bir işlevi çağırabilirsiniz . "Daha zor" mu??? Şimdi bu önbelleği yazdıktan bir yıl sonra kullandığınızı hayal edin. Önbelleği güncelleme ve geçerliliği belirleme ilkelerini tamamen unuttuğumda. Bir OOP yaklaşımında, umursamıyorsunuz. Sınıf işlevi size her şeyi sağlayacaktır. Ve işlevsel bir yaklaşımda, önbelleğin ne zaman ve nasıl güncellendiğini, içindeki verilerin ne zaman geçerli olduğunu ve ne zaman olmadığını ayrıntılı olarak hatırlamanız gerekecektir.

 
Andrei :

Örnek yanlış. Programımız içindeki arayüzlerden bahsediyoruz...

Daha doğru olacak hiçbir yer yok - bu bir hiyerarşi.
OOP yaklaşımındaki programınız , sınıfın genel yöntemlerini görür ve bileşenlerini düşünmeden bunları kullanırsınız. Dilin standart özelliklerini kullanmanın yanı sıra. Programı değiştirdiğinizde sınıfı değiştirmenize gerek yoktur. Tıpkı prosedürel bir yaklaşımla standart dil özelliklerini değiştirmenize gerek olmadığı gibi.
 
Artyom Trishkin :
Terminal, kodunuzla ilgili bir sınıftır. Sizden gizlenen ve yalnızca genel yöntemler sağlanan terminal kodundaki bir şeyi ne sıklıkla değiştirmeniz gerekir - programlarınızı uygulamak için işlevler.

+++)))

 
Artyom Trishkin :
Terminal, kodunuzla ilgili bir sınıftır. Sizden gizlenen ve yalnızca genel yöntemler sağlanan terminal kodundaki bir şeyi ne sıklıkla değiştirmeniz gerekir - programlarınızı uygulamak için işlevler.

Bu ihtiyaç düzenli olarak ortaya çıkar. Sadece geliştiricilerin bunu yapması arzu edilir.

Basit bir örnek. Bazı nedenlerden dolayı geliştiriciler, gösterge çizelgeleri için yatay bir koordinat ızgarası sağlamanın gerekli olduğunu düşünmediler. Ve tabii bunun için uygun yöntemleri de sunmadılar.)

Neden: