Similar presentations:
Plato's theory of objects in architecture and design
1.
Plato’s theory of objects insoftware architecture and
design
Dmytro Shpetnyi
2.
What’s insideOverview
SECTIONS:
-
Why the topic?
How naming affects our view;
Abstraction VS details;
Plato? Similarities in thinking;
Games vs other software;
What should YOU do? (spoiler - think)
3.
OriginsOne liner of pain
Class is called MenuDiary.
- Should it know about the logic elsewhere?
- Do we rename or move?
4.
OriginsSelector
Gameplay splitted in Chapters
FEATURES
- 5 Locations
- 2 Clues on each Location
IN GAME
10 Clues in
1 Diary entry for
1 Chapter
5.
OriginsDiary
Shows progress of the
Chapter
FEATURES
- 10 Clues
- Chapter’s synopsis
- Miscellaneous art
6.
Difference?OK so what
MAX_CLUES_WIDGETS_COUNT
Chapter->GetCluesCount()
Better informs about current implementation
Better informs about game logic and ideas
More technical details
Less technical details
Ingrained into menu
Flows with the game change
7.
AbstractionProgramming evolves into less details
VS
Abstraction as a way to reduce brainwork
8.
Thinking perspectiveIdea VS Reality
9.
Plato?YES. “Theory of forms”
Perfect form > Concept > Reality
What are we doing exactly?
10.
RealityHow much of it is needed
We are building castles in the sky that
actually are real
11.
DetailsGames vs other software. Nuclear tech
-
-
Giga-real world. Can’t argue. Doesn’t change much
Price of mistake = enormous
○ People’s lives
○ Environment
destruction
○ …
Discrepancies = many
○ Laws of physics
○ Hardware
○ Processes
○ …
12.
DetailsGames vs other software. Financial tech
-
-
Semi-real world. Can argue. Changes with people
Price of mistake = high
○ Part of people’s lives
○ Economic loss
○ Laws
Discrepancies = many
○ Laws
○ Correctness of
operations
13.
DetailsGames vs other software. Games
-
-
Imaginary world. Can argue. Changes daily
Price of mistake = meh
○ Crash
○ Somebody rages
○ Bug in Jira
Discrepancies = controlled
○ In-game rules
○ Hardware
14.
GamesMostly creation of a new world
15.
ActionHow do we approach it then
-
Improvise
Adapt
Overcome
(Actually, just think)
16.
ThinkTry to see what are you actually doing
-
Is it the idea?
Is it the implementation?
Is it both?
Our intents become our actions
which affect the whole project.