Новые книги

Социальная сеть ВКонтакте является самой крупной сетью в России. Ежедневная посещаемость достигла 55 млн пользователей в сутки и сравнялась с крупнейшими поисковыми системами. О том, как продвигать свой бизнес в этой социальной сети расскажет эта книга. Вы узнаете секреты эффективного создания сообщества, фишки по его позиционированию в сети и попадания в первые позиции при его поиске. На– учитесь создавать много продающего контента.

На страницах этого издания предложены, пожалуй, все возможные стратегии про– движения вашей страницы/группы как внутри самой сети ВКонтакте, так и, что важно, если у вас нет сайта в «большом» Интернете.

Все советы являются итогом многолетнего практического опыта автора.

Материал составлен по формуле «читай и делай».
Управление сервисами ИТ (IT Service Management, ITSM) развивается в России на протяжении последних пяти-шести лет, однако этот рынок еще недостаточно велик. Работающие в данной области компании не спешат объединить усилия и создать отечественные , хотя уже обладают квалификацией в сфере организации эффективной работы департаментов информационных технологий в различных отраслях. Между тем за рубежом накоплен солидный опыт в организации ИТ. В 80-х гг. британское Центральное агентство по вычислительной технике и телекоммуникациям (ныне OGC) разработало принципы эффективного использования ресурсов ИТ в государственных учреждениях страны. В результате была создана (IT Infrastructure Library, ITIL), где собраны лучшие методы в сфере услуг ИТ. В настоящее время библиотека представляет собой подробное описание наиболее важных видов деятельности в работе ИТ, перечень сфер ответственности, задач и процедур, которые, как утверждается, можно адаптировать для любого предприятия, большого или малого, использующего услуги аутсорсинга ИТ или реализующего собственные службы. На базе библиотеки ITIL свои структурированные подходы к управлению услугами ИТ разработали такие компании, как HP, IBM и Microsoft.

Книга представляет введение в ИТ Сервис-менеджмент - передовой подход по управлению информационными технологиями (ИТ). Он основан на материалах лучшего мирового опыта, собранного и систематизированного в Библиотеке ITIL (IT Infrastructure Library).

Реализация зависимостей

5.4.5. Реализация зависимостей

В языке Eiffel для реализации зависимостей применяются конструкции, аналогичные соответствующим конструкциям языка C++. Поддерживаются параметризованные (родовые (generic)) контейнерные объекты (обычно эти объекты параметризуются относительно типов объектов, которые они содержат). Базовая библиотека классов системы Eiffel содержит контейнерный класс LINKED_LIST, который можно использовать для реализации зависимости типа "много к одному" между классами ITEM и GROUP:

	class ITEM
	export
	get_group
	  -- выборочный экспорт в класс GROUP
	  set_group(GROUP), forget_group(GROUP)
	 
	feature
	get_group: GROUP is
	do
	Result := mygroup
	end;
	set_group(g:GROUP) is
	do
	mygroup := g
	end;
	forget_group is
	do
	forget(mygroup)
	end;
	end --ITEM
	 
	class GROUP
	export
	add_item, remove_item, get_items
	inherit ITEM
	feature
	items: LINKED_LIST[ITEM]; --параметризованный тип
	Create is
	do
	items.Create
	end;
	add_item(value:ITEM) is
	do
	items.finish;
	items.insert_right(value);
	value.set_group(Current)
	end;
	remove_item(value:ITEM) is
	do
	items.search(value,l);
	items.delete;
	value.forget_group
	end;
	get_items(number:INTEGER):ITEM  is
	do
	Result := items
	end;
	end --GROUP

Язык Eiffel обеспечивает выборочный экспорт относительно любого свойства. В рассматриваемом примере в класс GROUP экспортируются свойства set_group и forget_group класса ITEM. Это поддерживает инкапсуляцию путем ограничения доступа по записи данных в объекты классов, участвующих в зависимости между ITEM и GROUP.

Операция forget языка Eiffel предназначена для освобождения памяти; она освобождает память, занимаемую объектом, который является ее операндом, а также присваивает объектной ссылке неопределенное значение.

В языке Smalltalk большую часть зависимостей помогает реализовать богатая системная библиотека классов. Например, для реализации зависимости типа "много-к-одному" между графическими объектами (Item) и группой, в которую они входят (Group) можно использовать библиотечный класс Set:

	class name Item
	superclass Object
	 
	class name Shape
	superclass Item
	instance variables
	  group
	instance methods
	cut
	  draw
	  erase
	  move: aPoint
	  ungroup
	--дополнительные методы
	getGroup
	   |group
	--приватные методы
	putGroup: aGroup
	   group <- aGroup
	 
	class name Group
	superclass Item
	instance variables
	  items
	class methods
	new
	   |((super new)putItems:(Set new))
	instance methods
	  pick: aPoint
	  write: aColor
	addItem: anItem
	   items add: anItem.
	   anItem putGroup: self
	removeItem
	   items remove: anItem.
	   anItem putGroup: nil
	getItems
	   |items copy
	--приватные методы
	putItems: aSet
	   items <- aSet

Ввиду того, что в системе Smalltalk не производится контроль типов, нет никаких ограничений на тип объектов, которые можно добавить в группу: любой объект, который соответствует сообщению putGroup:, допустим. Строка приватные методы является комментарием, сообщающим программисту, что методы, перечисленные после этой строки лучше использовать как приватные; если он не последует этому совету, система все равно не зафиксирует ошибку, так как Smalltalk не поддерживает приватности методов и данных, и на самом деле все методы общедоступны.

Назад | Содержание | Вперед