8 yıldır profesyonel olarak programlama yapıyorum ve 12 yaşımdan beri hobi olarak.
Matematik gerekli değildir, mantıktır. Matematik korkunç derecede faydalıdır, bunun gerekli olmadığını söylemek, bir adamı öldürmek için silah gerekli değildir, bıçak kullanabilirsiniz demek gibidir. Doğru, ama bu silah işi çok daha kolaylaştırıyor.
Zaten karşılamanız gereken birkaç çıplak minimum var. Temel cebirsel ifadeleri ve gösterimi ve yaygın bilgisayar eşdeğerlerini bilmeniz gerekir. Örneğin, üstel ifadenin ne olduğunu bilmeniz gerekir (3'ün 3'ü 27'dir) ve ortak bilgisayar ifadesi 3 ^ 3'tür. Cebir için ortak gösterimler diller arasında değişir, ancak çoğu biraz birleşik bir metodoloji kullanır. Diğerleri (size bakarak LISP) istemez. Ayrıca işlem sırasını da bilmeniz gerekir.
Algoritmik düşünceyi anlamanız gerekir. Önce bu, sonra bu, bu hesaplamada kullanılan bunu üretir. Muhtemelen bunu anlıyorsunuz ya da anlamıyorsunuz ve anlamıyorsanız atlamak oldukça zor bir engel; Bunun gerçekten öğrenebileceğiniz bir şey olmadığını ve "elde ettiğiniz" bir şey olduğunu buldum. Tersine, bazı insanlar sanatı 'anlamaz'. Ressam olmamalılar. Ayrıca, Bilgisayar Bilimleri müfredatında bunun neden işe yaramadığını anlayamayan öğrenciler oldu: x = z + w; z = 3; y = 5; Eklemeyi anlamadıkları için değil, kesin ifade gerekliliğini anlamadıkları için. Anlarlarsa, bilgisayar da anlamalı, değil mi? Yukarıdaki üç satırda neyin yanlış olduğunu göremiyorsanız, o zaman programcı olmayın.
Son olarak, programlama alanınızdaki matematiğin ne olduğunu bilmeniz gerekir. Muhasebe yazılımı temel cebirde durabilir. Fiziği programlıyorsanız, 3 boyutlu geometride (Öklid) fiziği (gevşek bir şekilde) ve matematiği bilmeniz gerekir. Mimari yazılım programlıyorsanız, trigonometri bilmeniz gerekir.
Bu matematikten daha ileri gider; Hangi alan adı için programlama yapıyorsanız yapın, temelleri sağlam bir şekilde anlamanız gerekir. Dil analiz yazılımı programlıyorsanız, olasılık, istatistik, gramer teorisi (birden çok dil) vb. Bilmeniz gerekir.
Çoğu zaman, belirli alanlar ilgisiz olduğunu düşündüğünüz bilgiye ihtiyaç duyar veya bunlardan yararlanabilir. Örneğin, ses yazılımı programlıyorsanız, dalga biçimleriyle başa çıkmak için aslında trigonometri bilmeniz gerekir.
Büyüklük de işleri değiştirir. 1000 maddelik bir finansal veri kümesini sıralıyorsanız, bu büyük bir şey değildir. Ancak 10 milyon kayıt olsaydı, vektör matematiğini gerçekten bilmekten ve ikili düzeyde sıralama konusunda derin bir anlayışa sahip olmaktan büyük fayda görürdünüz (bir sistem alfabetik olarak nasıl sıralanır? 'A'nın' b'den küçük olduğunu nasıl bilir? '?)
Bunu bir programcı olarak göreceksiniz, genel bilgi tabanınız patlayacak çünkü her proje doğrudan programlama alanı dışında daha fazla öğrenmeyi gerektirecek. Kendi kendine öğrenme konusunda titiz veya tembelseniz ve haftada 10 saatten fazla temelde 'ev ödevi' yapmaktan hoşlanmıyorsanız, programcı olmayın.
Düşünce alıştırmalarını seviyorsanız, öğrenmeyi seviyorsanız, hesap makinesi olmadan matematik gibi soyut şeyler hakkında düşünebiliyorsanız veya eskiz defteri olmadan tasarım yapabiliyorsanız, yaşamda geniş zevkleriniz ve hobileriniz varsa, özeleştiri yapıyorsanız ve bir kenara atabilirseniz ' favori 'fikirler, eğer bir şeyleri mükemmelleştirmeyi seviyorsanız, o zaman bir programcı olun. Bu kararı matematiğe değil, mantıklı düşünme ve öğrenme yeteneğine dayandırın. Önemli olan bunlar; matematik sadece yan üründür.