Но во время откровенной дискуссии о будущем программирования, состоявшейся на прошедшей в Лос-Анджелесе конференции Professional Developers Conference, ведущие разработчики самой корпорации высказались в поддержку методов старой школы создания программного обеспечения.

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

"Я готов драться с каждым, кто попытается удалить мой текстовый редактор", - заявил Дон Бокс, ведущий инженер Microsoft.

"Хотят ли люди программировать, рисуя картинки? Думаю, да, - продолжал Бокс, работающий в Microsoft над созданием декларативных языков и инструментальных средств. – Но если вы посмотрите, как программирую я сам, то увидите, что я пишу текст. И, как мне представляется, мы напрасно так легкомысленно относимся к утрате старых навыков".

"Среды визуального программирования удобны, когда бесполезны, но неудобны, когда они могли бы быть полезны, - заметил Джеффри Сновер, еще один ведущий инженер Microsoft и автор PowerShell, инструмента создания скриптов для Windows. – Если у вас на экране есть пять объектов, их еще можно 'переварить' в текст. Но когда таких объектов становится 500, визуальное программирование оказывается совершенно бесполезным. При увеличении какого-то одного объекта теряется весь контекст".

"Несмотря на то что визуальному программированию научиться проще и оно помогает разработчикам писать более производительно, с ним проще всего впасть в самообман", - считает Баnлер Лэмпсон, заслуженный сотрудник Microsoft. Например, по его словам, никто даже не может толком объяснить, что такое UML-диаграмма.

Лэмпсон за свой вклад в программную инженерию получил в 1992 году премию Тьюринга, присуждаемую Association for Computing Machinery, и является соавтором девяти языков программирования.

Microsoft довольно поздно начала поддерживать Unified Modeling Language. Эта возможность появится только в следующей версии Visual Studio 2010, которая должна быть выпущена в будущем году.

Помимо средств визуального программирования и UML, Microsoft поддерживает использование управляемого кода посредством своей технологии Common Language Runtime. Управляемый код работает внутри виртуальной машины. Как утверждают сторонники этой технологии, он упрощает и убыстряет написание программ и отличается большей защищенностью.

"Управляемый код позволяет разработчикам делать вещи, выходящие за рамки их компетенции, - заметил Сновер. - Управляемый код – своего рода тормоза с антиблокировочной системой".

Как в шутку предположил Сновер, программирование становится настолько абстрактным, что разработчикам вскоре придется использовать игровой контроллер с датчиками движения, разрабатываемый в Microsoft в рамках проекта Project Natal, для того чтобы писать программы путем интерпретации танцевальных па.

Другие авторитетные программисты, такие как Херб Саттер, главный архитектор языка программирования C++/CLI, предсказывают, что написание кода, работающего на "голом железе", может вновь в скором времени войти в моду, едва производители полупроводниковых компонентов столкнутся с невозможностью поддерживать наращивание скоростей процессоров нынешними темпами.

"Думаю, закон Мура будет действовать еще лет пять–десять, - сказал он. – Оптимизация станет очень востребована, когда люди поймут, чем мы платим за абстракции".

Кроме того, как заметил Саттер, программистам приходится начинать писать приложения, оптимизированные для параллельного выполнения на ПК с многоядерными процессорами, появившимися в последние несколько лет.

Однако сначала, как заметил Бартон Смит, технический специалист Microsoft и эксперт по языкам параллельного программирования, необходимо серьезно усовершенствовать языки программирования с учетом многоядерности. "Сейчас для создания программ, рассчитанных на многоядерные архитектуры, мы имеем в своем распоряжении языки программирования довольно низкого уровня. Они не отличаюстя большой производительностью и требуют серьезного внимания и усилий от разработчиков", - сказал Смит.

По его прогнозам, пройдет еще немало времени, прежде чем параллельное программирование станет массовым. "Из-за наклонности программировать последовательно мы сможем развить в себе уверенные навыки параллельного программирования лет через 12", - заявил он.

Поделитесь материалом с коллегами и друзьями