Отладка мозгом
Feb. 19th, 2008 08:41 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
В свете утренних разборок с многопоточной прогой особенно полезным выглядит следующий пост:
дизайн системы, в которую вносятся изменения, должен быть элегантен и прочувствован. Если я непонимаю системы, которую изменяю, как я могу понять происходящие в ней процессы? Если лучшая ассоциация для дизайна, которую я могу подобрать, сводится к канализационной трубе, по которой передвигаются искаженные до неузнаваемости входные данные, то о каких высоких материях я могу медитировать над stack trace?
Вот. Поэтому даже в безумном дельфи приходится писать программы, выглядящие как ручная реализация функциональной парадигмы, только ради того, чтобы при анализе можно было абстрагироваться от всего, кроме сошедшего с ума модуля. А еще это позволяет нам с
belnetmon независимо писать модули, не занимаясь постоянным согласованием связей между ними.
Поток данных в программе должен представляться наглядно, чтобы его можно было крутить в мозгу в свободное время, не за компом. В этом отношении, конечно, c Haskell, сложно сравнить что либо из известных мне языков - на нем очень удобно думать.
дизайн системы, в которую вносятся изменения, должен быть элегантен и прочувствован. Если я непонимаю системы, которую изменяю, как я могу понять происходящие в ней процессы? Если лучшая ассоциация для дизайна, которую я могу подобрать, сводится к канализационной трубе, по которой передвигаются искаженные до неузнаваемости входные данные, то о каких высоких материях я могу медитировать над stack trace?
Вот. Поэтому даже в безумном дельфи приходится писать программы, выглядящие как ручная реализация функциональной парадигмы, только ради того, чтобы при анализе можно было абстрагироваться от всего, кроме сошедшего с ума модуля. А еще это позволяет нам с
![[livejournal.com profile]](https://www.dreamwidth.org/img/external/lj-userinfo.gif)
Поток данных в программе должен представляться наглядно, чтобы его можно было крутить в мозгу в свободное время, не за компом. В этом отношении, конечно, c Haskell, сложно сравнить что либо из известных мне языков - на нем очень удобно думать.
no subject
Date: 2008-02-19 07:21 pm (UTC)no subject
Date: 2008-02-19 07:29 pm (UTC)no subject
Date: 2008-02-19 07:31 pm (UTC)