Pull to refresh

Книга «Coding4Fun: программируем для удовольствия»

Reading time4 min
Views1.9K
image
«Издание предназначено для тех разработчиков, кто хочет отвлечься от решения коммерческих бизнес-задач и сделать несколько проектов для души». Так начинается вводка к книге Coding4Fun / «Программируем для удовольствия» Дэна Фернандеса и Брайна Пика. Я бы добавил: предназначено для тех, кому по хорошему неймется, у кого руки чешутся до программирования, но вот с идеями проблема, когда «чего-то хочу, а кого не знаю» :) Я и сам периодически страдаю подобным кризисом самореализации — хочется что-то делать, изучать что-то новое, но не хватает некоего толчка, подсказки. И вот здесь на помощь как раз может прийти эта книга.

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

Глава первая: «Атака из космоса» — это описание алгоритма создания простой компьютерной игры с помощью фреймворка Microsoft XNA. Шаг за шагом, последовательно авторы рассказывают о том, как фактически с нуля написать собственную работающую игру на подобии классического арканоида. «Да кому сейчас такое нужно?», — спросите вы, и пожалуй будете правы — никому, а вернее — никому, кроме вас самих. Это всего лишь старт, отрывная точка для тех, кто возможно с детства мечтал написать свою игрушку, но толком не знал с чего начать и все как-то не хватало времени на то, чтоб этот вопрос изучить (ну вы меня понимаете). И вот оно! Дождались) Здесь Дэн и Брайн преподносят нам все на тарелочке, да еще и разжеванное. Мы узнаем, что нам больше не нужно волноваться о программировании низкоуровневых вещей на подобии движка игры, обработчика графики, перехватчика событий… все готово, основной инструментарий создан светлыми умами Microsoft на базе XNA Game Studio и теперь все, что нам осталось — это заняться непосредственно созданием лишь самого игрового мира. После реализации предложенного авторами варианта или даже хотя бы после его беглого просмотра, вы сразу же сможете начать творить самостоятельно, создавать что-то свое. Берем свежую идею, рисуем текстуры, запускаем Visual Studio (да, кстати, все примеры в книге основаны именно на ней) и вперед, ваять шедевр!

Или еще пример: глава 8 — «Машинка, управляемая с пульта Wiimote». Здесь нас ждет не только программирование, но и работа непосредственно с железом. Тут ребята организуют интерфейс для общения между, произведшего когда-то фурор в игровой индустрии, джойстика с акселерометром от Nintendo и обычной радиоуправляемой машинкой, кои сейчас есть почти в любом крупном магазине детских товаров. Паяльником придется поработать с «фиджетом» — переходником между цифрой (вашим компьютером) и аналоговой платой пульта машинки. Предлагается следующая схема: Wiimote (через Bluetooth) -> ПК (через USB) -> Phidget (через провода) -> пульт ДУ (через радио-сигнал) -> машинка. Программировать же придется логику поведения интерфейсной платы в зависимости от входных сигналов джойстика (используя готовый API того и другого), дабы смыкать и размыкать необходимые цепи радиоуправления. Все действия, которые потребуется совершить с железом, подробно описаны. Так же подробно документирован и использованный здесь исходный код на VB и C#. Поясняется все действительно очень доступно, хоть и кратко, без лишней воды, а ведь осваиваются такие любопытные вещи, что от идей о применении которых, кружится голова. При наличии всех необходимых устройств и знаний хотя бы азов программирования, с задачей справится даже ваша бабушка ;)

Остальные главы не менее интересны. Здесь не самые тривиальные задачи решаются быстро, легко и со здоровым азартом. Плюс, что лично мне показалось в этой книге особенно ценно — это даже не столь сами идеи, которые предлагают авторы, и даже не тот потенциал, который можно развить, дойдя до точки в любой из глав, но не поставив точку на самом проекте, который в ней описан, а впечатлил меня всевозможный арсенал, который демонстрируется со страниц издания. Я действительно узнал для себя много новых и интересных вещей. Каждую задачу предложено решить определенным способом, используя некоторый набор софта, а где-то и железа, и вот на этот набор следует обратить особое внимание. Как я писал в самом начале, часто хочется изучить что-то новое, но толком не знаешь, что именно. Coding4Fun дает в этом плане широчайшее раздолье. Прежде всего — это приятная неожиданность: Microsoft не за все на свете требует плату — Visual Studio (необходимую для реализации приводимых здесь идей) вы можете получить совершенно бесплатно (причем, официально) в виде Express-версий (для C#, VB и WebDeveloper). Далее, можно познакомиться с такими вещами как, например: XNA Game Studio для написания игр (говорилось о ней выше), узнать основы языка программирования Lua, взглянуть на методологию работы с API YouTub'a, ознакомиться с принципами работы Popfly для создания mashup-приложений, будет рассмотрена полезнейшая утилита ffmpeg и кратко изучен принцип работы фреймворка WCF, рассказывается о таком железе, как wiimote, интерфейсные платы, инфракрасное перо и о том, как эти вещи могут взаимодействовать между собой непосредственно и на программном уровне, а также затрагивается вопрос портирования софта с Windows на Xbox 360 и другие платформы. Короче говоря, богатейший материал для изучения, который будет являться замечательным толчком или даже скорее пинком для дальнейшего саморазвития и последующей реализации всего нового, доброго, светлого…

В заключении пара оговорок. Да, задачи собранные в книге хоть и разнообразны, но ориентированы скорее на средний уровень знаний, матерым профи они могут показать неинтересными, но, как я уже писал, вся соль не в этом, а в том заряде, который эта книга несет, в том как она подстегивает на изучение чего-то нового и создание чего-то уникального, и вот с этим она справляется на отлично. И да, бОльшая часть описываемых инструментов так или иначе связана с продуктами Microsoft, что может отпугнуть злопыхателей этой компании и ярых сторонников open_source, но лично мне это ни чуть не помешало, а скорее даже наоборот — все инструменты легкодоступны, просты в установке и освоении даже для новичков, что лишь содействует приобщению к лиге true-программистов новых адептов — творческих личностей, ищущих пути выражения своего потенциала. Эта книга для вас. Эта книга для нас. Эта книга для всех фанатов программирования. Программирования для удовольствия :-)

P.S. Издательство: «Символ-Плюс». ISBN 978-5-93286-166-0
Tags:
Hubs:
+7
Comments11

Articles

Change theme settings