Перестаньте думать о файлах

Файлы — устаревшее понятие. Они были рядом всегда. Для большинства разработчиков написание программного обеспечения с использованием инструментов на основе файлов — единственный опыт, который у них есть. Они предполагают, что это лучший или единственно правильный способ программирования компьютера. Но это не так.

Smalltalk – это язык программирования, основанный на изображениях. Образ — это, по сути, автономная операционная система, которая управляет всем кодом за вас благодаря простой в использовании интегрированной среде разработки. Весь код организован в пакеты, классы, протоколы и методы. Smalltalk IDE представляет приложение не как набор файлов, а как базу данных. Если ваше приложение спроектировано разумно, ваши методы никогда не превысят дюжины или около того строк кода, которые можно легко редактировать в панели редактирования IDE. Следовательно, суперредакторы, такие как Vim и Emacs, не нужны.

Более того, Smalltalk IDE поддерживает живое кодирование и отладку. Вы можете проверять и модифицировать любой объект в системе. Вы можете изменить код и продолжить выполнение! Когда вы закончите, вы сможете сохранить состояние выполнения своего приложения, сохранив изображение. Это невероятно мощно. Это огромная экономия времени. Мгновенная обратная связь системы значительно повышает вашу производительность по сравнению с обычными файловыми языками, такими как Java и JavaScript; как правило, вы можете быть в три раза продуктивнее [1]!

Но чтобы использовать Smalltalk, вы должны научиться отказываться от мышления, основанного на файлах. Это другой способ написания программного обеспечения, поэтому ваша файловая цепочка инструментов в значительной степени не имеет значения. Файлы принадлежат каменному веку. Это настолько низкоуровневая концепция, что они делают современные IDE, такие как Eclipse, IntelliJ и Visual Studio, излишне сложными [2]. Вы понимаете это, когда видите, насколько чистым и спартанским является пользовательский интерфейс для Smalltalk IDE; он почти игрушечный и в то же время невероятно мощный.

Файлы заставляют вас иметь дело с бесконечным количеством исходного кода. Как правило, для управления этим кодом требуется мощный и сложный текстовый редактор. Вы тратите больше времени на работу со своими инструментами, чем на размышления о своем приложении, его дизайне и функциональных деталях. Это особенно верно для IDE, таких как Eclipse и IntelliJ, с их огромными кривыми обучения [3].

Для сравнения, Smalltalk IDE позволяет вам сосредоточиться на действии в вашем приложении. Вам не нужно много думать об IDE; кривая обучения чрезвычайно мягкая. Каким приятным становится процесс создания программного обеспечения!

Так что откажитесь от своего файлового мышления. Откажитесь от своих наборов инструментов на основе файлов. Выйдите из каменного века и примите будущее, в котором написание программного обеспечения — это радость, а не рутинная работа.

[1] https://smalltalkrenissance.wordpress.com/2015/02/16/smalltalks-proven-productivity/

[2] https://infinum.co/the-capsized-eight/articles/eclipse-is-dead-for-android-development-and-i-helped-kill-it

[3] http://help.eclipse.org/mars/index.jsp