netch: (Default)
[personal profile] netch
А вот более формализованное и расширенное описание того тезиса, с которого началась данная тема.


Сложность - основная проблема программирования; связана с самой его природой; можно надеяться на её понижение для освоенных классов задач... Первый источник сложности в программировании - так называемый семантический разрыв - разрыв между уровнем и характером элементарных объектов и операций, с одной стороны, и потенциально возможных услуг - с другой. Иными словами, это проблема согласования масштаба - ювелирными инструментами предлагается сооружать города... Занимаясь определённым классом услуг (задач) , можно стремиться выделить характерный именно для этого класса набор элементарных объектов и операций, построить соответствующий исполнитель (аппаратным или программным способом) и программировать на таком более подходящем исполнителе. Фактически это означает создать адекватный выбранному классу услуг язык программирования. На практике это самый распространённый способ борьбы со сложностью и одновременно основная причина роста проблемно-ориентированных языков... В качестве второго источника сложности в современном программировании следует назвать незнание компьютером реального мира. Лишённый необходимых знаний, компьютер не может не только скорректировать неточно указанные в программе действия, но и проинформировать об отклонениях от направления на цель работы. Традиционное для компьютеров управление посредством указания действий, а не целей требует учета мельчайших нюансов всех обстоятельств, в которых может оказаться исполнитель в процессе предоставления нужной услуги...

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


(источник)

Интересно получается - с одной стороны, интерес к подобной тематике достаточно явно коррелирует с лагерем "противников" текущего мэйнстрима сред исполнения и языков разработки. В то же время противоположная группа - "практики" ведут себя как викинги или янычары классического периода: забирая людей, они не только ничего не дают в теоретическом плане, но и наоборот - уничтожают рассадники всего, что непохоже на святую троицу современной практики C++/Java/C#.

Тотальное сужение кругозора обучаемых за счёт концентрации на мэйнстриме - фактор, который должен оказывать очень существенное отрицательное влияние на уровень обучения.
This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

Profile

netch: (Default)
netch

December 2023

S M T W T F S
     12
3456789
10111213141516
171819 20212223
24252627282930
31      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 3rd, 2026 11:22 pm
Powered by Dreamwidth Studios