Как я могу уменьшить количество времени, которое у меня уходит на написание компьютерных программ? - PullRequest
0 голосов
/ 18 мая 2019

Кажется, что большинство программ, которые я пишу, я мог бы объяснить ребенку, как это сделать менее чем за час ( лот менее чем за час, но Мне нравится быть консервативным в моих оценках). После этого короткого урока ребенок мог делать то, что я хочу, чтобы компьютер делал вручную. Вместо того, чтобы меньше часа, чтобы заставить компьютер делать это, у меня уходит недели или месяцы. Например, я работаю над следующей программой в течение недели или около того, и она, возможно, завершена на 10%:

Задача принимает в качестве входных данных плоское 2D-изображение, например .jpg.

colored blobs

Для каждого шарика мы хотим знать, какие пиксели находятся на периферии. Например, возможно, один пиксель на самом краю желтого шарика находится в строке 321 и столбце 437. По сути, нам нужна карта внешнего края каждого шарика.

Мы можем представить себе гигантскую копию картины, лежащей на полу спортзала. Он разделен на квадраты (пиксели) размером с тарелку, каждый из которых имеет чистый цвет.

Мы можем представить увеличение на краю одной из капель

image zoom in

Предположим, что мы находим пиксель на краю капли. Как нам найти гнездо? а следующий?

initial pixel placement

Хорошо ... давайте проследим за внешней стороной капли по часовой стрелке.

3 на 3 пикселя вокруг считывающей головки

Остальные графические пояснения можно найти здесь

За исключением времени, чтобы сделать снимки, я уже неделю или около того работаю над описанной выше игрушечной программой, и она может быть завершена на 10%.

Как я могу тратить меньше времени на написание кода, чтобы получить то, что я хочу? Если я могу объяснить это ребенку менее чем за час, то мне больно тратить недели на написание кода для этого.

...