توضیحاتی در مورد کتاب The Programmer's Brain: What Every Programmer Needs to Know about Cognition, Version 3
نام کتاب : The Programmer's Brain: What Every Programmer Needs to Know about Cognition, Version 3
عنوان ترجمه شده به فارسی : مغز برنامه نویس: آنچه هر برنامه نویسی باید درباره شناخت بداند، نسخه 3
سری : Manning Early Access Program
نویسندگان : Felienne Hermans
ناشر : Manning Publications
سال نشر : 2020
تعداد صفحات : 91
زبان کتاب : English
فرمت کتاب : pdf
حجم کتاب : 5 مگابایت
بعد از تکمیل فرایند پرداخت لینک دانلود کتاب ارائه خواهد شد. درصورت ثبت نام و ورود به حساب کاربری خود قادر خواهید بود لیست کتاب های خریداری شده را مشاهده فرمایید.
فهرست مطالب :
The Programmer\'s Brain MEAP V03
Copyright
Welcome
Contents
Chapter 1: Decoding your confusion while coding
1.1 Different kinds of confusion in code
1.1.1 Forms of confusion
1.2 Different cognitive processes that affect coding
1.2.1 Long-term memory and programming
Another look at the APL Program
1.2.2 Short-term memory and programming
Another look at the Java Program
1.2.3 Working memory and programming
BASIC Program: Working memory
1.3 Cognitive processes in collaboration
1.3.1 Cognitive processes in other programming-related tasks
EXERCISE 1.1
1.4 Summary
Chapter 2: Speed reading for code
2.1 Quickly reading code
2.1.1 What just happened in your brain?
2.1.2 Reexamine your reproduction
2.1.3 A second attempt at remembering Java
2.1.4 Reexamining your second attempt at reproducing code
2.2 Why is reading unfamiliar code hard?
2.3 Remembering more code by using long-term memory
2.3.1 Experts’ memories differ from beginners’
EXERCISE 2.1
EXERCISE 2.2
EXERCISE 2.3
2.3.2 Chunking in code
2.3.3 Expert programmers can remember code better than beginners
2.4 You see more code than you can read
2.4.1 Iconic memory
2.4.2 Iconic memory and code
EXERCISE 2.4
2.5 It ain’t what you remember, it’s the way you remember it
2.5.1 How to write “chunkable” code
Write comments
Leave beacons
EXERCISE 2.5
2.5.2 Practice chunking
EXERCISE 2.6
2.6 Summary
Chapter 3: How to learn programming syntax more quickly
3.1 Tips for remembering syntax
3.1.1 Flashcards
EXERCISE 3.1
When to use the flashcards
Expanding the set of flashcards
Thinning the set of flashcards
3.2 When to study to not forget things
3.2.1 Why do we forget memories?
Hierarchy versus networks
The forgetting curve
3.2.2 Spaced repetition
3.3 How to remember syntax longer
3.3.1 Two forms of remembering information
Storage strength
retrieval strength
3.3.2 Just seeing information is not enough
3.3.3 Remembering information strengthens memories
3.4 Strengthen memories by actively thinking
3.4.1 Schemata
3.4.2 Elaboration
3.4.3 Using elaboration to learn new programming concepts
EXERCISE 3.2
3.5 Summary
Chapter 4: How to read complex code
4.1 Reading complex code
4.1.1 What’s the difference between working memory and short-term memory?
4.2 What happens in the working memory when you read code?
4.2.1 Intrinsic cognitive load when reading code
4.2.2 Extraneous cognitive load
4.3 Refactoring code to reduce cognitive load
4.3.1 Inlining code
4.3.2 Replacing unfamiliar language constructs
4.3.3 You want to consider cognitive load when writing code, too
4.4 Marking dependencies
4.5 Using a state table
4.5.1 Combining state tables and dependency graphs
4.6 Summary
Chapter 5: Reaching a deeper understanding of code
5.1 Roles of variables
5.1.1 Different variables do different things
5.1.2 Eleven roles to cover almost all variables
5.1.3 Roles and paradigms
5.1.4 Benefits of roles
5.1.5 Practical tips for working with roles of variables
5.1.6 Hungarian notation
5.2 Gaining a deeper knowledge of programs
5.2.1 Text knowledge versus plan knowledge
5.2.2 Different stages of program understanding
5.2.3 Applying the stages for deep understanding to code
5.3 Reading text is similar to reading code
5.3.1 What happens in the brain when we read code?
5.3.2 Brodmann areas
5.3.3 Evidence from fMRI about what code does in the brain
5.3.4 If you can learn French, you can learn Python!
5.3.5 How do people read code?
5.4 Text comprehension strategies applied to code
5.4.1 Activating prior knowledge
5.4.2 Monitoring
5.4.3 Determining the importance of different lines of code
5.4.4 Inferring the meaning of variable names
5.4.5 Visualizing
5.4.6 Questioning
5.4.7 Summarizing code
5.5 Summary