Новые книги

Книга предназначена для читателей, знакомых с понятием финансовых рынков, практикующих трейдеров, индивидуальных инвесторов и управляющих инвестиционными портфелями. Она является, по сути, конспективным изложением 12 книг в одной. 12 известных мастеров-практиков написали по одной главе в этот сборник с целью дать представление читателю о своих методах и техниках работы на финансовых рынках, а именно, на рынках акций, валют (FOREX), облигаций, опционов и фьючерсов. Оценив изюминку метода и возможные граничные условия, читатель может перейти к углубленному изучению работ конкретного автора. Из участников сборника, в русском переводе есть только четыре автора. Работы других, несмотря на их известность в США, практически неизвестны российскому читателю, хотя их методики поистине уникальны, а иногда и революционны. В книге приведено множество реальных примеров, позволяющих оценить эффективность предлагаемых подходов.

Для финансистов, инвестиционных стратегов, технических аналитиков рынка, а также индивидуальных инвесторов, самостоятельно выходящих на финансовые рынки мира и России, чтение этой книги будет чрезвычайно полезным, а может быть и просто необходимым.
Если вы читаете эту книгу, значит вы подумываете о том, как бы поставить и попробовать Ubuntu. Наверняка, вы не захотите сразу отказываться от Windows и поставите Ubuntu, как вторую ОС (операционную систему).

Возможно, вы как и я долго метались от дистрибутива к дистрибутиву и решали, какой же установить. Уверяю вас, вы сделали правильный выбор. Данная книга проведёт небольшую, но базовую экскурсию на тему установки и настройки.

Я уверен, что вы найдёте эту книгу интересной для себя. Если у вас возникают какие-либо вопросы, я могу осветить их в новой версии этой книги. С радостью выслушаю критику, пожелания и вопросы. Для связи со мной использовать почту [email protected]. Для получение бесплатных консультаций или ответов на ваши вопросы используйте контакты, полученные после подписки на рассылку http://ubuntubook.ru.

С уважением,

Дмитрий Котенок.

Реализация наследования

5.4.4. Реализация наследования

В языке Eiffel список наследования помещается вслед за ключевым словом inherit:

	class ITEM
	export
	  cut, move, pick, ungroup
	feature
	  cut is deferred end;
	  move (deltax, deltay: REAL) is deferred end;
	  pick (x, y: REAL): BOOLEAN is deferred end;
	  ungroup () is deferred end
	class SHAPE
	export
	  cut, draw, erase, move, pick, ungroup, write
	inherit ITEM
	feature
	* x, y: REAL;
	  cut is <body> end;
	  draw is <body> end;
	  erase is <body> end;
	  move (deltax, deltay: REAL) is <body> end;
	  pick (x, y: REAL): BOOLEAN is <body> end;
	  ungroup is <body> end;
	  write (acolor: COLOR) is deferred end;
	end
	classrBOX
	export pick, write
	inherit SHAPE redefine pick, write
	feature
	  width, height: REAL;
	  Create (x0, y0, width0, height0:*REAL) is <body> end;
	  pick (x, y: REAL): BOOLEAN is <body> end;
	  write (acolor: COLOR) is <body> end
	end
	class CIRCLE
	export pick, write
	inherit SHAPE redefine pick, write
	feature
	  radius: REAL;
	  Create (x0, y0, radius0: REAL) is <body> end;
	  pick (x, y: REAL): BOOLEAN is <body> end;
	  write (acolor: COLOR) is <body> end
	end

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

В языке Smalltalk описание класса Item, его подкласса Shape, а также подклассов Box и Circle класса Shape может иметь следующий вид:

	class name Item
	superclass Object
	 
	class name Shape
	superclass Item
	instance variables
	  x
	  y
	instance methods
	  cut
	  draw
	  erase
	  move: aPoint
	  ungroup
	 
	class name Box
	superclass Shape
	instance variables
	  width
	  height
	instance methods
	  pick: aPoint
	  write: aColor
	class methods
	  createAt: aPoint width: widthSize length: lengthSize
	 
	class name Circle
	superclass Shape
	instance variables
	  radius
	instance methods
	  pick: aPoint
	  write: aColor
	class methods
	  createAt: aPoint radius: radiusSize

Все атрибуты суперкласса доступны всем его потомкам. Все методы могут быть переопределены в подклассах. Множественное наследование не поддерживается.

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