filmov
tv
I made a Nerdle 'Solver' with as many Software Engineering concepts as I could!
Показать описание
Nerdle is a game that really piqued my programmer interest when I first saw it, because it felt like such a great problem to attempt to programmatically solve. I decided to apply a bunch of software engineering techniques along the way (mostly automated testing), and here's the result!
= CONTENTS PAGE =
0:00 Introduction
0:43 What is Nerdle?
1:41 tl;dw: The Final Result
3:13 What's in a Solution? - The method
→ 3:46 Optimizations for the Algorithm
4:43 Core Software Engineering Considerations
→ 5:38 Modularization, Low Coupling, High Cohesion
→ 6:25 Model-View-Controller / Separation of Concerns
→ 7:42 Top-Down Approach / Function Stubs
→ 8:52 Revision Control System (Git)
→ 10:20 Automated Testing
11:22 The Development Process
→ 11:54 Black Box Testing / Glass Box Testing
→ 13:30 Integration Testing
→ 14:27 Working on the View
→ 15:00 Exploratory Testing / Regressions
→ 15:54 Purpose of Testing - Managing Expectations & A Weird Bug!
17:14 Second Phase of Development
→ 17:46 Refactoring
→ 18:06 Branching
→ 18:41 Feature: Shortcut Solver
→ 19:24 Feature: Priority System (Heuristics)
→ 20:08 Other Failed Experiments
20:29 Conclusion
-----
-----
Disclaimer: Please note that any information is provided on this channel in good faith, but I cannot guarantee 100% accuracy / correctness on all content. Contributors to this channel are not to be held responsible for any possible outcomes from your use of the information.
= CONTENTS PAGE =
0:00 Introduction
0:43 What is Nerdle?
1:41 tl;dw: The Final Result
3:13 What's in a Solution? - The method
→ 3:46 Optimizations for the Algorithm
4:43 Core Software Engineering Considerations
→ 5:38 Modularization, Low Coupling, High Cohesion
→ 6:25 Model-View-Controller / Separation of Concerns
→ 7:42 Top-Down Approach / Function Stubs
→ 8:52 Revision Control System (Git)
→ 10:20 Automated Testing
11:22 The Development Process
→ 11:54 Black Box Testing / Glass Box Testing
→ 13:30 Integration Testing
→ 14:27 Working on the View
→ 15:00 Exploratory Testing / Regressions
→ 15:54 Purpose of Testing - Managing Expectations & A Weird Bug!
17:14 Second Phase of Development
→ 17:46 Refactoring
→ 18:06 Branching
→ 18:41 Feature: Shortcut Solver
→ 19:24 Feature: Priority System (Heuristics)
→ 20:08 Other Failed Experiments
20:29 Conclusion
-----
-----
Disclaimer: Please note that any information is provided on this channel in good faith, but I cannot guarantee 100% accuracy / correctness on all content. Contributors to this channel are not to be held responsible for any possible outcomes from your use of the information.
Комментарии