Sadece programlama pratiğinin mantıksal programlama becerinizi geliştirmenize yardımcı olacağını mı düşünüyorsunuz yoksa beyninizi bulmaca oyunlarıyla mı eğitiyorsunuz, evrenin nasıl çalıştığını, enstrüman çalmayı vb.
Programlamaya daha fazla zaman ayırarak, mantıksal programlama becerilerini daha hızlı elde edecek misiniz?
Bence tam zamanlı programlama benim mantıksal becerilerimi yeterince uyguluyor ve işten sonra dinlenmeye ihtiyaçları var. Müzik aletleri çalarak motoric becerileri uygulamak gibi başka bir şey yapmak beyne iyidir.
Evet programlama yardımcı olacaktır, ancak her türlü mantık/problem çözme programlama becerilerinizi geliştirmenize yardımcı olacaktır. Örneğin, mantıkta resmi bir ders almak veya Sudoku bulmacalarını çözmek. Denemek için programlama bulmacaları ile yeni web siteleri var, yeni başlayanlar için Euler projesi arayın
"Mantıksal programlama becerilerinizi" daha derinlemesine geliştirmek istiyorsanız, mantık üzerine en az bir veya iki dersinizin olması önemlidir. Stephen Cook'un ders notları gibi bir şey, öğrenme önerisi ve birinci dereceden mantık başlatmak için güzel. Ders Kitabı Bilgisayar Bilimlerinde Mantık: Sistemler hakkında Modelleme ve Akıl Yürütme Huth ve Ryan da birçok kişi tarafından sevilir.
Ayrıca bir algoritmik düşünme biçimi geliştirmek de son derece önemlidir. Cook bana algoritmik düşünme yeteneğinin bir bilgisayar bilimcisi ile bir matematikçi arasındaki temel fark olduğunu söyledi. Algoritmalar hakkında birçok iyi kitap var. Sadece size en uygun olanı seçmelisiniz!
@Joonas'ın dediği gibi, başka aktiviteler yapmak zorunda olduğunuzda daha iyi konsantre olmanıza yardımcı olur ...
Her sabah koşuyorum ve elimden geldiğince kitap okuyorum
Daha ciddi, sanırım deneyebilirsiniz:
Ama çoğunlukla, bence:
NIST Algoritmalar ve Veri Yapıları Sözlüğü sizi bir süre meşgul etmelidir ...
Sonra bir şeyleri çözmeyi içeren bir evcil hayvan projesi bulun.
Genel problem çözme, ister bulmaca olsun, ister seyredin House, gizemli bir romanı okuyun ya da arabasına bir komşuya yardım edin, bunlardan herhangi biri çözümlerin nasıl oluşturulacağı konusunda fikir edinmede yardımcı olabilir. Açgözlü olmak, bölmek ve fethetmek, dinamik programlama ve veri yapıları oluşturmak gibi fikirler, muhtemelen bu türden düzinelerce fikir var. Ne kadar iyi çalıştıkları elbette başka bir hikaye ama bazen sadece bu tür fikirleri almak büyük bir zorluk olabilir.
Programlama ve yazılım geliştirme hakkında bilgi edinerek (resmi olarak değil), daha küçük ve daha küçük parçalara ilişkin sorunları daha etkili bir şekilde çözmeyi öğrendim.
Yazılım geliştirme alanının dışında kullanarak bu beceriyi geliştirebileceğinizi düşünüyorum; günlük yaşamda karşılaştığınız sorunları yıkmaya çalışarak. Bu tekniği kullanarak yeni bir şeyin (motor veya elektronik parçası gibi) nasıl çalıştığını anlamaya çalışmak özellikle iyi.