Python. Это сжато, но не загадочно. Он позволяет избежать чрезмерного использования символов (or
и and
вместо ||
и &&
и т. Д., А также без фигурных скобок), он должен иметь одинаковые отступы во всем (что делает структуру гораздо более наглядной), он динамически печатается (предотвращение некоторых моментов царапания головки, вызванных переменными приведения, перегрузкой и т. д.). Python также позволяет легко заставить пользовательские объекты вести себя как встроенные типы с помощью магических методов (например, я могу определить метод __add__
и добавить два экземпляра моего объекта точно так же, как я бы добавил целые числа).
Объектно-ориентированный синтаксис Python очень гибкий. Магические методы делают практически все возможное с помощью классов Python без особых усилий. Например, если бы я хотел сделать объект вызываемым, все, что мне нужно было бы сделать, это:
class SomeClass:
# rest of class implementation here
def __call__(self):
# define some behavior for when the object is called
Мне не нужно делать ничего прикольного; это стандартная процедура, требующая минимального изменения кода.
Более того, поскольку Python имеет очень обширную стандартную библиотеку, делается небольшое переосмысление колеса, что снова позволяет добавлять огромное количество функциональности практически без написания нового кода.
Существует множество других причин, по которым Python является разборчивым и расширяемым, и существует множество других языков, которые так же хороши для SOLID. Я просто подумал, что смогу найти свой любимый язык.