OOP vs prosedürel programlama - sayfa 3

 
George Merts :

Karşılaştırma kriteri?

OOP'nin bakım kolaylığı ve bitmiş kodun değiştirilmesi için gerekli olduğunu savunuyorum. Anladığım kadarıyla ("siz" ile başlayalım), kodunuzda daha zor olmadığını (ve belki daha da kolay olduğunu) iddia ediyorsunuz. Nasıl kıyaslayacağız?

"Her şeyi hatırlıyorsun" gerçeğiyle ilgili ifadelerinizden biri zaten eşitsizliği ortaya koyuyor. Diyelim ki alım satım işlemcim 39 dosya ve 270 kb koddan oluşuyor. Geliştiriciler ticaret sunucusuyla etkileşim protokollerinde değişiklik yaparsa - korkarım, yapılandırma ve OOP sınıf sistemi olmadan, bu değişiklikten etkilenmesi gereken tüm yerleri bulmam ve değiştirmem çok zor olacak. ve böylece, ilk olarak, MT4'te çalışan blokları etkilemez ve ikinci olarak, yazılı TS'ler bu değişikliği "hissetmez".

Tüm OOP sistemi, her şeyi hatırlamadığım için hataları tam olarak ortaya koyma yeteneğimi kısıtlıyor. Ve senin gibi her şeyi hatırlasaydım, tüm bu sanal arayüzleri çitle çevirmek muhtemelen işe yaramaz olurdu ...

Sen ya da sen fark etmezsin...

Tüm tartışmamız belirli bir soruna gitmiyor. Bu nedenle, her şey boş "gevezelik" kalır. Bu sizin kodunuzsa, 270 kb kod hiç de fazla değil. Onu hatırlıyor ve tanıyorsun. Kodunuzu iyi bilmiyorsanız, doğal olarak, onu değiştirmekte zorluklar olacaktır. Başka bir platforma geçmek benim için hiç sorun değil çünkü tam olarak OOP kullanmıyorum ve tüm kodlarımı çok iyi biliyorum. Çok daha fazla kodum olmasına rağmen. Lütfen kodu MQL5'te yeniden yazmak istediğinizde karşılaştığınız belirli zorlukları tanımlayın.

 
Alexey Volchanskiy :

Aslında WL ölüyor, bir buçuk yıldır yeni sürüm yok. Ve wiki'nin dediği gibi

Testler 1 çekirdekte gerçekleştirilir , bu da birçok çekirdeğe sahip modern bilgisayarlarda süreci uzatır.

Evet, bence bu adamlar paranoyak şüpheleri ve korsanlığa karşı tavizsiz mücadeleleri yüzünden hayal kırıklığına uğradılar.

"Rusya sakinleri için" kampanyalarına göre hatırlıyorum - WLD'yi kendim indirdim, verilerimi oraya yazmak zorunda kaldım. Eh, soyadımı yazdım... Bu paranoyaklar bana, "Çirkin bir yüzle çıkmadın" diye anahtarı vermeyeceğiz dediler. Mesela Rus soyadları farklı ama kulaklarımıza erişte asmayın ... Baba tarafından büyük dedemin sırasıyla Riga'da doğduğunu ve soyadının “dışarıda” olduğunu açıklayarak Rusça ayrı bir mektup yazmak zorunda kaldılar. line”, ben de aslen Rus burada doğdum... Özür dilediler, anahtarı gönderdiler...

Ancak, üç yıl önce toplulukları, bence, MT topluluğundan daha gelişmişti. Doğru, şimdi, gördüğüm kadarıyla, MT kendisi için giderek daha fazla "turtanın bir parçasını" kazanıyor.

 
Реter Konow :

Sen ya da sen fark etmezsin...

Tüm tartışmamız belirli bir soruna gitmiyor. Bu nedenle, her şey boş "gevezelik" kalır. Bu sizin kodunuzsa, 270 kb kod hiç de fazla değil. Onu hatırlıyor ve tanıyorsun. Kodunuzu iyi bilmiyorsanız, doğal olarak, onu değiştirmekte zorluklar olacaktır. Başka bir platforma geçmek benim için hiç sorun değil çünkü tam olarak OOP kullanmıyorum ve tüm kodlarımı çok iyi biliyorum. Çok daha fazla kodum olmasına rağmen. Lütfen kodu MQL5'te yeniden yazmak istediğinizde karşılaştığınız belirli zorlukları tanımlayın.

Bu benim kodum. Ama garip bir şekilde, onu çok kötü hatırlıyorum. Konunun daha üstünde - Kodumu gönderdim, kaç yorum olduğunu görebilirsiniz ve bunun yeterli olmadığına sık sık rastladım, zaman zaman anlamak için sökülmesi uzun süren yerlere rastlıyorum işin incelikleri. Aynı zamanda, bu inceliklerin yorumlarda önceden açıklanması güzel.

"Ortaya çıkan zorluklara" gelince - anlamadım. "MQL4 veya MQL5 altında kodum" yok - kodum aynı, her iki platform için de tamamen aynı (tek fark, uzun zaman önce yazılmış ve nadiren değişen platforma özgü sınıfların içindedir). Yazdığım her şey hem MT4 hem de MT5 için anında çalışıyor

 
George Merts :

Bu benim kodum. Ama garip bir şekilde, onu çok kötü hatırlıyorum. Konunun daha üstünde - Kodumu gönderdim, kaç yorum olduğunu görebilirsiniz ve bunun yeterli olmadığına sık sık rastladım, zaman zaman anlamak için sökülmesi uzun süren yerlere rastlıyorum işin incelikleri. Aynı zamanda, bu inceliklerin yorumlarda önceden açıklanması güzel.

"Ortaya çıkan zorluklara" gelince - anlamadım. "MQL4 veya MQL5 altında kodum" yok - kodum aynı, her iki platform için de tamamen aynı (tek fark, uzun zaman önce yazılmış ve nadiren değişen platforma özgü sınıfların içindedir). Yazdığım her şey hem MT4 hem de MT5 için anında çalışıyor

Kafam karıştı. Yukarıda, görevin kodun her iki terminalde de çalışmasını sağlamak olduğunu söylediniz.
 
George Merts :

Evet, bence bu adamlar paranoyak şüpheleri ve korsanlığa karşı tavizsiz mücadeleleri yüzünden hayal kırıklığına uğradılar.

"Rusya sakinleri için" eylemlerine göre hatırlıyorum - WLD'yi kendim indirdim, verilerimi oraya yazmak zorunda kaldım. Eh, soyadımı yazdım... Bu paranoyaklar bana, "Çirkin bir yüzle çıkmadın" diye anahtarı vermeyeceğiz dediler. Mesela Rus soyadları farklı ama kulaklarımıza erişte asmayın ... Baba tarafından büyük büyükbabamın sırasıyla Riga'da doğduğunu ve soyadının “dışarıda” olduğunu açıklayan Rusça ayrı bir mektup yazmak zorunda kaldılar. line”, ben de aslen Rus burada doğdum... Özür dilediler, anahtarı gönderdiler...

Ancak, üç yıl önce toplulukları, bence, MT topluluğundan daha gelişmişti. Doğru, şimdi, gördüğüm kadarıyla, MT kendisi için giderek daha fazla "turtanın bir parçasını" kazanıyor.

Evet, gerçekten harika
 
Реter Konow :
Kafam karıştı. Yukarıda, görevin kodun her iki terminalde de çalışmasını sağlamak olduğunu söylediniz.
İşte böyle yapıldı ve şimdi kod aynı.
 
George Merts :

Bu benim kodum. Ama garip bir şekilde, onu çok kötü hatırlıyorum. Konunun daha üstünde - Kodumu gönderdim, kaç yorum olduğunu görebilirsiniz ve bunun yeterli olmadığına sık sık rastladım, zaman zaman anlamak için sökülmesi uzun süren yerlere rastlıyorum işin incelikleri. Aynı zamanda, bu inceliklerin yorumlarda önceden açıklanması güzel.

"Ortaya çıkan zorluklara" gelince - anlamadım. "MQL4 veya MQL5 altında kodum" yok - kodum aynı, her iki platform için de tamamen aynı (tek fark, uzun zaman önce yazılmış ve nadiren değişen platforma özgü sınıfların içindedir). Yazdığım her şey hem MT4 hem de MT5 için anında çalışıyor


100500'de anlaşın! Ben kendim sık sık programlarımı okurum ve bazen bir stupora girerim, burada ne yapmak istedim? Sanırım anlıyorum ama zaman azalıyor. Müşteriler için genel olarak neredeyse her satıra yorum yapıyorum.

Bir de her programdan video formatında kod incelemesi (kod incelemesi) yapmasını isteyen bir kişi var. Bazı yorumları kaçırıyor.

 
George Merts :
İşte böyle yapıldı ve şimdi kod aynı.
George Merts'in fotoğrafı.

Eee... İşin özünü pek anlamadım.

Görev, aracı terminalden ayırmaktı. Değişmeyen kod - her iki platformda da derlendi. En önemli görev, yalnızca ticaret sunucusuyla çalışmak için sınıflar yazarak, tüm yazılı TS'leri WealhtLab Developer'a aktarmayı mümkün kılmaktır.

//------------------------------------------------ --


Çözümlerini birkaç kritere göre karşılaştırmak ve her birinin etkinliği hakkında bir sonuca varmak için mevcut görevi sordum. Konuşmayı pratik kısımdan uzaklaştırıyorsunuz. OOP kullanımının etkinliğini tartışırken, bunu pratikte kanıtlayabilmeniz gerekir. Amacımı kanıtlamaya çalışmaya hazırım.

Peki, mevcut görev nedir? umarım onu hatırlarsın

 
Alexey Volchanskiy :

100500'de anlaşın! Ben kendim sık sık programlarımı okurum ve bazen bir stupora girerim, burada ne yapmak istedim? Sanırım anlıyorum ama zaman azalıyor. Müşteriler için genel olarak neredeyse her satıra yorum yapıyorum.

Bir de her programdan video formatında kod incelemesi (kod incelemesi) yapmasını isteyen bir kişi var. Nedense yorumlardan yoksun.

Zaten bir klinik.

Genel olarak, insanlar kodlarını hatırlamıyorsa OOP ne kadar etkilidir?))

 
Реter Konow :

Zaten bir klinik.

Genel olarak, insanlar kodlarını hatırlamıyorsa OOP ne kadar etkilidir?))


Anladığım kadarıyla programcı değilsin? O zaman 2017.07.05 14:55 GMT 00'de nerede olduğunuzu, kiminle konuştuğunuzu ve ne hakkında konuştuğunuzu hatırlayın))

Neden: