Tag Archive for 'API'

Гениальная статья про программистов

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

Кто читал старые книги по программированию помнит термины “программирование сверху вниз”, “программирование снизу вверх”, и, самое невероятное – “от центра к краям”. Удивительная особенность этих терминов в том, что они просты и понятны, но ни один нормальный человек, примеряя объяснения на себя, понимает, что так работать не может. Это модели понятные, но к реальности никак не относящиеся. Так же, как и «легенда агилистов о ватерфоле».

Действительно. Как раз тот случай, когда “в теории между теорией и практикой не должно быть различий, а на практике…”. Далее автор описывает два граничных подхода: push и pull.

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

Это первый экстремальный подход. Разработка фреймворка ради самого фреймворка. Глаз радует структура и красота кода, но часто на практике не все работает так идеально как хотелось бы. И хорошо, если до осознание этого вообще доходят.

Это у нас гордые и способные программисты. Они, бывает, называют программистов, описанных выше “архитектурными астронавтами”. Почему? Да потому, что они ерундой какой-то занимаются, когда надо просто взять и написать код. И они умеют колбасить этот код тоннами, и делать это быстро. И этот код – работает.

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

А вот такие большинство флэшеров фрилансеров. Что уж тут, сам таким был, ога.

С другой стороны, ясно, что избегая контакта с изначальной проблемой (для решения которой и примененяется фреймворк) – невозможно понять, хорош он, или плох… Вы пишете набросок кода, пытаясь решить проблему «без фреймворка». Получается плохо. Вы продолжаете это, пока точно не поймете, почему именно и в каком месте оно получается плохо. Не надо этот код отлаживать, и запускать – это набросок, делающийся с целью понять, как он вообще выглядеть будет.

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

В общем, читайте дальше.

onEnterFrame #27

  • Жара, дым и наконец похолодало
  • Пара слов про собеседования
  • Как mail.ru повышает лояльность сотрудников
  • Как я ошибки в Мой Мир API искал
  • Маки объявили войну человечеству
  • Опять Jailbreak просто зайдя на сайт
  • GPU ускорение видео в новом плеере
  • 10.1 и sleep mode

Audio clip: Adobe Flash Player (version 9 or above) is required to play this audio clip. Download the latest version here. You also need to have JavaScript enabled in your browser.

Скачать

onEnterFrame #26

Audio clip: Adobe Flash Player (version 9 or above) is required to play this audio clip. Download the latest version here. You also need to have JavaScript enabled in your browser.

Скачать

Youtube video API

А тем временем youtube выложил AS3 API, с помощью которого можно использовать их видюшки. Насколько я знаю, раньше это решалось какими-то грязными хаками.

А что нам не хватает-то?

Пока я делаю свой супер движок для порноплееров просто для плееров и по пути разные сопутствующие библиотеки, кто-то в Жуике ругается на Alternativa3d, а кто-то пишет свой редактор AS3, всем нам хорошо известный Mike Chambers собирает с народа фидбэк по поводу чего не хватает среднестатистическому разработчику игр на флэше. А чего не хватает вам? Отпоститесь в коментариях пока не поздно.