Alım-satım fırsatlarını kaçırıyorsunuz:
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
Sana sorabilir miyim? Prosedürel programlama ile OOP arasındaki temel fark nedir? Birkaç kelime, farkın özü budur.
Prosedürel yaklaşımın bile yapıların varlığını ima ettiği gerçeğiyle başlayalım, çünkü onlarsız çok zor. En azından bir tür veri organizasyonudur.
OOP, tasarım aşamasında soyut varlıkları ve aralarındaki ilişkileri oldukça rahat bir şekilde vurgulamanıza olanak tanır. Ardından, uygulamanın özellikleriyle gerçekten uğraşmadan bunları tek tek kodlayın.
Evet ve hepsi daha mantıklı görünüyor ve daha iyi okuyor. Ve genellikle daha hızlı çalışır. Ve en önemlisi, daha hızlı uygulanır. Daha fazla kod olabileceği gerçeğine rağmen.
Bu konudaki anlayışınızı ifade etmenizi ve bana kitap gibi bir formülasyon vermemenizi istedim. Hayır hayır demektir. Sana kendimden bahsedeceğim.
Eh, bu yüzden "bir kitap formülasyonu vermedim" :) Hiçbir şey formüle etmedim - nedenlerinin bir açıklamasıyla. Sadece bir sınav sorusunun sorulduğunu varsaydım, cevabını hap sayesinde zaten biliyorsunuz. Böylece ortaya çıktı :) Kişisel deneyim hakkında cevap vermeyi reddetmedim.
Bazen bir fenomeni “hissetmek” ve “bu nasıl olabilir” ve “derin anlamı nedir” gibi felsefi sorular sormadan, sadece bir örnekle nasıl çalıştığını anlamak yeterlidir. Tetris El Kitabındaki söz benim için yeterliydi ve bu örnek daha en baştan için yeterliydi:
Oluşturulan sınıf nesnesine bağlı olarak, türetilmiş bir sınıfın sanal işlevi çağrılır.
Davranışları kaynak verilere bağlı olarak değişen nesnelerin sezgisel olarak oluşturulması - neyin görülmesi gerektiği ve neyin görülmesi gerektiği. Ayrıca - Forumda Tetris ile birlikte tüm dosyanın yanı sıra Dizin, kütüphaneler vb. malzemelerini talep ettim. Ve gidiyoruz. Forumda konuyla ilgili bir sürü soru var.
Sitede bir çok bilgiyi okuduktan sonra hala OOP'nin ne olduğunu anlamadım.
Sadece yaklaşımlarda temel bir farkımız var. Bilimsel bir bakış açısıyla “OOP nedir” sorusunu kendime gerçekten sormadım. - Yeni ve anlaşılmaz terimlerin cephesinin ardındaki özü kaybetmemek için.
Mevcut örnekleri incelemek için aptalca tırmandım.
Sitede bir çok bilgiyi okuduktan sonra hala OOP'nin ne olduğunu anlamadım.
Hatta mevcut bilgileri bile farklı şekillerde okuyoruz :) "OOP nedir" sorusunun yönlendirmeli cevabı şurada bulunabilir: MQL5 Reference / Language Basics / Object-Oriented Programming. Sadece sayfayı oku. Görünüşe göre, bu benim için yeterliydi - üçüncü taraf materyallerde başka tanımlar aramaya gerek kalmadan.
Soruma cevap:
Prosedürel programlama eylemlere (fiiller) odaklanırken, nesne yönelimli programlama nesnelere veya nesnelere (isimler) odaklanır. Bu ana farktır.
teoride ve pratikte:
Prosedürel programlama, ne yapılacağı sorusuna cevap verir (fiiller),
Nesne yönelimli programlama - bir nesneyi (isim) fiiller ve tanımlar (sıfatlar ).
Yani, OOP, birçok konuşma parçasıyla anlamlı cümlelere genelleştirici bir kod eklentisidir.
Sadece fiillerde konuşan, prosedürlerde yaşayabilir.
Kim kodunu anlatmak ister sonra OOP ile yazsın.
not.
Tüm bu programcı teorisyenlerinden ne kadar bıktım, kahretsin.
Yakında "OOP vs Prosedürler" konuları acımasızca öldürülecek.not.
Tüm bu programcı teorisyenlerinden ne kadar bıktım, kahretsin.
Yakında "OOP vs Prosedürler" konuları acımasızca öldürülecek.not.
Tüm bu programcı teorisyenlerinden ne kadar sıkıldınız, kahretsin.
Yakında "OOP vs Prosedürler" konuları acımasızca öldürülecek."İnfaz affedilemez" - Dilediğiniz gibi noktalama işaretleri koymak yerine - Açıklayıcı bir sözlük yazın - Ve "acımasızca öldürecek" kimse olmayacak.
Ve sonra OOP'nin "uygulayıcılarını" okursunuz - bu sadece son derece zeki OOP uzmanlarından oluşan bir "kast"tır.
MQL5, yalnızca tekerlemeler için değil, tüm anlayış ve yetenek seviyeleri için bir dildir - standart gösterge örnekleri ve Uzman Danışmanlar bunun kanıtıdır.
Bir programlama dili bir amaç değil, bir araçtır. Hedefe ulaşmak için PP yeterliyse, öyle olsun. Birisi OOP'yi anlar ve daha kolay anlarsa - öyle olsun. Ve hedefe ulaşmak için - temel bir fark yoktur - özellikle ağırlıklı olarak yazılan düşük kodlu mikroişlevsel göstergelerin ve danışmanların% 90'ında.
papaklass :
Konuyu incelemeye başlarken böyle bir tabirle karşılaştığınızda, kitap boyunca neyin tartışılacağı hemen belli oluyor. Ve bir şekilde her şey yerine oturuyor. Niteliklerin nesnelerin özellikleri olduğunu, uygulama ve yöntemlerin aynı (işlevler) olduğunu ve son olarak sınıfların nesnelerden oluştuğunu anlıyorsunuz. Nesneler yalnızca niteliklere (özellikler) ve yöntemlere (işlevlere) sahip olmakla kalmaz, aynı zamanda birbirleriyle etkileşime girebilirler. Aynı zamanda, onların (nesnelerin) diğer nesnelerin niteliklerini ve yöntemlerini bilmeleri önemli değildir. Böylece, bu tür tuğlalardan birbirleriyle etkileşime giren sınıflar oluşturulur.
Bir programlama dili bir amaç değil, bir araçtır. PP hedefe ulaşmak için yeterliyse, öyle olsun. Birisi OOP'yi anlar ve daha kolay anlarsa - öyle olsun.
Как уже надоели все эти программистские теоретики, блин.
Yakında "OOP vs Prosedürler" konuları acımasızca öldürülecek.Bunun nedeni, insanların her ikisini de kullanmanın avantajlarını, dezavantajlarını, yerlerini ve yollarını bilmemeleridir. Bu kadar basit örneklerin olduğu bir makale: PP bu göreve _1 artılar ve eksiler verecek, OOP bu göreve _1 artılar verecek ve eksileri şöyle; PP bu görev için artılar verecek_2 böyle ve eksiler böyle, OOP bu görev için artılar verecek_2 böyle ve eksiler şöyle... Yeni başlayanlar için OOP ile tanışmak, incelikler ve farklılıklar zor olabilir. Ve hepsi basit problemlerin çözümüne vurgu yaparak ve zorluk budur - mümkün olduğunca basit ve kısa, ancak PP ve OOP ilkelerini kullanarak bir açıklama ve örnekler gereklidir.
O zaman basit uygulama örnekleriyle her şeyin düzenlendiği, bazı konularda sistematize edildiği bir yere göndererek konuyu patlatmak mümkün olabilirdi.
Akıllıca. Kendi kendime karar veririm: Tek para birimi göstergeleri yazılımda yazılır. Çok para birimli bir Uzman Danışman - OOP kullanımıyla (çünkü OOP olmadan hiç görünmeyecekti).
Mümkünse herkesin birlikte ve karşılıklı anlayış içinde yaşamasından yanayım. Mesajlarıma gelince, sadece OOP hakkındaki anlayışımı anlattım. (Anlayış) üç kez yanlış olabilir, ama o "benim". OOP yardımıyla çözmeyi başardığım bazı görevlerin PP çerçevesinde de çözülebileceğini hiç dışlamıyorum. abolk'un ifadesinin hikmeti tam olarak şudur: " Eğer PP amaca ulaşmak için yeterliyse, öyle olsun. Birisi için OOP yapmak daha açık ve kolaysa, öyle olsun ."