Bir programlama kitabından edindiğiniz bilgiyi nasıl en üst düzeye çıkarırsınız? [kapalı]


26

Birisinin bir kitabı okumanın ne kadar süreceği umrumda değil, fakat daha çok insanların bir kitaptan (ya da başka kaynakları tahmin ediyorum) bilgiyi en iyi ve en verimli şekilde beyinlerine nasıl soktuğuyla ilgileniyorum.

Şahsen ben çok geçişli bir yaklaşım benimsem (cevabımdan asıl soruya):

  1. İçeriği gözden geçirin, ilginç bir görünümle bir yere dalın ve her şeyi okuyun ve nihayet güzel diyagramlara ve resimlere göz atın. Bu aşamada pek yer almayacağım, ama bu bana kitabın zihinsel bir görüntüsünü veriyor (en fazla bir saat kadar)
  2. İlk önce kitaptan geç, genellikle ya çok ağır olan ya da tamamen yeni bir şey tanıtan bir kitap için açılış bölümlerini baştan sona okuyacağım. Zaten bildiğim bir konuyu kapsayan kitaplar için önemsiz görünen bitleri atlayacağım veya atlayacağım. Kitabın geri kalanı oldukça hızlı bir şekilde geçeceğim ama o kadar çabuk değil, sadece sayfa çeviriyorum. (yaklaşık bir hafta)
  3. Okuduğum tüm kitaplar bu kadar ileri gitmiyor, fakat yeterince ilginç veya faydalı bir kitap bulursam, o zaman doğru bir şekilde çalışacağım. Kitaptan daha yavaş bir şekilde geçeceğim ve bazı örneklerin bir kısmını veya tamamını yapacağım, kodu deneyeceğim, vb. Kitap gerçekten iyi olmadıkça (kitaba bağlı olarak 1-3 hafta) genellikle tüm bölümleri atlayacağım.
  4. Sonunda, okumayı bitirdiğimde ve diğer kitapları okuduğumda, çoğu zaman çapraz referans vermek, karşılaştırmak, bir şeyleri aramak, göz atmak, vb. Tekrar tekrar içine gireceğim - böylece en sevdiğim kitapların çoğu toplanmıyor kitaplık üzerindeki toz.

Okurken nadiren not alıyorum (bir kod örneği gibi bir şey üzerinde çalışıyorsam kağıda biraz planlama yapabilirim). Ayrıca, ilerlememi düzenlemek için kişisel bir kanban kullanmaya başladığımı da düşündüm, ancak bu tekniği kullanmak konusunda hiçbir zaman başarılı olamadım. Zihin haritaları, fikirden hoşlandığım ama nadiren yaptığım başka bir şey.

İnsanlara başka hangi yöntemleri vardır? Onları ne kadar başarılı buluyorsunuz? Zaman kaybı olduğunu düşündüğünüz yaygın olarak önerilen teknikler var mı?


Ben şahsen yazarı yanlış kanıtlamaya çalışıyorum ya da kırılan köşe vakaları olup olmadığını görüyorum veya anlamıyorum. IMO, öğrendiğiniz ancak yanlış anlama testi yapmadığınız herhangi bir bilgi, iki ucu keskin bir kılıç olabilir.
Umarım yardımcı olur

Yanıtlar:


30

Egzersiz yap.

Eğer yoksa, bazılarını icat et.


3
Ve egzersizleri yaptıktan sonra, kendi kodunuzla kendi yönteminizle tekrar uygulayın. Örnekler gayet iyi ve güzel, ama bir konsepti tam olarak kavramak için gerçek dünyadaki bir uygulama gibisi yok.
Hugo,

+1: Bunu, bu cevabın en üstüne ekleyebilirsiniz: "Alıştırma."
Klaim

Bugünlerde tüm programlama kitaplarının sonuna doğru kısa bir proje çıktı. Bunu yapmak, ilerlemeyi izlemek için herkesin sahip olabileceği en büyük kriterdir.
Venki

6

Günlük programlamanıza bazı teknikleri en kısa zamanda uyguladığınızdan emin olun.

Öğrendiğim şeyleri derhal uygulamazsam, onlara gerçekten ihtiyacım olduğunda onları tekrar ziyaret etmem gerektiğini öğrendim.


1
Kesinlikle. Ayrıca, yalnızca kitapta sunulandan farklı bir bağlamda bir şey uyguladığınızda, ezberlemekten anlayışa gerçekten takas ettiğinize inanıyorum. Maalesef bu her zaman mümkün olmuyor ... çalıştığım geliştirme yöneticisi olmasına rağmen, Prolog ya da böyle bir şey yapmamızın neden böyle bir şey yapmamız gerektiğine dair makul bir neden bulabilirsem kimse beni gerçekten sorgulamayacak. Bazen işleri günlük işlere sokmak uygun değildir. Sanırım kişisel projeler bunun için var, ama o zaman kümülatif öğrenmenin yararlarını kaybedersiniz.
FinnNk

@FinnNk - Kolay olacağını söylemedim;) Şu anda WPF ile karşılaştığım sorun bu. Evde bir proje yapıyorum, ancak harcamak için çok fazla zaman ayırmadığımdan sürekli olarak bildiklerimi gözden geçirmek zorunda kalıyorum.
ChrisF

6

Sizi şaşırtan her şeyi vurgulayın. Gelecekte bulmayı kolaylaştıracak.

Kenar boşluklarını yoğun bir şekilde yazın.

Kitabınızı birine ödünç verirseniz, kişiden aynı kuralları, ideal olarak farklı renklere uymasını isteyin. Bu, kitabınıza değer katar.


2

Bir arkadaşınla üzerinden git. Daha da iyisi, kitabı birbirinize açıklamaya çalıştığınız Çift Programlama gibi bir alıştırmayı okumayı düşünün. (Ve elbette yukarıda söylendiği gibi egzersizleri yapın)


1

uygulamak

Referans olarak sadece algoritma veya tekniğin tanımına ilişkin hafızanızı kullanarak, okuduğunuz her yeni algoritmayı veya tekniği kendi başınıza uygulayın.


1

Dikkat eksikliği nedeniyle, geleneksel, baştan sona bir yaklaşımla öğrenirken odaklanmayı zor buluyorum. Bölümün sonuna atlayıp doğrudan alıştırmalara gidiyorum ve sonra problemleri çözmek için kitap ve internet kombinasyonunu kullanıyorum.

Kendimi kitap malzemesini “çalışmak zorunda olduğum için çünkü” çalışmak yerine sonuna kadar araç olarak kullanmak zorunda olduğum bir pozisyona soktuğumda, kavramları bulması ve uygulaması çok daha kolay hale geldi.

Odak sorunlarım aynı zamanda doğrudan kod örneklerini yazmadığım ve bunun yerine kendi örneklerimi düşündüğüm ve kitaptaki kodu bunları anlamama yardımcı olmak için kullandığım anlamına geliyor. Öğrenme sürecinde yaratıcı olmak, onunla eğlenmemi sağlar ve ne yarattığımın benzersizliği ne yaptığımı hatırlamayı kolaylaştırır.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.