Поиск по сайту:
Найти



Народные блоги

Добавить ленту статей сайта в свой iGoogle
Последние публикации
Віндовс   Windows   безпека   Віста   Vista   IT

'Смерть' Windows

Юрій Ващишин | 23.08.2007 07:24

5
Рейтинг
5


Голосов "за"
8

Голосов "против"
3

Про 'смерть' Windows. Погляд з професійної точки зору.

'Смерть' Windows
Стратегічний коштовність з корони Microsoft – Windows API – втрачений. Наріжний камінь монополії і неймовірного прибутку від продажів Windows і Office, що фактично забезпечують левову частку в доходах Microsoft і покривають величезне число неприбуткових і малоприбуткових лінійок продуктів, – Windows API – більше не цікавий розробникам. Курка, яка несла золоті яйця, ще не мертва, але вже смертельно хвора.

Що таке "API"? Якщо ви пишете програму, скажемо текстовий редактор, і ви хочете висвітити меню або записати файл, ви повинні попросити операційну систему зробити це за вас, використовуючи дуже специфічний набір викликів функцій, який розрізняється на кожній операційній системі. Ці виклики функцій називаються API: це інтерфейс, який операційна система, наприклад Windows, представляє розробникам додатків, що будують текстові процесори, електронні таблиці і всяку всячину. Це набір тисяч і тисяч функцій і підпрограм, які програмісти можуть використовувати, щоб примусити операційну систему робити такі цікаві речі -як висвічення меню, читання і запис файлу, або більш езотеричні речі, наприклад, з'ясувати, як вимовити конкретну дату по албанськи, або дуже складне завдання – вивести веб-сторінку у вікно. Якщо Ваші програми використовують виклики API для Windows, то вони не працюватимуть в Linux, у нього інші виклики API. Іноді вони роблять приблизно однакові речі. З цієї причини програми для Windows не запускаються під Linux. Хоч все це давно реалізовано в програмах Cedega (підтримує навіть DirectX9- тобто нові ігри), Wine (тільки звичайні програми). Деякі проблеми тільки в 1С бухгалтерії (і то по причині крайньої її лівизни)

Якщо ви намагаєтеся продавати операційну систему, то вам необхідно зробити так, щоб розробники програмного забезпечення захотіли писати програми для вашої операційної системи. Це так важливо для Microsoft. Завдяки їх програмі Empower ISV ви можете отримати п'ять наборів MSDN Universal (інакше відомих як "практично всі продукти Microsoft, виключаючи Flight Simulator") всього за 375$. Компілятори командного рядка для мов.NET включені з безкоштовними бібліотеками.NET. теж безкоштовно. Компілятор С++ тепер безкоштовний. Що завгодно для заохочення розробників працювати під.NET і ліквідації таких компаній як Borland (Inrise).

Microsoft втратила релігію зворотної сумісності. Команда розробки ОС увійшла до смаку і вирішила замість додавання нових функцій в Windows API замінити його повністю. Нам було сказано, що замість Win32 потрібно бути готовими до WIN FX: наступному поколінню Windows API. Все інакше. Базовано на.NET з керованим кодом, XAML, Avalon. Так, значно краще Win32, я визнаю. Але це не оновлення – то розрив з минулим.

Розробники і так не були у великому захопленні від складності програмування під Windows, тому в масовому порядку покинули платформу Microsoft і зайнялися web розробкою. Пол Грехем – творець Yahoo! Stores на самому початку буму доткомів – яскраво підсумував: "Для компаній, що починають, зараз все більше і більше причин писати web-орієнтовані застосування, тому що створення настільного програмного забезпечення (desktop software) стало куди менш цікавим. Якщо ви сьогодні хочете написати настільне застосування, ви робите це на умовах Microsoft, викликаючи їх API і працюючи з їх глючною ОС. І якщо перед вами стоїть завдання написати щось неординарне, то ви можете виявити, що просто проводите маркетингове дослідження для Microsoft."

Microsoft виросла, завела велику кількістю програмістів (3.5тис), які захопившись доходами з оновлень, раптово вирішили, що перепрограмувати все – не дуже великий проект. Хай йому біс, ми можем зробити це двічі! Стара Microsoft, Microsoft Реймонда Чена, могла реалізувати річ на зразок Avalon – нову графічну систему – як серію DLL, які запускаються на будь-якій версії Windows, і можуть бути включені в будь-яке застосування. Немає технічних причин так не зробити. Але Microsoft потрібна причина, по якій ви купите Longhorn, тому все, що вони добиваються- це різка зміна, схожа на зміни, коли Windows змінила DOS. Проблема в тому, що Longhorn не є дуже великим просуванням вперед над Windows XP; не настільки великим, як Windows над DOS. Навряд-чи це послужить для людей достатньою підставою для купівлі нових комп'ютерів і програм, як колись вони зробили з-за Windows. Ну нехай, може і послужить, бо Microsoft це необхідно, але те, що я зараз спостерігаю, не дуже переконливо. Microsoft зробило багато неправильних ставок.

Автоматична коробка передач бере перемогу. Зрозумійте правильно. Я вважаю.NET великим середовищем розробки, а Avalon з XAML – гігантський прогрес над старими способами написання графічних застосувань для Windows. Найбільша перевага.NET полягає в автоматичному управлінні пам'яттю.

Зараз в Microsoft багато розробників фантазують про те, що недостатньо переписати Windows API: вони повинні переписати його ще другий раз. Наступна версія своєї операційної системи під назвою Longhorn (Vista), крім всього іншого в неї буде включений повністю новий API графічного інтерфейсу користувача – кодове ім'я Avalon – написаний з нуля, щоб використовувати всі переваги сучасних графічних адаптерів і 3D графіки реального часу (DirectX 10). І якщо ви сьогодні при розробці графічних застосувань під Windows використовуєте "офіційну" найсвіжішу і найбільшу бібліотеку WinForms від Microsoft, то через два роки для забезпечення сумісності з Longhorn & Avalon вам доведеться почати наново.

На жаль, ці нові браві стратегії, речі на зразок.NET, Longhorn і Avalon, що народжують новий API, до якого будуть прив'язані люди, не працюватимуть, якщо більшість продовжує використовувати цілком задовільні комп'ютери 2000 року народження. Пройде пару років, перш ніж Vista достатньо розповсюдиться, і сприйматиметься як платформа для розробки. Розробники не купуються на численні пропозиції від Microsoft, як їм слід розробляти програми.

Настання Web. У кожного розробника є вибір при плануванні нового застосування: він може побудувати його для Web, або створити "багатого (товстого) клієнта", що запускається на персоналці. "За і проти" прості: веб-сервера-додатку простіше поширювати, а "багаті клієнти" пропонують швидкий час відгуку, що робить можливим цікавіші інтерфейси користувача.

Для Веб-сервера-додатку простіше поширювати внаслідок відсутності процесу інсталяції. Інсталяція веб-сервера-додатку означає набір URL в адресному рядку. Наприклад інсталяція нового додатку Google, набравши Alt+D, gmail, Ctr+Enter. Набагато менше проблем сумісності. Всі користувачі вашого продукту працюють на однаковій версії, немає необхідності підтримувати набір старих версій. Ви можете використовувати будь-яке програмне середовище, яку захочете, вам тільки потрібно примусити працювати це на своєму сервері. Ваше застосування автоматично доступно для практично кожного комп'ютера на планеті.

Але платою за це стане гладкість призначеного для користувача інтерфейсу. Ось декілька прикладів того, що ви НЕ можете дійсно добре робити у веб-сервері-додатку:

1. Створювати програми з швидкою графікою.

2. Будувати систему перевірки орфографії в режимі реального часу з червоними хвилястими підкресленнями.

3. Попереджати користувачів, що вони втратять свої дані, якщо натиснуть кнопку закриття браузера.

4. Оновлювати на основі змін користувача невелику частину екрану без звернення до сервера.

5. Створювати швидкий клавіатурний інтерфейс (без необхідності використовувати мишу).

6. Дозволяти людям продовжувати роботу, коли вони не приєднані до Інтернет.

Не все з вищепереліченого є великою проблемою. Незабаром частина проблем буде вирішена програмістами на JavaScript. Два нові поштові веб-сервери-додатки Gmail і Oddpost показують хороший результат по подоланню або повному вирішенню деяких вищеназваних пунктів. А користувачів, схоже, не турбують невеликі утруднення і "гальмівність" веб-сервера-інтерфейсу.

Отже, веб-сервер-інтерфейс користувача вирішує 80% всіх проблем, і навіть без нового браузера ми, ймовірно, досягнемо відсотків 95. Це терпимий рівень для більшості людей, і, поза сумнівом, для розробників, які голосують за веб-розробку практично при кожному значущому проекті.

Це означає, що, раптово, API від Microsoft вже не так важливий. Веб прикладенням не потрібний Windows.

Це не означає, що в Microsoft нічого не помітили. Звичайно, помітили, а коли наслідки сталі ясні, ударили по гальмах. Такі нові багатообіцяючі технології, як HTAs і DHTML були зупинені в своєму розвитку. У жодному випадку в Microsoft не дозволять DHTML стати трішки краще: це дуже небезпечно для їх ключового бізнесу – "багатих клієнтів". Сьогодні Microsoft робить ставку на "багатого клієнта". Ви побачите це в кожному слайді презентації Longhorn. Проблема в наступному: надто пізно.

Велика кількість програмістів давно пішла у веб-сервери і відмовляються повертатися. Більшість розробників під.NET – ASP.NET розробники, що програмують для Microsoft веб-сервера. ASP.NET прекрасний, і це дійсно на ціле покоління випереджає все решту. Але це серверна технологія, так що клієнти можуть використовувати будь-яку платформу. І це чудово працює під Linux за допомогою Mono.

Жодне з цих прогнозів не провіщає нічого хорошого Microsoft і доходам, отримуваних завдяки владі над API. Новий API це HTML.

CopyLeft Yuri Vaschishin aka Brontozaurus (vashch@mail.ru), розпоширення вітається при посилці на автора. (підсумовано по результах досліджень Кріс Касперський aka мыщъх, Жанни Рутковської, Пол Грем (Paul Graham), Джоел Сполські) (то скорочена версія статті, повну можете отримати, пославши мені мейл)

Комментарии









© 2007 - 2020, Народная правда
© 2007, УРА-Интернет – дизайн и программирование

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

Техническая поддержка: techsupport@pravda.com.ua