465 lines
35 KiB
JavaScript
465 lines
35 KiB
JavaScript
![]() |
{
|
|||
|
"translatorID": "73be930f-5773-41b2-a7a1-37c0eeade92f",
|
|||
|
"label": "OZON.ru",
|
|||
|
"creator": "Mikhail Akimov",
|
|||
|
"target": "^https?://www\\.ozon\\.ru/(context/detail/id/|\\?context=search)",
|
|||
|
"minVersion": "3.0",
|
|||
|
"maxVersion": "",
|
|||
|
"priority": 100,
|
|||
|
"inRepository": true,
|
|||
|
"translatorType": 4,
|
|||
|
"browserSupport": "gcsibv",
|
|||
|
"lastUpdated": "2017-01-04 20:51:33"
|
|||
|
}
|
|||
|
|
|||
|
/*
|
|||
|
OZON.ru Translator
|
|||
|
Copyright (C) 2015 Mikhail Akimov
|
|||
|
Copyright (C) 2017 Philipp Zumstein
|
|||
|
|
|||
|
This program is free software: you can redistribute it and/or modify
|
|||
|
it under the terms of the GNU Affero General Public License as published by
|
|||
|
the Free Software Foundation, either version 3 of the License, or
|
|||
|
(at your option) any later version.
|
|||
|
|
|||
|
This program is distributed in the hope that it will be useful,
|
|||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|||
|
GNU Affero General Public License for more details.
|
|||
|
|
|||
|
You should have received a copy of the GNU Affero General Public License
|
|||
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
|
*/
|
|||
|
|
|||
|
|
|||
|
function detectWeb(doc, url) {
|
|||
|
if (ZU.xpathText(doc, '//div[contains(@class, "bContentColumn")]/script[contains(., "Core.Namespace.exp")]')) {
|
|||
|
return "book";
|
|||
|
} else if (getSearchResults(doc, true)) {
|
|||
|
return "multiple";
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
function getSearchResults(doc, checkOnly) {
|
|||
|
var items = {};
|
|||
|
var found = false;
|
|||
|
var rows = ZU.xpath(doc, '//a[@itemprop="url" and contains(@href, "/context/detail/id/")]');
|
|||
|
for (var i=0; i<rows.length; i++) {
|
|||
|
var href = rows[i].href;
|
|||
|
var title = ZU.trimInternal(rows[i].textContent);
|
|||
|
if (!href || !title) continue;
|
|||
|
if (checkOnly) return true;
|
|||
|
found = true;
|
|||
|
items[href] = title;
|
|||
|
}
|
|||
|
return found ? items : false;
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
function doWeb(doc, url) {
|
|||
|
if (detectWeb(doc, url) == "multiple") {
|
|||
|
Zotero.selectItems(getSearchResults(doc, false), function (items) {
|
|||
|
if (!items) {
|
|||
|
return true;
|
|||
|
}
|
|||
|
var articles = [];
|
|||
|
for (var i in items) {
|
|||
|
articles.push(i);
|
|||
|
}
|
|||
|
ZU.processDocuments(articles, scrape);
|
|||
|
});
|
|||
|
} else {
|
|||
|
scrape(doc, url);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
function scrape(doc, url) {
|
|||
|
var script = ZU.xpathText(doc, '//div[contains(@class, "bContentColumn")]/script[contains(., "Core.Namespace.exp")]');
|
|||
|
var start = script.indexOf('{');
|
|||
|
var end = script.lastIndexOf('}');
|
|||
|
var data = script.substring(start, end+1);
|
|||
|
var json = JSON.parse(data);
|
|||
|
//Z.debug(json.Capabilities.Capabilities);
|
|||
|
|
|||
|
var item = new Zotero.Item('book');
|
|||
|
item.title = json.NameVm.Name;
|
|||
|
|
|||
|
for (var property in json.Capabilities.Capabilities) {
|
|||
|
var name = json.Capabilities.Capabilities[property].Name;
|
|||
|
var value = json.Capabilities.Capabilities[property].Value;//this can be either a text string or an array of values (e.g. publisher, authors)
|
|||
|
var role = null;
|
|||
|
|
|||
|
switch (name) {
|
|||
|
//All creatorss are handled the same except that the role
|
|||
|
//depends on the label and therefore depending on the
|
|||
|
//entrypoint of these cases:
|
|||
|
case "Редактор":
|
|||
|
case "Редакторы":
|
|||
|
if (!role) role = "editor";
|
|||
|
case "Переводчик":
|
|||
|
case "Переводчики":
|
|||
|
if (!role) role = "translator";
|
|||
|
case "Автор":
|
|||
|
case "Авторы":
|
|||
|
if (!role) role = "author";
|
|||
|
for (var i=0; i<value.length; i++) {
|
|||
|
item.creators.push(ZU.cleanAuthor(value[i].Text, role));
|
|||
|
}
|
|||
|
break;
|
|||
|
case "Год выпуска":
|
|||
|
item.date = getValue(value);
|
|||
|
break;
|
|||
|
case "Издательства":
|
|||
|
case "Издательство":
|
|||
|
item.publisher = getValue(value);
|
|||
|
break;
|
|||
|
case "ISBN":
|
|||
|
item.ISBN = getValue(value);
|
|||
|
break;
|
|||
|
case "Язык издания":
|
|||
|
item.language = getValue(value, true);
|
|||
|
break;
|
|||
|
case "Количество страниц":
|
|||
|
item.numPages = getValue(value);
|
|||
|
break;
|
|||
|
case "Серия":
|
|||
|
item.series = getValue(value);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
if (json.Description && json.Description.FirstBlock) {
|
|||
|
item.abstractNote = ZU.cleanTags(json.Description.FirstBlock.Text);
|
|||
|
}
|
|||
|
|
|||
|
item.complete();
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
function getValue(jsonSnippet, normalize) {
|
|||
|
var codes = {
|
|||
|
'русский': 'ru',
|
|||
|
'английский': 'en',
|
|||
|
'французский': 'fr',
|
|||
|
'немецкий': 'de',
|
|||
|
'итальянский': 'it',
|
|||
|
'испанский': 'es'
|
|||
|
};
|
|||
|
|
|||
|
if (Array.isArray(jsonSnippet)) {
|
|||
|
return jsonSnippet.map(function(obj) { return obj.Text; }).join(", ");
|
|||
|
}
|
|||
|
|
|||
|
if (normalize) {
|
|||
|
var t = jsonSnippet = jsonSnippet.trim().toLowerCase();Z.debug(t);
|
|||
|
if (codes[t]) {
|
|||
|
return codes[t];
|
|||
|
}
|
|||
|
}
|
|||
|
return jsonSnippet
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
/** BEGIN TEST CASES **/
|
|||
|
var testCases = [
|
|||
|
{
|
|||
|
"type": "web",
|
|||
|
"url": "http://www.ozon.ru/context/detail/id/87889/",
|
|||
|
"items": [
|
|||
|
{
|
|||
|
"itemType": "book",
|
|||
|
"title": "Язык программирования C++",
|
|||
|
"creators": [
|
|||
|
{
|
|||
|
"firstName": "Бьерн",
|
|||
|
"lastName": "Страуструп",
|
|||
|
"creatorType": "author"
|
|||
|
}
|
|||
|
],
|
|||
|
"date": "1999",
|
|||
|
"ISBN": "9785794000313 9785798901272 9780201889543",
|
|||
|
"abstractNote": "Книга Бьерна Страуструпа является каноническим изложением возможностей С++, написанным автором этого популярнейшего языка программирования. Помимо подробного описания самого языка, на страницах книги вы найдете множество доказавших свою эффективность подходов к решению разнообразных задач программирования и проектирования. Многочисленные примеры демонстрируют как хороший стиль программирования на С - совместимом ядре С++, так и современный объектно - ориентированный подход к созданию программных продуктов. Данное третье издание бестселлера было существенно переработано автором. С одной стороны, результатом этой переработки стала большая доступность книги для новичков. С другой стороны, текст обогатился сведениями и техниками программирования, которые могут оказаться полезными даже для многоопытных специалистов по С++. Разумеется, не обойдены вниманием и нововведения языка: стандартная библиотека шаблонов (STL), пространства имен (namespaces), механизм идентификации типов во время выполнения (RTTI), явныеприведения типов (cast - операторы) и другие. Книга адресована программистам, использующим в своей повседневной работе С++. Она также будет полезна преподавателям, студентам и всем, кто хочет ознакомиться с описанием языка `из первых рук`.",
|
|||
|
"language": "ru",
|
|||
|
"libraryCatalog": "OZON.ru",
|
|||
|
"numPages": "991",
|
|||
|
"publisher": "Невский Диалект, Бином",
|
|||
|
"attachments": [],
|
|||
|
"tags": [],
|
|||
|
"notes": [],
|
|||
|
"seeAlso": []
|
|||
|
}
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"type": "web",
|
|||
|
"url": "http://www.ozon.ru/context/detail/id/87972/",
|
|||
|
"items": [
|
|||
|
{
|
|||
|
"itemType": "book",
|
|||
|
"title": "Объектно - ориентированный анализ и проектирование с примерами приложений на С++",
|
|||
|
"creators": [
|
|||
|
{
|
|||
|
"firstName": "Автор не",
|
|||
|
"lastName": "указан",
|
|||
|
"creatorType": "author"
|
|||
|
},
|
|||
|
{
|
|||
|
"firstName": "Грэди",
|
|||
|
"lastName": "Буч",
|
|||
|
"creatorType": "author"
|
|||
|
}
|
|||
|
],
|
|||
|
"date": "1998",
|
|||
|
"ISBN": "9780805353402 9785798900671 9785794000177",
|
|||
|
"abstractNote": "Книга Гради Буча, признанного эксперта в области объекто - ориентированной методологии разработки программного обеспечения, содержит классическое изложение вопросов анализа и проектирования сложных систем. В первой части книги автор исследует суть фундаментальных понятий ООП (таких как `класс`, `объект`, `наследование`), анализирует концепции, лежащие в основе объектно - ориентированных языков и методик разработки. Вторая часть содержит подробное описание обозначений (известных как `нотация Буча`), давноуже ставших родными для тысяч разработчиков во всем мире. Здесь же автор делится своим богатым опытом организации процесса разработки программ, дает рекомендации по подбору команды и планированию промежуточных релизов. В третьей части изложенные ранее методы применяются для анализа и проектирования нескольких приложений. На глазах у читателя создается каркас соответствующих систем, принимаются принципиальные проектные решения. Книга будет полезна аналитикам и разработчикам программного обеспечения, преподавателям и студентам высших учебных заведений. По сравнению с первым изданием книга несколько дополнена (что отразилось и в названии), все примеры приведены на языке С++.",
|
|||
|
"language": "ru",
|
|||
|
"libraryCatalog": "OZON.ru",
|
|||
|
"numPages": "560",
|
|||
|
"publisher": "Невский Диалект, Бином",
|
|||
|
"attachments": [],
|
|||
|
"tags": [],
|
|||
|
"notes": [],
|
|||
|
"seeAlso": []
|
|||
|
}
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"type": "web",
|
|||
|
"url": "http://www.ozon.ru/context/detail/id/117417/",
|
|||
|
"items": [
|
|||
|
{
|
|||
|
"itemType": "book",
|
|||
|
"title": "Применение UML и шаблонов проектирования. Введение в объектно-ориентированный анализ и проектирование",
|
|||
|
"creators": [
|
|||
|
{
|
|||
|
"firstName": "Крэг",
|
|||
|
"lastName": "Ларман",
|
|||
|
"creatorType": "author"
|
|||
|
}
|
|||
|
],
|
|||
|
"date": "2001",
|
|||
|
"ISBN": "9785845901255 9780137488803",
|
|||
|
"abstractNote": "Те, кто еще не знакомы с вопросами объектно-ориентированного анализа и проектирования, наверняка планируют освоить эту область знаний. Данная книга станет хорошим путеводителем и позволит шаг за шагом пройти путь от определения требований к системе до создания кода. В книге рассматривается унифицированный язык моделирования UML, который является признанным стандартом для описания моделей и обеспечивает возможность общения между разработчиками. Для иллюстрации всего процесса объектно-ориентированного анализа и проектирования в книге приводится исчерпывающее описание реального примера. В нем показано, как перейти от этапа объектно-ориентированного проектирования к созданию кода на языке Java. Книга рассчитана на читателей с различным уровнем подготовки, интересующихся вопросами объектно-ориентированного анализа и проектирования.",
|
|||
|
"language": "ru",
|
|||
|
"libraryCatalog": "OZON.ru",
|
|||
|
"numPages": "496",
|
|||
|
"publisher": "Вильямс",
|
|||
|
"attachments": [],
|
|||
|
"tags": [],
|
|||
|
"notes": [],
|
|||
|
"seeAlso": []
|
|||
|
}
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"type": "web",
|
|||
|
"url": "http://www.ozon.ru/context/detail/id/1335648/",
|
|||
|
"items": [
|
|||
|
{
|
|||
|
"itemType": "book",
|
|||
|
"title": "Искусство программирования. Том 1. Основные алгоритмы",
|
|||
|
"creators": [
|
|||
|
{
|
|||
|
"firstName": "Дональд Эрвин",
|
|||
|
"lastName": "Кнут",
|
|||
|
"creatorType": "author"
|
|||
|
},
|
|||
|
{
|
|||
|
"firstName": "Ю.",
|
|||
|
"lastName": "Козаченко",
|
|||
|
"creatorType": "editor"
|
|||
|
},
|
|||
|
{
|
|||
|
"firstName": "С.",
|
|||
|
"lastName": "Тригуб",
|
|||
|
"creatorType": "translator"
|
|||
|
},
|
|||
|
{
|
|||
|
"firstName": "Ю.",
|
|||
|
"lastName": "Гордиенко",
|
|||
|
"creatorType": "translator"
|
|||
|
},
|
|||
|
{
|
|||
|
"firstName": "И.",
|
|||
|
"lastName": "Красикова",
|
|||
|
"creatorType": "translator"
|
|||
|
}
|
|||
|
],
|
|||
|
"date": "2015",
|
|||
|
"ISBN": "9785845919847 9785845900807 9780201896831",
|
|||
|
"abstractNote": "Первый том серии книг \"Искусство программирования\" начинается с описания основных понятий и методов программирования. Затем автор сосредоточивается на рассмотрении информационных структур - представлении информации внутри компьютера, структурных связях между элементами данных и способах эффективной работы с ними. Для методов имитации, символьных вычислений, числовых методов и методов разработки программного обеспечения даны примеры элементарных приложений. По сравнению с предыдущим изданием добавлены десятки простых, но в то же время очень важных алгоритмов. В соответствии с современными направлениями исследований был существенно переработан также раздел математического введения.",
|
|||
|
"language": "ru",
|
|||
|
"libraryCatalog": "OZON.ru",
|
|||
|
"numPages": "720",
|
|||
|
"publisher": "Вильямс",
|
|||
|
"series": "Искусство программирования",
|
|||
|
"attachments": [],
|
|||
|
"tags": [],
|
|||
|
"notes": [],
|
|||
|
"seeAlso": []
|
|||
|
}
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"type": "web",
|
|||
|
"url": "http://www.ozon.ru/context/detail/id/5531965/",
|
|||
|
"items": [
|
|||
|
{
|
|||
|
"itemType": "book",
|
|||
|
"title": "Алгоритмы на C++",
|
|||
|
"creators": [
|
|||
|
{
|
|||
|
"firstName": "Роберт",
|
|||
|
"lastName": "Седжвик",
|
|||
|
"creatorType": "author"
|
|||
|
},
|
|||
|
{
|
|||
|
"firstName": "А.",
|
|||
|
"lastName": "Моргунов",
|
|||
|
"creatorType": "translator"
|
|||
|
}
|
|||
|
],
|
|||
|
"date": "2011",
|
|||
|
"ISBN": "9785845916501 9780321606334",
|
|||
|
"abstractNote": "Роберт Седжвик тщательно переписал, существенно расширил и обновил свою популярную книгу, чтобы получилось современное и исчерпывающее описание важных алгоритмов и структур данных. Вместе с Кристофером Ван Виком он разработал новые реализации на C++, которые выражают эти методы в сжатом, но наглядном виде, а также предоставляют программистам практические средства для их проверки в реальных приложениях. \n \nВ книге представлено много новых алгоритмов, а их объяснения гораздо более подробны, чем в предыдущем издании. Новая структура текста и подробные иллюстрации к нему вместе с сопутствующими комментариями значительно улучшают представление материала. Третье издание также содержит удачное сочетание теории и практики, которые делают работу Седжвика бесценным источником сведений для более чем 250 000 программистов! \n \nВ частях 1–4 книги рассматриваются фундаментальные алгоритмы, структуры данных, сортировка и поиск. В ней приведено подробное описание фундаментальных структур данных и алгоритмов для сортировки, поиска и сопутствующих приложений. Хотя, по сути, материал книги применим к программированию на любом языке, реализации Ван Вика и Седжвика используют естественную связь между классами C++ и реализациями абстрактных типов данных (АТД). В части 5 книги рассматриваются алгоритмы на графах, которые играют все более важную роль во множестве приложений, таких как сетевая связность, конструирование электронных схем, составление графиков, обработка транзакций и выделение ресурсов. Каждая часть содержит новые алгоритмы и реализации, усовершенствованные описания и диаграммы, а также множество новых упражнений для лучшего усвоения материала. Акцент на АТД расширяет диапазон применения программ и лучше соотносится с современными средами объектно-ориентированного программирования. \n \nВ этой книге описаны следующие темы \n Подробное описание массивов, связных списков, строк, деревьев и других базовых структур данных Акцентирование внимание на абстрактных типах данных (АТД), модульном программировании, объектно-ориентированном программировании и классах C++ Более 100 алгоритмов сортировки, выбора, реализаций АТД очереди с приоритетами и реализаций АТД таблицы символов (для поиска) Новы<EFBFBD>
|
|||
|
"language": "ru",
|
|||
|
"libraryCatalog": "OZON.ru",
|
|||
|
"numPages": "1056",
|
|||
|
"publisher": "Вильямс",
|
|||
|
"attachments": [],
|
|||
|
"tags": [],
|
|||
|
"notes": [],
|
|||
|
"seeAlso": []
|
|||
|
}
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"type": "web",
|
|||
|
"url": "http://www.ozon.ru/context/detail/id/2527036/",
|
|||
|
"items": [
|
|||
|
{
|
|||
|
"itemType": "book",
|
|||
|
"title": "Искусство программирования. Том 3. Сортировка и поиск",
|
|||
|
"creators": [
|
|||
|
{
|
|||
|
"firstName": "Дональд Эрвин",
|
|||
|
"lastName": "Кнут",
|
|||
|
"creatorType": "author"
|
|||
|
},
|
|||
|
{
|
|||
|
"firstName": "В.",
|
|||
|
"lastName": "Тертышный",
|
|||
|
"creatorType": "translator"
|
|||
|
},
|
|||
|
{
|
|||
|
"firstName": "Игорь",
|
|||
|
"lastName": "Красиков",
|
|||
|
"creatorType": "translator"
|
|||
|
}
|
|||
|
],
|
|||
|
"date": "2014",
|
|||
|
"ISBN": "9785845900821 9780201896855",
|
|||
|
"abstractNote": "Во втором издании третьего тома содержится полный обзор классических алгоритмов сортировки и поиска. Представленная в нем информация дополняет приведенное в первом томе обсуждение структур данных. Автор рассматривает принципы построения больших и малых баз данных, а также внутренней и внешней памяти. В книге приведена подборка тщательно проверенных компьютерных алгоритмов и представлен анализ их эффективности. Кроме того, специальный раздел посвящен методам оптимальной сортировки и описанию новой теории перестановки и универсального хеширования.",
|
|||
|
"language": "ru",
|
|||
|
"libraryCatalog": "OZON.ru",
|
|||
|
"numPages": "824",
|
|||
|
"publisher": "Вильямс",
|
|||
|
"series": "Искусство программирования",
|
|||
|
"attachments": [],
|
|||
|
"tags": [],
|
|||
|
"notes": [],
|
|||
|
"seeAlso": []
|
|||
|
}
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"type": "web",
|
|||
|
"url": "http://www.ozon.ru/context/detail/id/23968713/",
|
|||
|
"items": [
|
|||
|
{
|
|||
|
"itemType": "book",
|
|||
|
"title": "Алгоритмические трюки для программистов",
|
|||
|
"creators": [
|
|||
|
{
|
|||
|
"firstName": "Генри С. Уоррен",
|
|||
|
"lastName": "мл",
|
|||
|
"creatorType": "author"
|
|||
|
},
|
|||
|
{
|
|||
|
"firstName": "Игорь",
|
|||
|
"lastName": "Красиков",
|
|||
|
"creatorType": "translator"
|
|||
|
}
|
|||
|
],
|
|||
|
"date": "2014",
|
|||
|
"ISBN": "9785845918383",
|
|||
|
"abstractNote": "Книга \"Алгоритмические трюки для программистов\" позволит повысить квалификацию профессиональному программисту, но при этом книга будет понятна и чрезвычайно полезна даже начинающему и даже студенту, тем более что в новом издании появилась масса упражнений, интересных как с теоретической, так и с практической точки зрений. Работа программиста всегда немного хакерство, а также смесь арифметики и логики, особенно это касается программиста, который создает элегантный и эффективно работающий код. В этой книге программист-ветеран IBM Генри Уоррен делится с читателями разнообразными приемами из своей коллекции, пополняемой в течение многих десятилетий работы в области разработки компиляторов и архитектуры компьютеров, прикладного и системного программирования. Большинство из них носят практический характер, хотя некоторые представляют в первую очередь теоретический интерес. \n Автор книги много лет систематически собирал программные перлы, а затем свел их воедино, организовал и снабдил четким описанием. В этой книге слову \"хакер\" возвращено его первозданное значение - человека увлеченного, талантливого программиста, способного к созданию чрезвычайно эффективного и элегантного кода. В книге воплощен пятидесятилетний стаж ее автора в области разработки компиляторов и архитектуры компьютеров. Здесь вы найдете множество приемов для работы с отдельными битами, байтами, вычисления различных целочисленных функций; большей части материала сопутствует строгое математическое обоснование. Каким бы ни был ваш профессионализм - вы обязательно найдете в этой книге новое для себя; кроме того, книга заставит вас посмотреть на уже знакомые вещи с новой стороны. \n В новом издании своей книги автор вновь сумел собрать неотразимую коллекцию программистских трюков, позволяющих программисту писать элегантные и эффективные программы, быстро создавать эффективно работающий код, становясь при этом настоящим, глубоко знающим свое дело профессионалом. Трюки автора в высшей степени практичны, но при этом чрезвычайно интересны, а иногда и просто неожиданны - как решение большой головоломки. Изложенный материал позволит повысить квалификацию даже бывалому программисту, но при этом книга будет понятна <EFBFBD>
|
|||
|
"language": "ru",
|
|||
|
"libraryCatalog": "OZON.ru",
|
|||
|
"numPages": "512",
|
|||
|
"publisher": "Вильямс",
|
|||
|
"attachments": [],
|
|||
|
"tags": [],
|
|||
|
"notes": [],
|
|||
|
"seeAlso": []
|
|||
|
}
|
|||
|
]
|
|||
|
},
|
|||
|
{
|
|||
|
"type": "web",
|
|||
|
"url": "http://www.ozon.ru/context/detail/id/6037655/",
|
|||
|
"items": [
|
|||
|
{
|
|||
|
"itemType": "book",
|
|||
|
"title": "Клетки",
|
|||
|
"creators": [
|
|||
|
{
|
|||
|
"firstName": "Бенджамин",
|
|||
|
"lastName": "Льюин",
|
|||
|
"creatorType": "editor"
|
|||
|
},
|
|||
|
{
|
|||
|
"firstName": "Линн",
|
|||
|
"lastName": "Кассимерис",
|
|||
|
"creatorType": "editor"
|
|||
|
},
|
|||
|
{
|
|||
|
"firstName": "Вишванат Р.",
|
|||
|
"lastName": "Лингаппа",
|
|||
|
"creatorType": "editor"
|
|||
|
},
|
|||
|
{
|
|||
|
"firstName": "Джордж",
|
|||
|
"lastName": "Плоппер",
|
|||
|
"creatorType": "editor"
|
|||
|
},
|
|||
|
{
|
|||
|
"firstName": "И.",
|
|||
|
"lastName": "Филиппович",
|
|||
|
"creatorType": "translator"
|
|||
|
},
|
|||
|
{
|
|||
|
"firstName": "Юрий",
|
|||
|
"lastName": "Ченцов",
|
|||
|
"creatorType": "translator"
|
|||
|
}
|
|||
|
],
|
|||
|
"date": "2011",
|
|||
|
"ISBN": "9785947747942",
|
|||
|
"abstractNote": "В книге описаны последние достижения в области клеточной биологии. Ее особенностями можно смело назвать наличие многочисленных богатых иллюстраций и хорошо выверенной современной терминологии, четкую структуру и удобное расположение материала. \n Важное значение в книге придается обсуждению молекулярных основ заболеваний человека и перспективных направлений исследований в этой области науки. \n\n Для студентов и аспирантов медико-биологических специальностей, начинающих и продолжающих изучение клеточной биологии, а также для исследователей, нуждающихся в современной информации по цитологии, и преподавателей.",
|
|||
|
"language": "ru",
|
|||
|
"libraryCatalog": "OZON.ru",
|
|||
|
"numPages": "952",
|
|||
|
"publisher": "Бином. Лаборатория знаний",
|
|||
|
"series": "Лучший зарубежный учебник",
|
|||
|
"attachments": [],
|
|||
|
"tags": [],
|
|||
|
"notes": [],
|
|||
|
"seeAlso": []
|
|||
|
}
|
|||
|
]
|
|||
|
}
|
|||
|
]
|
|||
|
/** END TEST CASES **/
|