Kısa cevap:
Pratik yap, pratik yap, pratik yap.
Kısa Değil Cevap:
Yürümeyi nasıl hatırlıyorsun? Nasıl konuşacağını nasıl hatırlıyorsun? Verilen bu beceriler tamamen aynı değildir ve görünüşte ansiklopedik bir bilgi gerektirmezler (en azından yeni başlayanlar için), ama aynı şeyi kullanıyorsunuz: hafıza.
İtiraf etmeme rağmen, yeni başlayanlar için, programlamaya başladığınızda programlamanın imkansız derecede büyük bir konu gibi görünebileceğini, temelleri öğrendikten sonra herhangi bir konuya dönüşebileceğini kabul ediyorum.
Bunu anladığım anda, işleri daha küçük ve daha küçük parçalara bölmeye başladım (benim kendi soyutlama versiyonum). Bu şekilde, hatırlanması zor görünen bir şey daha kolay hale gelir (en azından benimle yapar).
Bir şeyleri yazmak, düşündüğünüzden daha fazla yardımcı olur (Eğitimde çalışmış olmanız, bunun kalıcılığa büyük olumlu etkileri olabileceğini biliyorum). Özellikle de sadece kendi kelimelerin içine koyabilirsen - sadece kopyalamak yerine. Eğer daha önceden bildiğiniz bir şeye eşleştirebilir ya da eşleştirebilirseniz, daha da iyi.
Örneğin: C # 'da, String nesneleri değişmez. Bu, ne zaman programıma bir string nesnesinin içeriğini değiştirmesini söylediğimde, gerçekte olan şey orjinal dizenin imha edildiğidir (teknik olarak çöp toplayıcısının en düşük seviyesine yerleştirilir). Aynen bir sanatçının mermer bir heykel oluştururken hata yaptığı zaman olduğu gibi - değiştirilemez, dolayısıyla imha edilir ve yeni bir tane yaratılır.
Harika bir örnek değil, fakat elde ettiğim şeyin temelini gösteriyor.
Kaliteli belgeler de yardımcı olur. Programming 101 öğretim görevlisimin bir keresinde bana sıkıştığını söylediği bir şey:
Yorumunuzu ayrıntılı yapın. Aptallık noktasına değil, programcı olmayanların anlayabileceği yorumlar yazabilmelisin. Bu şekilde, projedeki başka birinin bunu mükemmel şekilde anlayabileceğini biliyorsunuz. Bir sistemi uygulamak için aylar harcayacağınızı, ancak çalışma yolunda korkunç bir kazaya karıştığınızı hayal edin. İşinize başka biri atanır - özellikle sıkışma zamanına yaklaşıyorsa - ve kodunuzun ne yaptığını çözemezlerse, üretim durur.
İyi kitaplar da mükemmel bir kaynaktır. Farklı bir öğretmen bir keresinde bana bir kitabın indeksinin olmadığını (ve orada olmayan çok sayıda varsa), o zaman satın almaya değmeyeceğini söyledi.
Google harika bir kaynak olabilir, ancak kopyala-yapıştır kodlayıcılarının farkında olun. Sadece açıklama içermeyen bir kod bloğu veren sitelerden uzak durun. Küçük kod bloklarıyla ilgili tüm bir makaleyi okumayı tercih ediyorum, bu şekilde kod bloğunun tam olarak ne anlama geldiğini, bunun nasıl yapıldığını ve programcının neden bu şekilde yazdığını bilerek ayrılıyorsunuz.
umarım yardımcı olur