ISBN: 978-5-04-102290-7 · Код: ITD000000000961588 · Издательство: ООО "Издательство "Эксмо"









Хороший код — основа любой игры. Работа игрового программиста состоит из множества задач, среди которых оптимизация игры, повышение производительности и создание надежной архитектуры. Одна из наиболее частых проблем, с которыми сталкиваются программисты, — разрастание кода до неконтролируемых размеров, что нередко обескураживает команду и даже встает на пути выхода игры. Как с этим бороться? У автора книги, программиста Electronic Arts Роберта Нистрема, есть для вас парочка действенных советов. Каждая глава книги — набор эффективных паттернов программирования, которые вы можете использовать в работе в готовом виде или улучшать и комбинировать их на свой лад для вашей собственной игры. «Лучший сборник практических рецептов реализации типовых задач в играх. Компактно, понятно, без информационного шума. Равномерный срез огромного пласта решений, уже принятых в игровой индустрии. Эта книга — отличная начальная точка для углубленного изучения конкретных алгоритмов и реализаций». — Кирилл Шабордин, CTO, W4 Kit / Cubelaria
{"details": {"LINK": "https://cdn.eksmo.ru/v2/ITD000000000961588/PDF/ITD000000000961588.pdf", "MTIME": "2021-08-18 14:49:18"}, "variant": "PREVIEW"}{"details": {"LINK": "https://cdn.eksmo.ru/v2/ITD000000000961588/PDF/ITD000000000961588_TOC.pdf", "MTIME": "2021-12-15 03:37:45"}, "variant": "TOC"}AGE_GROUP: Взрослая группаAUTHOR[]: Нистрем РобертCLASSIFICATOR: 11168CODE_TNVED: 4901990000DEPARTMENT: Группа ИТ-литературыDIVID: 120 - Редакция № 5EKSMO_RDC: ЭксмоFOLDER: Книжная продукция (ЭКСМО)FORMAT: 70x100/16IZDAT_BRAND: БОМБОРАLAST_STANDART: 6MEDIA: НетНосителяNICHE: ИНФОРМАТИКА. КОМПЬЮТЕРНАЯ ЛИТЕРАТУРА. ЭЛЕКТРОНИКАNOMGROUP: КнижнаяПродукцияPAPER: Бумага офсетная 70/65PEREPLET_TYPE: 7БЦPEREPLET_TYPE_OLD: 7БЦPRIZNAK_ZV: НетPRODUCT_VID: КнигаPROIZ[]: Game Programming PatternsPROIZ[]: Паттерны игрового программированияPROIZ[]: Паттерны игрового программированияPROIZ[]: Паттерны программирования игрPROIZ[]: Паттерны программирования игрPROIZ[]: Паттерны программирования игрPROIZ[]: Паттерны программирования игр (довнесение правок)PUBLISHER: ООО "Издательство "Эксмо"SERIE: Мировой компьютерный бестселлер. Гейм-дизайнSGMNT: ПРОФЕССИОНАЛЬНАЯ И НАУЧНАЯ ЛИТЕРАТУРА. ДЕЛОВАЯ ЛИТЕРАТУРА (ПРЛ)SUBJECT: ПОПУЛЯРНАЯ КОМПЬЮТЕРНАЯ ЛИТЕРАТУРАTAGS[]: ПрограммированиеTARGET: Научно-популярное изданиеTIP_KORESHKA: ПолукруглыйVID_PROIZV: ВпервыеVID_SKREPLENIYA: ШитьеНиткойVOZRASTNOE_OGRANICHENIE: 12+| AGE_GROUP | {
"GUID": "08501aa5-3ee0-11e2-82d6-5ef3fc5021a7",
"NAME": "Взрослая группа"
} |
|---|---|
| ANNOTACIA | |
| AUTHOR | [
{
"CODE": "ITD035910",
"GUID": "f919dd17-3aa3-11e9-8679-000af77e485f",
"NAME": "Нистрем Роберт",
"SURNAME": "Нистрем",
"IS_GROUP": "false",
"PSEVDONIM": false,
"DATE_BIRTH": "0000-00-00 00:00:00",
"DATE_DEATH": "0000-00-00 00:00:00",
"FIRST_NAME": "Роберт",
"IS_PISATEL": "true",
"IS_HUDOJNIK": "false",
"SECOND_NAME": "",
"IS_PEREVODCHIK": "false"
}
] |
| AUTHOR_COVER | Роберт Нистрем |
| AUTHOR_FOR_PRICE | Нистрем Р. |
| BARCODE | [ "14600194577550", "14600195399113", "9785041022907" ] |
| BARCODE_DETAIL | [
{
"BARCODE": "14600194577550",
"STANDART": 6,
"ITEM_TYPE": {
"GUID": "03369aa4-1237-11ec-80c4-0050569a365d",
"NAME": "пач"
},
"BARCODE_TYPE": {
"GUID": "dce9f404-0286-4da8-8b3d-7d91f6e2108f",
"NAME": "ITF14"
}
},
{
"BARCODE": "14600195399113",
"STANDART": 6,
"ITEM_TYPE": {
"GUID": "03369aa4-1237-11ec-80c4-0050569a365d",
"NAME": "пач"
},
"BARCODE_TYPE": {
"GUID": "dce9f404-0286-4da8-8b3d-7d91f6e2108f",
"NAME": "ITF14"
}
},
{
"BARCODE": "9785041022907",
"STANDART": 1,
"ITEM_TYPE": {
"GUID": "d01a311b-0556-4692-98fe-d3c9f39c2585",
"NAME": "шт"
},
"BARCODE_TYPE": {
"GUID": "39fddca4-7cc4-49d4-a09d-9fe5517b4df6",
"NAME": "EAN13"
}
}
] |
| CERT | [] |
| CICLE | [] |
| CLASSIFICATOR | {
"CODE": "000000363",
"ID_EKN": "11339",
"CODE_EKN": "114.22.1.1"
} |
| CODE_OKPD2 | |
| CODE_TNVED | 4901990000 |
| COVERS | {
"cover1": {
"H": 2135,
"W": 1488,
"DPI": "225x225",
"LINK": "https://cdn.eksmo.ru/v2/ITD000000000961588/COVER/cover1.jpg",
"SIZE": "294664",
"MTIME": "2022-04-18 15:02:57"
},
"cover4": {
"H": 2135,
"W": 1488,
"DPI": "225x225",
"LINK": "https://cdn.eksmo.ru/v2/ITD000000000961588/COVER/cover4.jpg",
"SIZE": "351223",
"MTIME": "2022-04-18 15:03:00"
},
"siluet": {
"H": 3475,
"W": 2500,
"DPI": "72x72",
"LINK": "https://cdn.eksmo.ru/v2/ITD000000000961588/COVER/siluet.jpg",
"SIZE": "581335",
"MTIME": "2022-04-19 11:11:21"
},
"banner1": {
"H": 1200,
"W": 900,
"DPI": "72x72",
"LINK": "https://cdn.eksmo.ru/v2/ITD000000000961588/COVER/banner1.jpg",
"SIZE": "575127",
"MTIME": "2023-01-31 16:50:47"
},
"banner2": {
"H": 1200,
"W": 900,
"DPI": "72x72",
"LINK": "https://cdn.eksmo.ru/v2/ITD000000000961588/COVER/banner2.jpg",
"SIZE": "565769",
"MTIME": "2023-01-31 16:50:56"
},
"banner3": {
"H": 1200,
"W": 900,
"DPI": "72x72",
"LINK": "https://cdn.eksmo.ru/v2/ITD000000000961588/COVER/banner3.jpg",
"SIZE": "622767",
"MTIME": "2023-01-31 16:51:06"
},
"cover3d": {
"H": 2904,
"W": 2029,
"DPI": "300x300",
"LINK": "https://cdn.eksmo.ru/v2/ITD000000000961588/COVER/cover3d.jpg",
"SIZE": "542404",
"MTIME": "2022-04-18 15:02:58"
},
"dopfoto00": {
"H": 1200,
"W": 900,
"DPI": "72x72",
"LINK": "https://cdn.eksmo.ru/v2/ITD000000000961588/COVER/dopfoto00.jpg",
"SIZE": "624458",
"MTIME": "2023-01-31 16:51:18"
},
"cover_audio": {
"H": 800,
"W": 800,
"DPI": "72x72",
"LINK": "https://cdn.eksmo.ru/v2/ITD000000000961588/COVER/cover_audio.jpg",
"SIZE": "301210",
"MTIME": "2022-04-19 07:59:07"
}
} |
| DEPARTMENT | {
"GUID": "e9c840eb-a9be-11eb-80c1-0050569a365d",
"NAME": "Группа ИТ-литературы"
} |
| DIVID | {
"GUID": "498ad3de-5910-11e0-9747-001a64231342",
"NAME": "120 - Редакция № 5"
} |
| DOP_REKVIZIT | {
"HUDOJNIKI": [],
"OGLAVLENIE": "",
"VOZRAST_TO": "",
"AUTHOR_ABOUT": "Роберт Нистрем профессионально программировал в течение двадцати лет, восемь из которых он проработал в Electronic Arts. Ему нравится создавать правильный и красивый код, и он убежден, что это занятие как ни что другое развивает творческие способности. Роберт живет со своей женой и двумя дочерьми в Сиэтле.",
"PEREVODCHIKI": [],
"VOZRAST_FROM": ""
} |
| EDFUL | 4000 |
| EKSMO_RDC | Эксмо |
| FA_COMMENT | |
| FA_GROUP | |
| FA_MONTH | |
| FOLDER | {
"GUID": "6fabf075-b63a-4f6d-a879-9e40d163ec40",
"NAME": "Книжная продукция (ЭКСМО)"
} |
| FORMAT | {
"CODE": "102",
"GUID": "a791b9ce-4f06-11e0-a01d-001a64231342",
"NAME": "70x100/16"
} |
| GENRE | [] |
| GOD_PERVOGO_IZDANIYA | 2019 |
| GUID | 21b98da6-c1d2-4435-897f-5c2f2ffcbfc8 |
| GUID_NOM | 2c8a4de9-3aa2-11e9-8679-000af77e485f |
| ISBN | 978-5-04-102290-7 |
| ISBN_DIG | 9785041022907 |
| IS_DEL | Нет |
| IS_ZAPRET_PREVIEW | Нет |
| IZDAT_BRAND | {
"GUID": "2111b00b-cf7b-11e7-9ec5-000af77e485f",
"NAME": "БОМБОРА"
} |
| LAST_STANDART | 6 |
| LDATE | 17.01.2022 |
| MEDIA | НетНосителя |
| NAME | Паттерны программирования игр |
| NAME_FOR_PRICE | Паттерны программирования игр |
| NICHE | {
"GUID": "e009c84e-4f03-11e0-a01d-001a64231342",
"NAME": "ИНФОРМАТИКА. КОМПЬЮТЕРНАЯ ЛИТЕРАТУРА. ЭЛЕКТРОНИКА",
"OWNER_GUID": "e009c820-4f03-11e0-a01d-001a64231342"
} |
| NOMCODE | ITD000000000961588 |
| NOMGROUP | КнижнаяПродукция |
| PAGES | 432 |
| PAPER | Бумага офсетная 70/65 |
{
"TOC": {
"LINK": "https://cdn.eksmo.ru/v2/ITD000000000961588/PDF/ITD000000000961588_TOC.pdf",
"MTIME": "2021-12-15 03:37:45"
},
"PREVIEW": {
"LINK": "https://cdn.eksmo.ru/v2/ITD000000000961588/PDF/ITD000000000961588.pdf",
"MTIME": "2021-08-18 14:49:18"
}
} | |
| PEREPLET_TYPE | {
"GUID": "a791ba90-4f06-11e0-a01d-001a64231342",
"NAME": "7БЦ"
} |
| PEREPLET_TYPE_OLD | {
"GUID": "bff8c2c1-656e-11de-84c5-000423b38f2a",
"NAME": "7БЦ"
} |
| POSLE_OBREZA | 162x235 |
| PREDZAKAZ_SOAP | N |
| PRIZNAK_ZV | Нет |
| PRODCODE | ITD000000000961588 |
| PRODUCT_VID | {
"GUID": "a791ba7e-4f06-11e0-a01d-001a64231342",
"NAME": "Книга"
} |
| PROD_TEXT | Хороший код — основа любой игры. Работа игрового программиста состоит из множества задач, среди которых оптимизация игры, повышение производительности и создание надежной архитектуры. Одна из наиболее частых проблем, с которыми сталкиваются программисты, — разрастание кода до неконтролируемых размеров, что нередко обескураживает команду и даже встает на пути выхода игры. Как с этим бороться? У автора книги, программиста Electronic Arts Роберта Нистрема, есть для вас парочка действенных советов. Каждая глава книги — набор эффективных паттернов программирования, которые вы можете использовать в работе в готовом виде или улучшать и комбинировать их на свой лад для вашей собственной игры. «Лучший сборник практических рецептов реализации типовых задач в играх. Компактно, понятно, без информационного шума. Равномерный срез огромного пласта решений, уже принятых в игровой индустрии. Эта книга — отличная начальная точка для углубленного изучения конкретных алгоритмов и реализаций». — Кирилл Шабордин, CTO, W4 Kit / Cubelaria |
| PROIZ | [
{
"VID": {
"GUID": "3f9f48d2-4f09-11e0-a01d-001a64231342",
"NAME": "Рукопись"
},
"GUID": "e5ac55cb-9630-11e8-94bf-0050569c29c2",
"NAME": "Game Programming Patterns",
"LANGUAGE": "Английский",
"AUTHOR_GUID": "f919dd17-3aa3-11e9-8679-000af77e485f",
"IS_TRANSLATE": "false"
},
{
"VID": {
"GUID": "3f9f48d2-4f09-11e0-a01d-001a64231342",
"NAME": "Рукопись"
},
"GUID": "1df824ae-3aa2-11e9-8679-000af77e485f",
"NAME": "Паттерны игрового программирования",
"LANGUAGE": "Русский",
"AUTHOR_GUID": "e0a64af0-726b-11e0-a4f2-001a64231342",
"IS_TRANSLATE": "true",
"ORIGINAL_PROIZV": {
"GUID": "e5ac55cb-9630-11e8-94bf-0050569c29c2",
"NAME": "Game Programming Patterns",
"LANGUAGE": "Английский"
}
},
{
"VID": {
"GUID": "ecc37d51-daa7-11e0-8449-5ef3fc5021fb",
"NAME": "РИП"
},
"GUID": "7d3a8218-051e-11ea-a186-000af77e4763",
"NAME": "Паттерны игрового программирования",
"LANGUAGE": "",
"AUTHOR_GUID": "bff8c2b7-656e-11de-84c5-000423b38f2a",
"IS_TRANSLATE": "false"
},
{
"VID": {
"GUID": "ecc37d51-daa7-11e0-8449-5ef3fc5021fb",
"NAME": "РИП"
},
"GUID": "9e1863b6-a682-11eb-80c1-0050569a365d",
"NAME": "Паттерны программирования игр",
"LANGUAGE": "",
"AUTHOR_GUID": "bff8c2b7-656e-11de-84c5-000423b38f2a",
"IS_TRANSLATE": "false"
},
{
"VID": {
"GUID": "2821b0a0-ce10-11e0-9556-5ef3fc5021fb",
"NAME": "Оригинал-макет"
},
"GUID": "a3eaa0d8-ace3-11eb-80c1-0050569a365d",
"NAME": "Паттерны программирования игр",
"LANGUAGE": "",
"AUTHOR_GUID": "d750fbd3-64ee-11e9-a33d-000af77e485f",
"IS_TRANSLATE": "false"
},
{
"VID": {
"GUID": "ecc37d51-daa7-11e0-8449-5ef3fc5021fb",
"NAME": "РИП"
},
"GUID": "cbbc2227-d00f-11eb-80c4-0050569a365d",
"NAME": "Паттерны программирования игр",
"LANGUAGE": "",
"AUTHOR_GUID": "d0e3e63f-e51a-11e1-8207-5ef3fc5021fb",
"IS_TRANSLATE": "false"
},
{
"VID": {
"GUID": "2821b0a0-ce10-11e0-9556-5ef3fc5021fb",
"NAME": "Оригинал-макет"
},
"GUID": "bb9aa106-f369-11eb-80c4-0050569a365d",
"NAME": "Паттерны программирования игр (довнесение правок)",
"LANGUAGE": "",
"AUTHOR_GUID": "d750fbd3-64ee-11e9-a33d-000af77e485f",
"IS_TRANSLATE": "false"
}
] |
| PUBLISHER | {
"GUID": "2a734e3d-a107-11de-8bc8-00265518a912",
"NAME": "ООО \"Издательство \"Эксмо\""
} |
| P_BOX | false |
| QUOTES | [ "", "", "", "", "", "" ] |
| REMAINDER | {
"TOTAL": "нет"
} |
| RIN | |
| SCOVR | |
| SDATE | 10.09.2021 |
| SERIE | {
"GUID": "a9b8d1e9-b204-11e9-a186-000af77e4763",
"NAME": "Мировой компьютерный бестселлер. Гейм-дизайн"
} |
| SGMNT | {
"GUID": "e009c820-4f03-11e0-a01d-001a64231342",
"NAME": "ПРОФЕССИОНАЛЬНАЯ И НАУЧНАЯ ЛИТЕРАТУРА. ДЕЛОВАЯ ЛИТЕРАТУРА (ПРЛ)"
} |
| SIZES | {
"DEPTH": 25,
"WIDTH": 170,
"HEIGHT": 242.5,
"KARTON": {
"WIDTH": "160",
"HEIGHT": "243"
},
"WEIGHT": 688
} |
| SUBJECT | {
"GUID": "e640821a-4f03-11e0-a01d-001a64231342",
"NAME": "ПОПУЛЯРНАЯ КОМПЬЮТЕРНАЯ ЛИТЕРАТУРА",
"OWNER_GUID": "e009c84e-4f03-11e0-a01d-001a64231342"
} |
| SUPER | false |
| TAGS | [
{
"GUID": "1fc3f0a2-27dd-11eb-80be-0050569a365d",
"NAME": "Программирование"
}
] |
| TARGET | {
"GUID": "667fc7fa-4fbf-11e0-9f50-001a64231342",
"NAME": "Научно-популярное издание"
} |
| TIP_KORESHKA | Полукруглый |
| TIRAJ | [
{
"GUID": "0d2ade75-3aa4-11e9-8679-000af77e485f",
"XO_DATE": "05.08.2021",
"PLAN_DATE": "17.09.2021",
"TIRAJ_CODE": "ITD00278223",
"TIRAJ_TYPE": "О",
"FAKTICHESKAYA_DATA": "10.09.2021",
"TOLSHCINA_KORESHKA": "23",
"SOGLASOVANNAYA_DATA": "17.09.2021",
"PLAN_DATE_TREBUEMAYA": "17.09.2021",
"PLAN_VYPUSKA_OSN_TIR": "13.09.2021",
"TIRAJ_DT_RAZR_V_PECHAT": "01.01.0001 0:00:00"
},
{
"GUID": "fef3cec2-5420-11ec-80c5-0050569a365d",
"XO_DATE": "08.12.2021",
"PLAN_DATE": "17.01.2022",
"TIRAJ_CODE": "ITD00443251",
"TIRAJ_TYPE": "Д",
"FAKTICHESKAYA_DATA": "17.01.2022",
"TOLSHCINA_KORESHKA": "23",
"SOGLASOVANNAYA_DATA": "20.01.2022",
"PLAN_DATE_TREBUEMAYA": "17.01.2022",
"PLAN_VYPUSKA_OSN_TIR": "18.01.2022",
"TIRAJ_DT_RAZR_V_PECHAT": "01.01.0001 0:00:00"
}
] |
| TOM_NUM | 0 |
| TSELOFANIROVANIE | false |
| VID_PROIZV | Впервые |
| VID_SKREPLENIYA | ШитьеНиткой |
| VOZRASTNOE_OGRANICHENIE | 12+ |
| ZAPRET | Нет |
| ZAPRET_PO_KANALAM | [] |
| ZAPRET_PRODAJ_DATA_SNIATIYA | |
| ZVEZDNOST |
Атрибуты показаны в том виде, в котором их передал API поставщика.