Re: Как Microsoft проиграла битву за API

KyKyPy3HuK

взято отсюда
Перед вами модная теория: «Microsoft-у конец. Как только Linux продвинется в своем набеге на десктопы, и web-приложения заменят настольные приложения (desktop application могучая империя падет».
И хотя существует часть правды в том, что Linux представляет большую угрозу для Microsoft, предсказания о падении компании из Рэдмонда, по меньшей мере, преждевременны. У Microsoft невероятное количество денег в банке, и они до сих пор невероятно прибыльны. Падение будет долгим. Они могут халтурить десятилетие, прежде чем попадут в зону относительной опасности, и кто знает… в последнюю минуту они могут реинкарнироваться в компанию по производству мороженого. Поэтому не торопитесь списывать их со счетов. В начале 90-х все думали, что с IBM покончено: мейнфреймы стали историей. Тогда же Роберт Крингли предсказал, что эра мейнфреймов закончится 1 января 2000 года, когда все программы на COBOLе заклинит, а вместо исправлений этих приложений, чьи исходники, как говорят, давно потеряны, легче будет их переписать на клиент-серверной платформе.
Хорошо, допустим. Мейнфреймы до сих пор с нами, ничего не произошло 1 января 2000 года, а IBM перестроилась в большую, технологически всеядную, консалтинговую компанию, производящую даже дешовые пластиковые телефоны. Так что теория кончины Microsoft, выведенная из экстраполяции по малому количеству точек, является чрезмерной гиперболизацией.
Впрочем, существует мало понимаемый и в целом незамеченный феномен: стратегический бриллиант короны Microsoft – Windows API – потерян. Краеугольный камень монополии и невероятной прибыли от продаж Windows и Office, фактически обеспечивающих львиную долю в доходах Microsoft и покрывающих огромное число неприбыльных и малоприбыльных линеек продуктов, – Windows API –больше не интересен разработчикам. Курица, которая несла золотые яйца, еще не мертва, но уже смертельно больна, и это никто еще не заметил.
А теперь, позвольте мне извиниться за насыщенность и помпезность предыдущих абзацев. Похоже я начинаю выглядеть как писатель передовиц, который продолжает и продолжает кричать о стратегическом активе Microsoft: Windows API. Доказательство моих слов займет несколько страниц. Пожалуйста, не делайте никаких умозаключений, пока я не объясню, о чем я говорю. Это будет длинная статья. Мне понадобиться объяснить, что такое Windows API, продемонстрировать, почему это наиболее важный стратегический актив Microsoft . Я должен объяснить, как он был потерян, какие будут последствия. Но так как я говорю о долгосрочных тенденциях, я вынужден буду гиперболизировать и обобщать.

Разработчики, разработчики, разработчики, разработчики

Помните определение операционной системы? Это нечто, управляющее ресурсами компьютера так, что программы могут запускаться и работать. Людям в действительности наплевать на операционную систему, им не наплевать на те приложения, которые операционная система позволяет запускать. Текстовые редакторы. Интернет-пейджеры. Электронная почта. Счета к уплате. Веб-сайты с картинками Paris Hilton. Сама по себе операционная система не так полезна. Люди покупают операционные системы из-за полезных приложений, работающих на этой операционной системе. Следовательно, самая полезная операционная система та, на которой запускается наибольшее количество полезных приложений.
Логическое заключение состоит в том, что если вы пытаетесь продавать операционную систему, то вам необходимо сделать так, чтобы разработчики программного обеспечения захотели писать программы для вашей операционной системы. Поэтому Стив Баллмер прыгал по сцене и кричал: «Разработчики, разработчики, разработчики, разработчики». Это так важно для Microsoft, что единственная причина, из-за которой средства разработки программного обеспечения не раздаются бесплатно, заключается в том, что они не хотят случайно перерезать кислород разработчикам конкурирующих инструментов разработки (хорошо, тем, которые остались так как разнообразие инструментов разработки, доступных для их платформы, делает ее куда более привлекательной для разработчиков. Но на самом деле они хотят раздавать. Благодаря их программе Empower ISV вы можете получить пять наборов MSDN Universal (иначе известных как «практически все продукты Microsoft, исключая Flight Simulator») всего за 375$. Компиляторы командной строки для языков .NET включены с бесплатными библиотеками .NET … тоже бесплатно. Компилятор С++ теперь бесплатен. Что угодно для поощрения разработчиков работать под .NET и ликвидации таких компаний как Borland.

Почему Apple и Sun не могут продавать компьютеры

Да, это немного глупо: конечно Apple и Sun могут продавать компьютеры, но не на двух наиболее прибыльных рынках, а именно на рынках корпоративных и домашних пользователей. Aplle до сих пор где-то там внизу, с очень маленьким процентом рынка (Пожалуйста, поймите, что я говорю о больших числах, и следовательно, когда я говорю «никто», я на самом деле имею в виду «меньше чем 10 000 000 людей» и так далее и так далее).
Почему? Потому что на компьютерах Apple и Sun не работают программы для Windows, или, если работают, то в режиме дорогой и не безупречной эмуляции. Помните, что люди покупают компьютеры для программ на которых они работают, а для Windows настолько больше программного обеспечения, чем для Mac, что очень трудно быть пользователем Mac. Вот почему Windows API такой ценный актив Microsoft.

Врезка: Что такое «API»?
Если вы пишите программу, скажем текстовый редактор, и вы хотите высветить меню или записать файл, вы должны попросить операционную систему сделать это за вас, используя очень специфический набор вызовов функций, который различается на каждой операционной системе. Эти вызовы функций называются API: это интерфейс, который операционная система, например Windows, представляет разработчикам приложений, строящим текстовые процессоры, электронные таблицы и всякую всячину. Это набор тысяч и тысяч функций и подпрограмм, которые программисты могут использовать, чтобы заставить операционную систему делать такие интересные вещи как высвечивание меню, чтение и запись файла, или более эзотерические вещи, например, выяснить, как произнести конкретную дату по сербски, или черезвычайно сложное задание – вывести веб-страницу в окно. Если Ваши программы используют вызовы API для Windows, то они не будут работать в Linux, у него другие вызовы API. Иногда они делают примерно одинаковые вещи. По этой причине программы для Windows не запускаются под Linux. Если Вы хотите заставить Windows-программу работать под Linux, то вы должны заново реализовать весь Windows API, который состоит из тысяч сложных функций: это все равно, что написать Windows заново, что заняло у Microsoft тысячи человеколет. И если вы сделаете одну маленькую ошибку или упустите одну функцию, в которой нуждается приложение, то эта программа вылетит по ошибке.

(Я знаю, зн

bastii

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

Olenenok

Я вот чего не понял - на кой мелкомягким нужно было вводить имена мутексов? Меня это просто бесит!

bastii

это ты про win32 api? а разве их не используют, чтобы доставать те же мютексы в других процессах?
черт я как в этой статье описано, нифига про win32 api точно вспомнить не могу

Olenenok

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

bastii

+ тебя же никто не заставляет имя указывать, передавай NULL

6yrop

Да, немного жутко от этой статьи стало, поскольку я уже много времени вложил в .NET.
Да, не приятно осознавать, что вышедшая только две недели назад .NET 2.0 через год морально сильно устареет с приходом Avalon, Indigo и т.п.
Но это будет через год, а на сегодняшний момент платформа от Microsoft самая удобная для разработки.
Вот это утверждение я вообще не понял:

Старая Microsoft, Microsoft Рэймонда Чена, могла реализовать вещь наподобие Avalon – новую графическую систему – как серию DLL, которые запускаются на любой версии Windows, и могут быть включены в любое приложение. Нет технических причин так не сделать.
серия DLL это не новая операционная система?
Подход Реймонда Чена в принципе утопичен. Он тормозит развитие. Весь вопрос в том, как часто можно отказываться от обратной совместимости. То, что надо отказываться от Win32 и COM это ясно, поскольку есть Java. А то, что MS это делает в два этапа через .NET 1.0, 2.0, ну а как вы хотели, чтобы вам сразу всё на блюдечке?
Сравнение web-программирования и программирования с "богатым" клиентом в статье довольно поверхностное. Как новая платформа Microsoft впишется в современный мир, сейчас вряд ли можно предсказать. Покрасней мере, будущее, в котором будут только веб-приложения, кажется странным. Я такое слышу уже с 2000 года, но что-то HTML-у не слишком удается петь.

Dasar

> Да, немного жутко от этой статьи стало, поскольку я уже много времени вложил в .NET.
Речь идет не о том, что .Net отхватит или не отхватит свой жирный кусок пирога, т.к. .Net как серверная платформа - все равно никуда не денется.
Речь идет о том, что есть тенденция к тому, что Microsoft начинает терять привязку клиентских мест (причем богатых корпоративных) к Windows-у

6yrop

Речь идет о том, что есть тенденция к тому, что Microsoft начинает терять привязку клиентских мест (причем богатых корпоративных) к Windows-у
корпоративные приложения переходят на web-интерфейс?

Dasar

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

6yrop


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

Dasar

Смысл в том, что, используя тот же .Net, грань между тонким клиентом и толстым клиентом - очень и очень малая.
Имея тонкого клиента - за пару строк можно перейти на толстого клиента причем двумя способа:
либо добавляя .Net-контролы в html-форму,
либо добавляя html-форму в .net-окно.
Тоже самое отчасти верно и для перехода с толстого на тонкий:
если у нас .Net-приложение слабо завязано на локальное окружение, то его всегда можно положить в html-форму и сказать - что это тонкий клиент.

6yrop

Имея тонкого клиента - за пару строк можно перейти на толстого клиента причем двумя способа:
либо добавляя html-форму в .net-окно.
не совсем понял, что эта за пара строк. Типа вставить контрол WebBrowser на форму? и что с этим потом делать?
либо добавляя .Net-контролы в html-форму
что ты имеешь в виду?
если у нас .Net-приложение слабо завязано на локальное окружение
тк в том то и дело, что если нет локального окружения смысл толстого клиента теряется. "Тормознутость" тонкого клиента устраняется тем, что на клиентской машине можно много чего кешировать и тем самым уменьшать количество обращений к серверу.

Dasar

> Типа вставить контрол WebBrowser на форму?
да
> и что с этим потом делать?
что хочешь.
формировать вызовы, перехватывать события и т.д.
> что ты имеешь в виду?
что можно в html можно вставить .net-контролы, и они будут автоматом и прозрачно грузиться на клиента
далее из html-формы можно взаимодействовать с этими контролами.
> тк в том то и дело, что если нет локального окружения смысл толстого клиента теряется.
смысл локального окружения другой. Локальное окружение это, например, интеграция с outlook-ом.
> "Тормознутость" тонкого клиента устраняется тем, что на клиентской машине можно много чего кешировать и тем самым уменьшать количество обращений к серверу
что мешает .Net-контролу внутри html-кода все это делать?

bastii

Это все конечно верно. Но Майкрософт не очень нравится такое положение. И довольно серьезно занимаются тем, чтобы увеличить привлекательность толстого клиента.
Почему народ часто отдает предпочтение тонкому клиенту:
1) Конечно проще поставить сервак и готово -- все пользователи могут работать с приложением. Аналогично, чтобы обновить версию достаточно перегрузить веб-приложение.
2) Как ни странно, но богатый на содержание (всякие формы, много полей и все такое и на оформление интерфейс проще делать на ASP.NET, чем в Winforms.
Соответственно все эти проблемы у сегодняшних технологии толстых клиентов пытаются решить:
1) ClickOnes (или как там она называется) на CAS в CLR -- решает проблемы с доступностью для пользователя
2) WPF (на два порядка более удобный и мощный апи, чем винформы, даст форму веб-технологиям) + плюс другие апи выаодят на уровень

6yrop

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

bastii

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

ava3443

> "Тормознутость" тонкого клиента устраняется тем, что на клиентской машине можно много чего кешировать и тем самым уменьшать количество обращений к серверу.
На тонком клиенте тоже можно всё кешировать (правда, в рамках одной сессии).

Ivan826

Я такое слышу уже с 2000 года, но что-то HTML-у не слишком удается петь.
HTML-ю петь не надо. Петь будут xml и active html, которые не поддерживает только IE и поддерживать не будет (в IE7 - официальное заявление этим летом было) ввиду ставки Microsoft на "толстого клиента".
Почитай спецификацию css3. Через год-полтора (когда выйдет FireFox 3 с полной поддержкой css3) запоёт.

6yrop


идет мода на ajax
это от безисходности. Начинают прикручивать вещи, которые свойственны "толстым клиентам". Но когда к велосипеду начинают прикручивать мотор, то ездить на нем все равно не будет комфортно.
Вобщем-то понятно, что сейчас идет тенденция к объединению парадигм web и desktop программирования. У архитекторов и разработчиков Microsoft есть уникальная возможность создать удобную инфраструктуру. Поскольку они идут от операционной системы. Те кто идет от веба зажаты рамками веббраузера и джаваскрипта. У Microsoft есть классная основа .NET. Задача сложная и не известно, как у них это выйдет. Но хочется надеется, что все таки выйдет что-то дельное (и тогда они действительно заслуживают своих миллионов долларов иначе рождение хорошей инфраструктуры будет долгое и мучительное.

karkar

Кстати, вот блог самого Рэймонда Чена:
http://blogs.msdn.com/oldnewthing/

durka82

единственная причина, из-за которой средства разработки программного обеспечения не раздаются бесплатно, заключается в том, что они не хотят случайно перерезать кислород разработчикам конкурирующих инструментов разработки
Спорный факт. Почему, например, они тогда не раздают бесплатно обучающие версии своего ПО
И еще, кто-нибудь в курсе, почему такая замечательная технология, как Macromedia Flash, так мало используется?
Ведь это же чуть ли не идеальный компромисс между тонким и толстым клиентами!
Просто пройдусь по пунктам исходной статьи:
Вот несколько примеров того, что вы не можете действительно хорошо делать в веб-приложении:
1. Создавать программы с быстрой графикой.
Так флэш с этого и начинался - быстрая и легкая векторная графика
2. Строить систему проверки орфографии в режиме реального времени с красными волнистыми подчеркиваниями.
Базу ворда, конечно, использовать будет проблематично.
А вот брать информацию из web-словарей и сохранять в локальном хранилище, чтобы впредь за каждым словом в инет не лазить - вполне.
3. Предупреждать пользователей, что они потеряют свои данные, если нажмут кнопку закрытия браузера.
Такая проблема есть, но вполне реально записывать текущее состояние в то же хранилище (возможно в самой технологии предусмотрено даже что-то более конкретное на этот случай)
4. Обновлять на основе изменений пользователя небольшую часть экрана без обращения к сервера.
А вот это как раз легко.
Например, можно открыть сокет и обмениваться с сервером данными в формате xml
5. Создавать быстрый клавиатурный интерфейс (без необходимости использовать мышь).
С обработкой клавиатуры у флэша проблем нет.
6. Позволять людям продолжать работу, когда они не подсоединены к Интернет.
Это так же возможно с использованием локального хранилища.
Где я не прав?

Marinavo_0507

> Почему, например, они тогда не раздают бесплатно обучающие версии своего ПО
Потому что гораздо прикольнее дарить лицензии ВУЗам: можно написать, что сделан мега-подарок на огромную сумму -- (число инсталляций)*(стоимость одной лицензии).

RED-GREEN

И еще, кто-нибудь в курсе, почему такая замечательная технология, как Macromedia Flash, так мало используется?
ну а что ты хотел от технологии, которая использовалась поначалу только для создания мультиков =)

durka82

Про это я не подумал

durka82

ну а что ты хотел от технологии, которая использовалась поначалу только для создания мультиков
Ну и что с того? Java вон тоже не для того создавалась, для чего сейчас чаще всего используется
А "технологию для мультиков" она переросла еще в 5-й версии, когда в ней появилась нормальная(почти) объектная модель
А с тех пор уже почти 5 лет прошло и 3-4 версии...

RED-GREEN

ну и кому нужна объектная модель надстроенная над технологией для мультиков?
зы - .fla до сих пор закрытый формат?

Marinavo_0507

> Java вон тоже не для того создавалась,
> для чего сейчас чаще всего используется
Пеар-отдел Sun вбухал кучу бабла, чтобы убедить хоть кого-то, что Java - это круто. В результате таки удалось создать несколько тусовок из тех, кто поверил.
Какой интерес Microsoft делать это для Flash, когда можно в своём R&D-отделе взять с пыльной полки несколько игрушек?

durka82

ну и кому нужна объектная модель надстроенная над технологией для мультиков?
Не надстроенная, а переработанная
Ты конкретные минусы технологии привести можешь?
А то такую фразу можно про что угодно загнуть
зы - .fla до сих пор закрытый формат?
Точно не знаю.
Если закрытый - это конечно минус
SDK есть.

durka82

Какой интерес Microsoft делать это для Flash
А разве он уже у микрософта?
Значит я чего-то проспал
Тогда им не выгодно развивать эту технологию по причинам, указанным в статье (возможно поэтому они ее и купили - чтобы убрать конкурента)
Но неужели нет альтернативных технологий?!
SVG ни во что случайно не перерос?

RED-GREEN

Хз, что там с серьезными проектами, но общеизвестно, что флеш-плеер ведет себя неодинаково в разных браузерах даже в мультиках.
Проект нельзя создать без .fla файла, который даже в цвс и иже с ними не запихнешь.
Не говоря уже о том, что работа с этим .fla в редакторе просто ужасна.

Helga87

общеизвестно, что флеш-плеер ведет себя неодинаково в разных браузерах даже в мультиках.
Пример такого поведения в студию. Мб там дело в разных версиях плеера или плеер не от Macromedia?

durka82

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

Проект нельзя создать без .fla файла, который даже в цвс и иже с ними не запихнешь.
В саму технологию было встроено (по состоянию на пару лет назад - сейчас наверное больше возможностей есть) по крайней мере две возможности:
1. Код можно хранить во внешних текстовых файлах и подключать их с помощью include - так что код в CVS-е себя будет хорошо чувствовать
2. Есть поддержка работы с библиотеками других флэшек. Даже какие-то библиотеки есть - не добрался пока посмотреть
То есть никакого монолитного fla файла нет - можно выбрать нужный уровень детализации и развивать проект, придерживаясь его
А так любую технологию можно использовать через одно место, так что она станет совсем неудобоваримой
Не говоря уже о том, что работа с этим .fla в редакторе просто ужасна.
Что конкретно не устраивает?
В 4-м флэше были некоторые проблемы по работе с кодом, но уже в 5-ке все стало гораздо симпатичнее.
Сейчас не знаю, но если не устраивает, что уж код-то можно писать в любом редакторе (а учитывая, что сейчас из кода можно создавать практически все что угодно, не требуя существования заготовленных векторных (и не только) примитивов, как это было до 5-ки включительно, можно вообще очень редко залазить в фирменный редактор )...

Marinavo_0507

> флеш-плеер ведет себя неодинаково в разных браузерах
javascript тоже, но это никого не останавливает

RED-GREEN

ну на js никто особо упора не делает
а вот если так себя ведут флеш-плееры от макромедии, одинаковой версии...

RED-GREEN

>Но простой безглючный интерфейс сделать реально
и ожидать глюков при его разбухании?
>А так любую технологию можно использовать через одно место, так что она станет совсем неудобоваримой
ну так можно ли скомпилировать проект без .fla? (и есть ли компилер, отдельный от редактора?)

Helga87

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

Helga87

есть ли компилер, отдельный от редактора?)
Есть, конечно. Поскольку описание формата .swf можно скачать с сайта самой Macromedia. Есть даже компиляторы подмножества C# во flash.

durka82

и ожидать глюков при его разбухании?
Вам шашечки или ехать С не помню
Я уже говорил, что сломать и испортить можно все что угодно
ну так можно ли скомпилировать проект без .fla? (и есть ли компилер, отдельный от редактора?)
Через командную строку можно

durka82

Есть даже компиляторы подмножества C# во flash
Круто
А можно ссылку

Marinavo_0507

> ну на js никто особо упора не делает
кроме модной технологии ajax?

otets-mihail

А она, кстати, применяется где-нибудь в серьезных бизнес-проектах?

RED-GREEN

И что, ты хочешь, чтобы в большом проекте использовались эти сторонние поделки?

Helga87

И что, ты хочешь, чтобы в большом проекте использовались эти сторонние поделки?
Лично я не решился, они пока сыроваты. Это был ответ на твой вопрос: есть ли сторонние компиляторы? - Есть.

RED-GREEN

Ну я спрашивал про родные, короче тут все ясно.
А про неодинаковое поведение - я пример потерял, постараюсь найти.

ava3443

> А она, кстати, применяется где-нибудь в серьезных бизнес-проектах
Есть шанс, что рабочие места во всех банков-участниках платёжной и торговой системы одного из четырёх азиатских тигров будут тонким клиентом на AJAX, работающим поверх Internet и SWIFTNet. Серьёзный проект?

Marinavo_0507

Типа у всех IE 6.0, кто первым поставил сервис-пак, тот проиграл?

ava3443

По условиям тендера должны поддерживаться IE 6.0 & 5.5 и Netscape 8.0 & 7.0 на Windows 2000 Workstation и Windows XP с любым сервис-паком, которые Microsoft когда-либо выпускала для этих ОС.

Marinavo_0507

> с любым сервис-паком, которые Microsoft когда-либо выпускала для этих ОС
но не с теми, которые выпустит позже

bastii

а что с сервис-паком?

ruler

netscape?
Очевидно, проект не продуман.

ruler

Не говоря уже о том, что если AJAX, то почему не поддерживаются *nix и mac?

Marinavo_0507

> то почему не поддерживаются *nix и mac?
это же серьёзный бизнес-проект

bastii

видимо нет у них этих систем на местах

shlyumper

говорят, gmail.com имеет к этому какое-то отношение? Или это недостаточно серьезный проект...

ava3443

> но не с теми, которые выпустит позже
support & maintenance до 2013 года включает в том числе и это

ruler

Мне кажется, что даже серьезный проект не должен на всякий случай ориентироваться на одну платформу, если использует платформонезависимые технологии.

Marinavo_0507

> support & maintenance до 2013 года включает в том числе и это
это же пост-фактум только, так?

ava3443

в смысле?

Dasar

> И еще, кто-нибудь в курсе, почему такая замечательная технология, как Macromedia Flash, так мало используется?
как это можно использовать, если там пользователь даже не может отключить звук, не говоря уже об изменении шрифта.
как, например, во Flash-е предполагается хотя бы решать проблему локализации? когда на разных языках один и тот же текст занимает разное место.
имхо, Flash - до сих пор поделка для домохозяек, а не средство - для промышленной разработки.
При промышленной разработке удобно иметь дело с неким конструктором, который можно легко подстраивать под конкретную задачу.
Flash - же сейчас что-то очень и очень монолитное.

durka82

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

bastii

кстати, в что там с Macromedia Flex?

durka82

если там пользователь даже не может отключить звук
Хочешь сказать, что в java-аплетах это сделать можно? (я точно не помню, есть ли такая опция в настройках песочницы java )
не говоря уже об изменении шрифта
Аналогично.
Кстати, ты уверен, что сейчас это во флэше сделать нельзя? Я не уверен, но что-то похожее для этого я там видел...
Или с какой технологией ты сравниваешь?
как, например, во Flash-е предполагается хотя бы решать проблему локализации? когда на разных языках один и тот же текст занимает разное место.
Не знаю, как сейчас, но еще в четверке можно было хранить все тексты в отдельном файле и использовать нужный файл в зависимости от выбора пользователя.
Насчет разной длины - от этого никуда не денешься, но вариант, когда длина объекта пропорциональна длине текста, я реализовывал на 5-ке (или там уже что-то готовое было - не помню точно - главное, что это работало)
имхо, Flash - до сих пор поделка для домохозяек, а не средство - для промышленной разработки.
А это скорее потому, что ее так позиционируют ее создатели.
Уж не знаю, намерено, или сами чего-то не понимают, или по доводам, приведенным в сабжевой статье.
При промышленной разработке удобно иметь дело с неким конструктором, который можно легко подстраивать под конкретную задачу.
У нас еще почти 6 лет назад была идея создания среды разработки для веб на сомом флэше.
Правда тогда из-за отсутствия денег наша контора распалась, но это было скорее из-за неправильного подхода к поиску заказов, чем из-за технической части.
По крайней мере даже на той преальфаверсии конструктора, которая у нас была, мы создали несколько за несколько месяцев.
При этом повторная используемость готовых объектов была порядка 50% (без учета того, что сам инструмент при этом развивался).
Правда тогда было несколько моментов в технологии, которые затрудняли нашу задачу, но по крайней мере часть из них точно была исправлена уже в 6-ке.
Да и встроенные возможности технологии позволяют ее использовать как конструктор, правда скорее как серверную технологию (еже лет 5 существует фирменный серверный генератор флэша на основе шаблоно).
Flash - же сейчас что-то очень и очень монолитное.
Я уже писал здесь, что это не совсем так.
Или ты про что?
Да, конечно, у этой технологии есть минусы, которые, будучи устраненными, значительно повысили бы ее привлекательность.
Например, увеличение степени контролируемости флэша на клиенте: выключение звука/громкость, ограничение на использование проца и памяти, возможность запуска только по прямому запросу и тп (но приведенное - практически все, чего достаточно) - избавило бы многих от желания отрубать его на корню
А так, используя любую технологию, можно сделать бяку, на которую все будут плеваться
Мы вот, например,
если там пользователь даже не может отключить звук
именно поэтому практически первым, что сделали - это управление громкостью звука + полное отключение и добавляли этот объект во все свои проекты

bleyman

>> А она, кстати, применяется где-нибудь в серьезных бизнес-проектах?
Сдаёцца мне, все новые проекты гугла - на аяксе.
У флеша есть один фатальный недостаток. Флешёвые сайты не индексируются поисковиками. Вообще. Со всеми вытекающими.
Меня вот что интересует: я уже довольно давно замечаю в .нет фреймворке 1.1 какие-то забавные фишечки, которые наводят на мысль о том, что у аффторов фреймворка, в свою очередь, были разные мысли про использование чистых .нет компонентов вместо активХ. И вот я немножко не понимаю: секьюрность они уже давно настроили, опыт интегрирования активХ куда угодно есть, АСП есть, аж два способа хмл общения (вебсервис и ремоутинг) есть - так когда же эксплорер научится скачивать по хттп и отображать обыкновенную винформу, периодически тыркающую методы удалённого сервиса?
Или возможность перекрыть доступ компонента к чему угодно, например, не для этого нужна?

Dasar

> так когда же эксплорер научится скачивать по хттп и отображать обыкновенную винформу, периодически тыркающую методы удалённого сервиса?
это уже есть и было начиная с .net 1.0.

Ivan826

А что собственно плохово в AJAX'е?
Кроссброузерность? Используй не XMLHttpRequest а возьми Котеровскую библиотеку, переделай как хочешь и гоняй до посинения под всем чем угодно. Эта штука стабильно работает аж под 5 IE, а в случае необходимости можно и под 4 заточить (DOM'овские фишки убрать)

bleyman

Я так и думал.
А почему тогда даже на сайте M$ даунлоад манагер выполнен в виде активХ ?

shlyumper

потому что для того тобы поставить .net, нужно его скачать даунлоадером

durka82

У флеша есть один фатальный недостаток. Флешёвые сайты не индексируются поисковиками. Вообще. Со всеми вытекающими.
А я в новостях читал, что как раз такую возможность в него добавили. Или перепутал?
А вообще эта проблема тоже решается - поскольку вся инфа в такой ситуации лежит в БД, никто не мешает нагенерить страничек с нужным содержанием
Более того, все равно нехорошо игнорировать тех, у кого флэша нет - для них можно сделать что-нибудь простенькое на html-е и на этих же файлах натаскивать поисковики
Главное здесь - это сделать обработку запроса от поисковика, но это можно сделать даже встроенными средствами - флэш поддерживает переход внутрь него по ссылке

Helga87

А я в новостях читал, что как раз такую возможность в него добавили. Или перепутал?
Да, в восьмом флеше появились дополнительные метатеги для поисковиков. Но это только ключевые слова поможет вытащить, а не контент.
Правда, google умеет индексировать флеш в плане вытаскивания из него всех строковых констант, но это тоже положение не спасает, ибо правильно было сказано, что контент лежит в базе и подгружается во флешку динамически.

durka82

контент лежит в базе и подгружается во флешку динамически
Тогда эта проблема должна решаться аналогично обычным сайтам с динамическим содержимым (из БД).
Оставить комментарий
Имя или ник:
Комментарий: