ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Вторник
7 мая
77462 Топик полностью
Рэйлвэй Каген (10.01.2007 16:49, просмотров: 1) ответил Evgeny_CD на А теперь я взял шашку в руки по взрослому. Двумя руками :)
ИМХО теологически :) Есть на корабле такая штука - леерное ограждение. По идее - ограничивает свободу. Фактически - мешает случайно выпасть за борт или дает шанс случайно зацепиться, ежели Вас уже смывает за борт - кому как нравится.((с)чужой - подслушано на каком-то форуме) Так вот наличие ОСи или компилятора, или еще хз-чего, предоставляющего такую "ограниченную" свободу скорее всего поможет людям, пытающимся бОльшую часть времени работать и мыслить категориями разрабатываемого алгоритма, нежели преодолевать ограничения и частные случаи компилятора, заниматься вычислением указателей или писАть бесконечные классы и врапперы в объектной модели (хотя абсолютное большинство предпочитает накатывать бизнес-логику в обработчиках событий той самой экранной формы, не задумываясь о последствиях). В большинстве задач сам алгоритм формализуется достаточно легко, но как только переходим к требованиям обратной совместимости (со старыми данными и т.д.) и расширяемости (под новые источники данных и т.д.), начинаются танцы с бубном. И в результате может получиться, что разработка суперного модуля расширений весит больше, чем сам алгоритм задачи, а позапрошлогодняя база данных не подсасывается в текущий релиз и требуется чего-то там патчить. Собственно, чем больше разработчиков и пользователей сталкиваются с такими противоречиями, тем больше шансов на развитие языков высокого уровня, появление иных моделей программирования - ограничивающих в одном, но дающих преимущество в другом. Вполне вероятно, что в них все-таки останется возможность "думать, в смысле МЫСЛИТЬ"((c)Bill), может быть более свободно и продуктивно, чем с сегодняшними средствами разработки. Ежели специалисту хватает того, что уже наработано - не вопрос. Кто бы спорил. Молоток вообще разрабатывали только два раза - в каменном веке и для работы в космосе :) к п.3. Объектная модель - врядли самое лучшее изобретение человечества, равно как процедурное программирование и единое пространство имен. Причина - в ограничении расширяемости уже написанных программ. Некоторые шаги к преодолению ограничений со стороны объектного программирования сделаны - модула и оберон, с другой строны - жаба, питон, сишарп, зоннон. Использовать можно хоть все сразу вместе с ассемблером, лишь бы был резалт. Кстати, в варианте программирования под продукты M$ резалт в бОльшей степени определяется законом больших чисел :). Да и писАть под продукты M$ совсем необязательно на продуктах от M$. Вот тут и начинается свобода, какой не видели ни на одном рынке. Везде уже по-другому: хочешь торговать апельсинами - сначала купи паспорт :) Раз уж пошла мода с налитыми кровью глазами искать торчащие отовсюду уши денежных тузов, то само по себе разделение на "исполняемый код" и "исполняемые команды" может быть неприятно следующим: 1. Раздельные средства разработки. Скорее всего средства для разработки "исполняемого кода" будут стоить дохрена, а может и вообще не будут продаваться (см.п.2). 2. При использовании какой-либо наложенной системы кодирования(защиты) "исполняемый код" может быть запатентован совместно с чипсетом. Это обеспечит бесконечную покупаемость ОСи и "чипованных писюков". Наверное это будет вечный кайф для мелкософта. Что-то похожее обкатывалось на иксбоксе, но неудачно, т.к. на носителе хранился и загружался все тот же "исполняемый код", хотя и криптованный. Было бы неразумно ждать от монополиста другого поведения, раз уж он покупает наработки 10..15-ти летней давности и развивает или глушит их по своему усмотрению. 3. С другой стороны - вафли пекут не на одном заводе, да и в плисину можно почти писюк прошить, чего бы не испечь проц под "исполняемые команды". Тем более, что были и форт-процессоры, и трансмета со своей "неудачно реализованной" Code Morphing..