Как стать автором
Обновить
20
0
Ярослав @YKapodastr

Пользователь

Отправить сообщение

Паттерны ООП в метафорах

Время на прочтение17 мин
Количество просмотров558K
Большинство литературы посвященной паттернам в ООП (объектно-ориентированном программировании), как правило, объясняются на примерах с самим кодом. И это правильный подход, так как паттерны ООП уже по-умолчанию предназначаются для людей, которые знают что такое программирование и суть ООП. Однако порой требуется заинтересовать этой темой людей, которые в этом совершенно ничего не понимают, например «не-программистов» или же просто начинающих «компьютерщиков». Именно с этой целью и был подготовлен данный материал, который призван объяснить человеку любого уровня знаний, что такое паттерн ООП и, возможно, привлечет в ряды программистов новых «адептов», ведь программирование это на самом деле очень интересно.
Статья предназначена исключительно для новичков, так что «старожилы» ничего нового для себя не узнают. В основном статья описывает известные паттерны из книги «Приемы объектно-ориентированного программирования. Шаблоны проектирования.», но более популярным и простым языком.
Читать дальше →
Всего голосов 214: ↑201 и ↓13+188
Комментарии86

Huawei Ascend P6: подлинная история создания и подробное исследование самого тонкого китайского смартфона в мире

Время на прочтение12 мин
Количество просмотров73K
В абсолютном большинстве случаев мы не можем восстановить историю создания смартфонов. Все происходит в глубине корпораций, над каждой моделью работают десятки, а то и сотни людей, и потому выявить логику принятия решений крайне затруднительно. Приехавший для обзора Huawei Ascend P6 тоже был темной лошадкой, пока он не подвергся полной разборке. Увиденное внутри позволило нам с мастером Левченко представить и записать историю возникновения этого непростого аппарата.

image

Итак, весна 2012 года, центр китайского Шеньженя, штаб-квартира Huawei.

Ричард Ю, глава Huawei Devices, стоял у огромного, на всю стену окна своего кабинета на 36-м этаже и смотрел на закат солнца. Он был, как обычно, одет в френч защитного цвета. В руках у Ричарда была трубка. У круглого стола сидели и напряженно молчали восемнадцать мужчин в черных костюмах.

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

— Товарищи, — сказал он, — У меня есть для вас пренеприятнейшее известие. Час назад мне звонил Тим Кук.
Читать дальше →
Всего голосов 56: ↑42 и ↓14+28
Комментарии36

Место сценариста в команде разработки игр

Время на прочтение8 мин
Количество просмотров92K


Здравствуйте, меня зовут Мария Кочакова, я сценарист проекта Skyforge в Allods Team. Эта статья подытоживает два года моей работы игровым сценаристом. Все это суровые реалии жизни сценаристов компьютерных игр, то, с чем мы сталкиваемся ежедневно. Категоричность формы продиктована важностью содержания.

Сценарий компьютерной игры

Нарративная (повествовательная) часть игры состоит из сеттинга, сюжета и текста.

Сеттинг — это мир игры, его законы и реалии. Примеры сеттинга: постапокалипсис, фэнтези-средневековье, киберпанк…
Читать дальше →
Всего голосов 76: ↑62 и ↓14+48
Комментарии64

Тонкости в процессе дизайна для стартапов

Время на прочтение7 мин
Количество просмотров28K
Эта статья вышла из моего пути “проб и ошибок”, и почти каждый тезис так или иначе связан с неудачей или успехом на этапе проектирования и дизайна для какого-либо стартапа.



Надеюсь, что она поможет дизайнерам избежать тех же ошибок, на которые натолкнулась в свое время я. Людям, которые решили сделать свой стартап, эта статья поможет учесть тонкости, связанные с процессом разработки и сделать более качественный продукт.
Читать дальше →
Всего голосов 51: ↑48 и ↓3+45
Комментарии13

Мега-Учебник Flask, Часть 1: «Привет, Мир!»

Время на прочтение6 мин
Количество просмотров572K
Это первая статья в серии, где я буду документировать мой опыт написания веб-приложения на Python, используя микрофреймворк Flask.

Здесь список всех статей в серии:
Часть 1: Привет, Мир!
Часть 2: Шаблоны
Часть 3: Формы
Часть 4: База данных
Часть 5: Вход пользователей
Часть 6: Страница профиля и аватары
Часть 7: Unit-тестирование
Часть 8: Подписчики, контакты и друзья
Часть 9: Пагинация
Часть 10: Полнотекстовый поиск
Часть 11: Поддержка e-mail
Часть 12: Реконструкция
Часть 13: Дата и время
Часть 14: I18n and L10n
Часть 15: Ajax
Часть 16: Отладка, тестирование и профилирование
Часть 17: Развертывание на Linux (даже на Raspberry Pi!)
Часть 18: Развертывание на Heroku Cloud

Моя предыстория


Я разработчик ПО с двузначным числом лет опыта разработки комплексных приложений на нескольких языках. Впервые я познакомился с Python для создания привязок к C++ библиотеке на работе. Вдобавок к Python, я писал веб-приложения на PHP, Ruby, Smalltalk и, верите вы или нет, еще на С++. Из всего этого, я нахожу комбинацию Python/Flask самой гибкой.
Я хочу начать это долгое и удивительное путешествие
Всего голосов 63: ↑60 и ↓3+57
Комментарии31

27+ ресурсов для онлайн-обучения

Время на прочтение5 мин
Количество просмотров969K

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

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

Читать дальше →
Всего голосов 174: ↑163 и ↓11+152
Комментарии68

Опыт вывода приложения в Toп русского App Store: цифры, графики, расследования

Время на прочтение7 мин
Количество просмотров42K
Всем привет!
Всегда с удовольствием читаю case study разработчиков под iOs и хочу внести посильный вклад в понимание магии App Store — рассказать нашу историю создания и продвижения приложения в категории Entertainment для iPhone.

Немного тизеров:
1. Про нас написало большинство крупных площадок России и Украины. Вся аналитика и выводы представлены.
2. Мы поднялись до 3 места в общем Топе App Store России и Украины, 1-2 место в категории. На текущий момент мы уже 4-й день в Топ-5 с более чем 60К установок и около 500 отзывами/оценками в App Store.
3. Мы тщательно документировали весь процесс и по пути делали много скриншотов.


Читать дальше →
Всего голосов 49: ↑41 и ↓8+33
Комментарии47

Пишем платформер на Python, используя pygame

Время на прочтение11 мин
Количество просмотров349K
image
Сразу оговорюсь, что здесь написано для самых маленькихначинающих.

Давно хотел попробовать себя в качестве игродела, и недавно выпал случай изучить Python и исполнить давнюю мечту.

Что такое платформер?


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

Одними из моих любимых игр данного жанра являются «Super Mario Brothers» и «Super Meat Boy». Давайте попробуем создать нечто среднее между ними.
Читать дальше →
Всего голосов 93: ↑89 и ↓4+85
Комментарии46

Посты-рекордсмены

Время на прочтение5 мин
Количество просмотров104K
На Хабре я недавно (чуть меньше месяца), до этого Хабр практически не читал. Пришёл, огляделся, походил по тематическим «хабам», почитал «Лучшее за всё время», просмотрел статьи отдельных, заинтересовавших меня персонажей и понял, что для того, чтобы получше понять, как живёт и чем дышит это замечательное сообщество, мне придётся Хабр распарсить и позадавать ему разные вопросы. К тому же, раз уж в своих статьях я писал в основном об автореферентности в разных её проявлениях, как не написать на Хабре статью о Хабре?

Посмотрю, интересно ли это всё кому-либо кроме меня. Если интересно, напишу ещё несколько постов, идей и материала для этого более чем достаточно.

Если я ничего не пропустил в интерфейсе сайта, единственные списки самых-самых, которые можно посмотреть — это общий рейтинг пользователей и список статей, т.н. «Лучшее за всё время». Оба списка отсортированы по рейтингу (пользователей и статей, соответственно). Между тем, существует ещё куча параметров, по которым было бы интересно всё отранжировать.
Читать дальше →
Всего голосов 215: ↑202 и ↓13+189
Комментарии59

Много бесплатных книг по программированию

Время на прочтение7 мин
Количество просмотров345K
Читать дальше →
Всего голосов 202: ↑192 и ↓10+182
Комментарии42

Открытая разработка игры — отчет №0

Время на прочтение1 мин
Количество просмотров16K
В первую очередь благодаря Хабру мы начали активную разработку проекта, у которого теперь появилось рабочее название Хексагон(Hexagon). После предыдущей статьи у нас в команде появилось много единомышленников некоторые ушли, а некоторые подключились после.


Читать дальше →
Всего голосов 94: ↑78 и ↓16+62
Комментарии53

Как построить разработку дизайна очень большого и долгого проекта

Время на прочтение7 мин
Количество просмотров80K
Когда проект большой, дизайнеров над ним работает много, одновременно и очень далеко друг от друга — постоянно возникают проблемы.



Представим ситуацию. Есть не очень опытный проект-менеджер. На нем висит большой проект и три дизайнера, которые готовые над этим проектом поработать. Позвольте их представить — Вася, Лена и Петя (слева направо на картинке). Немного повысим уровень сложности нашим ребятам. Пусть все они находятся в разных городах, то есть за соседними столами не сидят, на пятничные попойки обеды вместе не ходят и иначе как через мессенджеры и почту связаться не могут. Проект большой и запланирован не на один месяц. Заказчик любит часто изменять свои решения или придумывать новые фичи.

Посмотрим как они выкрутятся?
Читать дальше →
Всего голосов 123: ↑117 и ↓6+111
Комментарии66

Подборка инструментов для создания веб-интерфейсов в стиле Metro

Время на прочтение1 мин
Количество просмотров65K
Представляю вашему вниманию подбору фреймворков, темплейтов, jquery-плагинов и иконок для создания интерфейсов в стиле Windows 8.

Читать дальше →
Всего голосов 95: ↑69 и ↓26+43
Комментарии55

Правильные социальные share-кнопки

Время на прочтение2 мин
Количество просмотров80K
Социальные сети все сильнее проникают в нашу жизнь: сегодня наличие у сайта страницы или группы в социальных сетях — скорее норма, чем исключение, а многие пользователи Вконтакте используют свою ленту в качестве агрегатора новостей с интересующих их сайтов. Самый простой и, наверное, эффективный способ привлечения трафика из соцсетей — это размещение share-кнопок на страницах сайта. В этой статье немного рассуждений о проблемах таких кнопок и попытка найти идеальное решение.

Внешний вид


Читать дальше →
Всего голосов 113: ↑85 и ↓28+57
Комментарии78

Компонент «Фильтрация и управление фильтрами» 1.2 для MODX Revolution

Время на прочтение3 мин
Количество просмотров19K
tagManager Наконец-то дошли руки довести до ума компонент «Фильтрация и управление фильтрами» (tagManager). Первая его версия была очень сырая, даже пришлось сделать дополнительно упрощённый вариант фильтрации. Теперь всё, что было задумано реализовано в нормальном виде и хочу рассказать об этом компоненте сообществу MODX и всем интересующимся.

Функции:
  • Сортировка групп фильтров и отдельно их значений.
  • Настройка активности групп фильтров и отдельных значений (чекбокс).
  • Изменение значений (по двойному клику появляется поле) для всех товаров, у которых есть это значение.
  • Ajax-фильтрация и сортировка товаров в каталоге.
  • Выводится число товаров по каждому фильтру. Блокируется получение пустого результата поиска.
  • Поддержка типов ввода TV с выбором одновременно нескольких значений — Флажки(checkbox), Список (множественный выбор).

Читать дальше →
Всего голосов 17: ↑15 и ↓2+13
Комментарии12

Сайт сделали, что дальше? Организация службы поддержки web-студии

Время на прочтение5 мин
Количество просмотров25K


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

Что происходит при отсутствии выделенной службы поддержки? Клиент ждет ответа, ждет доработок — да хоть какой-то реакции! — и не получает ее в ожидаемое время с ожидаемым качеством. Тогда клиент ищет другие варианты.

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

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

Читать дальше →
Всего голосов 27: ↑18 и ↓9+9
Комментарии37

Ни за что не угадаете

Время на прочтение1 мин
Количество просмотров81K


Дорогие Хабразнатоки!

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

Читать дальше →
Всего голосов 87: ↑66 и ↓21+45
Комментарии454

Про jQuery и велосипеды — мое дополнение

Время на прочтение6 мин
Количество просмотров64K
Сразу спешу сообщить вам, что я никоим образом не связан с автором предыдущей статьи. Однако, прочитав ее и увидев такой положительный отклик сообщества на статью, я тоже вдохновился и решил добавить немного своих наблюдений и знаний, к тому же это может послужить моей входной точкой в круги хабрасообщества.

Для затравки начнем с простого.
Читать дальше →
Всего голосов 242: ↑230 и ↓12+218
Комментарии126

Разработка 2D игр под Windows и HTML5 без программирования

Время на прочтение4 мин
Количество просмотров38K
image

Привет Хабраюзеры!

Сегодня я хочу представить вашему вниманию замечательный конструктор 2D игр (для Windows и в частности для HTML5) Scirra Construct.

Основным плюсом данного конструктора является то, что для создания игр не требуется никаких знаний языков программирования, все делается посредством построения действий во встроенной системе событий.
Читать дальше →
Всего голосов 102: ↑90 и ↓12+78
Комментарии49

Определение доминирующих тонов на изображении

Время на прочтение4 мин
Количество просмотров26K

Предыстория


Очень давно, когда мои познания в PHP были на уровне мат операций и вывода результатов, а нашел очень полезный класс, написанный Kalpeh Gamit, его сайт уже давно недоступен, поэтому, к сожалению контакты оставить не могу. Класс распространяется под именем GetImageColor и лицензией GPL 2.0.

Пользовался я этим классом частенько. Он принимает в качестве входного параметра изображение (только в формате JPEG, но за минуту дополняется всеми остальными), количество возвращаемых цветов и шаг обработки. Скрипт считывает цвет с фотографии с заданным шагом и заносит его в массив цветов. Итоговый массив отсортирован по вхождениям цветов и возвращается только заданное количество цветов.
Читать дальше →
Всего голосов 53: ↑51 и ↓2+49
Комментарии35
1

Информация

В рейтинге
Не участвует
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Дата рождения
Зарегистрирован
Активность