Перейти к содержимому

Фотография

Новые IT технологиии общие тенденции...


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 217

#1
antee

antee
  • В доску свой
  • 1 067 сообщений
Предлагаю обсудить новые и не очень :dandy: технологии в программировании и информационной индустрии. Также тенденции развития и всё , что с этим связано.
Информационные технологии очень динамичны по сравнению с другими индустриями.
Что-то постоянно появляется новое, что-то отмирает. Из нового что-то приживается и далее развивается.
Если не держать постоянно руку на пульсе , то можно просто отстать.
Что можете сказать по этому поводу?

Сообщение отредактировал antee: 22.12.2005, 15:31:25

  • 0

#2
antee

antee
  • В доску свой
  • 1 067 сообщений
Да, вот ещё....
Имел ввиду то, что объединяет языки программирования, а не является специфичным для какого-то из них.
Например, АОР - аспектно ориентированное программирование.
Сравнительно свежее направление в разработке.
Если не ошибаюсь родилось где-то в исследовательских лабораториях IBM.
По сути является разделение основной(бизнес) логики решаемой задачи от сопутствующих (сквозных).
Повышает модульность и сопровождаемость программного продукта....
Одно из наиболее зрелых решений AspectJ для платформы java.
Также существуют решения для других языков.
  • 0

#3
antee

antee
  • В доску свой
  • 1 067 сообщений
Если, что ребята, извиняюсь за тему, возможно вам не до подобных дискуссий :smoke:
Больше озабочены прозаическими задачками... :laugh:
  • 0

#4
xxel

xxel
  • Завсегдатай
  • 146 сообщений

Да, вот ещё....
Имел ввиду то, что объединяет языки программирования, а не является специфичным для какого-то из них.
Например, АОР - аспектно ориентированное программирование.
Сравнительно свежее направление в разработке.

сравнительно - да.. хотя на днях 10 лет стукнет

Если не ошибаюсь родилось где-то в исследовательских лабораториях IBM.

точнее в Xerox'ах

По сути является разделение основной(бизнес) логики решаемой задачи от сопутствующих (сквозных).

зачем его можно использовать кроме логирования в голову так и не пришло

Повышает модульность и сопровождаемость программного продукта....

при этом абсолютно не поддается отладке

Одно из наиболее зрелых решений AspectJ для платформы java.
Также существуют решения для других языков.

скорее всего ничего толкового из этого так и не вырастет
всех OOP'ников так просто не заломать на новые веяния
тем более на технологии которые не дают очевидных
премуществ над старыми
  • 0

#5
antee

antee
  • В доску свой
  • 1 067 сообщений


Если не ошибаюсь родилось где-то в исследовательских лабораториях IBM.

точнее в Xerox'ах

Спасибо, хотел сам поправиться, но не успел... :laugh:


По сути является разделение основной(бизнес) логики решаемой задачи от сопутствующих (сквозных).

зачем его можно использовать кроме логирования в голову так и не пришло

Поначалу так бывает, потом начинаешь понимать, что лучшего решения для определенных вещей и не найти...
Помимо логирования можно использовать для тестирования, обработки исключительных ситуаций, код очистки и особождения ресурсов, добавление дополнительной ранее не предусмотренной функциональности.
Это то, что мы в реальном проекте уже используем...
Планируем расширить область применения...


Повышает модульность и сопровождаемость программного продукта....

при этом абсолютно не поддается отладке

Отлаживается нормально, зависит от использования средств и опыта...
Согласен, что чуть сложнее, уровень развитости инструментария не тот...


Одно из наиболее зрелых решений AspectJ для платформы java.
Также существуют решения для других языков.

скорее всего ничего толкового из этого так и не вырастет
всех OOP'ников так просто не заломать на новые веяния
тем более на технологии которые не дают очевидных
премуществ над старыми


Уже более чем толковое получилось.... и обратного хода нет...
xxel, то говоришь не новая , то новая :smoke:
А зачем заламывать ? Эта технология не заменяет, а дополняет ООП, занимая нишу в которой ООП была "импотентна" :laugh:
  • 0

#6
antee

antee
  • В доску свой
  • 1 067 сообщений
Что скажете по Веб Сервисам ? Каков опыт их использования?
С помощью них в своё время нам удалось совместить в одной системе клиента, написанного на С++ , использующего графические библиотеки Винды и Java сервер.
  • 0

#7
xxel

xxel
  • Завсегдатай
  • 146 сообщений

Поначалу так бывает, потом начинаешь понимать, что лучшего решения для определенных вещей и не найти...
Помимо логирования можно использовать для тестирования, обработки исключительных ситуаций, код очистки и особождения ресурсов, добавление дополнительной ранее не предусмотренной функциональности.

очистка/освобождение ресурсов всю жизнь на автомате делалась ну кроме совсем
убогих языков и кривых лап разработчиков

тестирование ... загадочное понятие - если пояснишь может прояснится поможет ли там AOP

обработка исключительных ситуаций вообще отдельная песня.прдставляется плохо как
все исключения можно корректно обработать в одном месте. особенно генерируемые
ОСью. можно схематических пример (далеко в АОР не лазил былоб интересно посмотреть)


Это то, что мы в реальном проекте уже используем...
Планируем расширить область применения...
Отлаживается нормально, зависит от использования средств и опыта...

не я придумал это констатация факта экспертами

Согласен, что чуть сложнее, уровень развитости инструментария не тот...

а вот это самое ценное. если технология не встроена в средство разработки
то вероятность ее развития весьма сомнительна (см. историю падения CBuilder)

Уже более чем толковое получилось.... и обратного хода нет...
xxel, то говоришь не новая , то новая :)

веяния и технологиии не синонимы .. так что кошунства за собой не вижу :)

А зачем заламывать ? Эта технология не заменяет, а дополняет ООП, занимая нишу в которой ООП была "импотентна" :)

ну.... если посмотреть сколько крику о том что С# недоязык от ярых С++ников
которые тоже просто дополняет убогое ООР С++ новыми фичами
то думаю что заламывать придется.
  • 0

#8
antee

antee
  • В доску свой
  • 1 067 сообщений
Давай сначала определимся что мы говорим больше о коцепциях.
И кто что использует в разработке?
Я - Java, Eclipse, AspectJ...
  • 0

#9
antee

antee
  • В доску свой
  • 1 067 сообщений

очистка/освобождение ресурсов всю жизнь на автомате делалась ну кроме совсем
убогих языков и кривых лап разработчиков

Во первых ресурсы - понятие более широкое , например, соединение с базой данных
Во вторых даже освобождение памяти не везде делается автоматически
Или ты С++ назовёшь убогим ?

тестирование ... загадочное понятие - если пояснишь может прояснится поможет ли там AOP

Блочное тестирование(unit testing) - пишешь тестовый код , например для проверки работы метода, где задаешь входные данные и проверяешь соответствие выходных ожидаемым.

а вот это самое ценное. если технология не встроена в средство разработки
то вероятность ее развития весьма сомнительна (см. историю падения CBuilder)

Очень даже хорошо встроена в то средство , которое я использую, и постоянно улучшается
См в пред. посте

ну.... если посмотреть сколько крику о том что С# недоязык от ярых С++ников
которые тоже просто дополняет убогое ООР С++ новыми фичами
то думаю что заламывать придется.

Cи Шарп и Си 2Плюс всего лишь разные языки программирования, так что сравнение не очень уместно.
  • 0

#10
antee

antee
  • В доску свой
  • 1 067 сообщений
У других разве нет ничего "нового" предложить на обсуждение? :laugh:
Может какие-то языки программирования появились?
  • 0

#11
xxel

xxel
  • Завсегдатай
  • 146 сообщений


очистка/освобождение ресурсов всю жизнь на автомате делалась ну кроме совсем
убогих языков и кривых лап разработчиков

Во первых ресурсы - понятие более широкое , например, соединение с базой данных

никто не говорит что это не так

Во вторых даже освобождение памяти не везде делается автоматически
Или ты С++ назовёшь убогим ?

назову.. не задумывшесь.. С++ убогий даже с костылями в виде STL и шаблонов


тестирование ... загадочное понятие - если пояснишь может прояснится поможет ли там AOP

Блочное тестирование(unit testing) - пишешь тестовый код , например для проверки работы метода, где задаешь входные данные и проверяешь соответствие выходных ожидаемым.

красиво в теории. но полное покрытие тестами все равно не обеспечишь


а вот это самое ценное. если технология не встроена в средство разработки
то вероятность ее развития весьма сомнительна (см. историю падения CBuilder)

Очень даже хорошо встроена в то средство , которое я использую, и постоянно улучшается
См в пред. посте

ну.... если посмотреть сколько крику о том что С# недоязык от ярых С++ников
которые тоже просто дополняет убогое ООР С++ новыми фичами
то думаю что заламывать придется.

Cи Шарп и Си 2Плюс всего лишь разные языки программирования, так что сравнение не очень уместно.

кстати Sun наконец образумился и похоже наконец пытается родить
чтото осмысленное и вменяемое ..
http://research.sun.com/projects/plrg/

остается надеятся что это не сдохнет в кулуарах ислледовательских лабораторий
задавленное воплями о legacy сплюснутых и жабных манагеров и программеров
  • 0

#12
Havoc

Havoc
  • Завсегдатай
  • 296 сообщений

назову.. не задумывшесь.. С++ убогий даже с костылями в виде STL и шаблонов


Убогий и сложный - это разные вещи всё-таки, надо понимать. Можно сказать - не такой _удобный_, как, скажем, жаба, соглашусь. Но что вы в нем увидели убогого? Очень хороший язык. Особенно, если писать умеешь.

красиво в теории. но полное покрытие тестами все равно не обеспечишь


Почему нет? Просто-напросто эта задача в серьезном приложении сравнима по сложности с написанием основного кода.

Вот вы охаяли и С++, и С#, и Java, а сами, позвольте поинтересоваться, на чем пишете? %)

Сообщение отредактировал Havoc: 14.01.2006, 17:19:01

  • 0

#13
xxel

xxel
  • Завсегдатай
  • 146 сообщений


назову.. не задумывшесь.. С++ убогий даже с костылями в виде STL и шаблонов


Убогий и сложный - это разные вещи всё-таки, надо понимать. Можно сказать - не такой _удобный_, как, скажем, жаба, соглашусь. Но что вы в нем увидели убогого? Очень хороший язык. Особенно, если писать умеешь.

ну.. и...? причем тут сложный ?
если б я хотел бы сказать что он сложный сказал бы
а так я сказал именно то что хотел сказать

а из убогого начнем хотя бы с Pattern-matching'a что б далеко не ходить
в жабе кстати тоже отсуствует


красиво в теории. но полное покрытие тестами все равно не обеспечишь


Почему нет? Просто-напросто эта задача в серьезном приложении сравнима по сложности с написанием основного кода.

во-во... и кто дасть в серезном приложении время на разработку полного покрытия ?
а то что не покрывается полностью изначально допускает возможность скрытых ошибок
да и как то сомнения у меня что AOP (изначально упомянутый) поможет при написании юнит тестов

Вот вы охаяли и С++, и С#, и Java, а сами, позвольте поинтересоваться, на чем пишете? %)

вопрос то не в этом.... см. топик... новые технологии
смотрим куда они движутся... движутся они ортогонально С++ и Java
что у MS что у Sun'а
  • 0

#14
Havoc

Havoc
  • Завсегдатай
  • 296 сообщений

а из убогого начнем хотя бы с Pattern-matching'a что б далеко не ходить
в жабе кстати тоже отсуствует


Не соглашусь, что отсутствие Pattern-matching на уровне языка есть показатель убогости языка.
В Java, кстати, и в C# есть полная поддержка регулярных выражений, но не на уровне языка, а на уровне базовых модулей. Я более чем уверен, что подобные реализации есть и на C++. Технология далеко не новая. Тем не менее, при чем тут язык?

во-во... и кто дасть в серезном приложении время на разработку полного покрытия ?
а то что не покрывается полностью изначально допускает возможность скрытых ошибок


Ну, зачем же так категорично, могут и дать. Серьезное приложение ведь не в каждом случае "горящее" по срокам. А если пользоваться подходом test-driven development то покрытие кода тестами будет очень близко к 100%. Другое дело, что у нас на тесты не заморачивается никто, тем более не говоря о разработке тестов перед разработкой кода.

да и как то сомнения у меня что AOP (изначально упомянутый) поможет при написании юнит тестов


Что такое АОР, честно говоря, я представления не имею.

вопрос то не в этом.... см. топик... новые технологии
смотрим куда они движутся... движутся они ортогонально С++ и Java
что у MS что у Sun'а


Оно и неудивительно.
  • 0

#15
v04bvs

v04bvs
  • В доску свой
  • 1 833 сообщений

назову.. не задумывшесь.. С++ убогий даже с костылями в виде STL и шаблонов

Объясните пожалуйста, почему вы так считаете? Я конечно не авторитет в этих вопросах, но мне C++ нравится, и шаблоны очень органично, и не теряя производительности, добавляют generic programming - парадигму в язык. STL - хорошая стандартная библиотека, довольно быстрая, конечно не покрывающая всех потребностей программиста, но существует куча других библиотек.

Pattern-matching


#include <iostream>
#include <qregexp.h>

int main( )
{
	std::string str;
	std::cout << "Enter pattern ";
	std::cin >> str;
	QRegExp re( str );
	while( 1 ) {
		std::cout << "Enter string ";
		std::cin >> str;
		if( re.search(str) != -1 )
			std::cout << "matched\n";
		else
			std::cout << "not matched\n";
	}
}

Вы это имели ввиду?

Кстати вот аналог на перле - выглядит почти так-же
#!/usr/bin/perl

print "Enter pattern ";
my $pattern = <>;

while( 1 ) {
	print "Enter string ";
	my $str = <>;
	( $str =~ $pattern ) and print "matched\n" or print "not matched\n";
}

Кстати, в следующем стандарте на С++ регулярные выражения будут в стандартной библиотеке.

Сообщение отредактировал v04bvs: 15.01.2006, 16:04:06

  • 0

#16
xxel

xxel
  • Завсегдатай
  • 146 сообщений

Не соглашусь, что отсутствие Pattern-matching на уровне языка есть показатель убогости языка.
В Java, кстати, и в C# есть полная поддержка регулярных выражений, но не на уровне языка, а на уровне базовых модулей. Я более чем уверен, что подобные реализации есть и на C++. Технология далеко не новая. Тем не менее, при чем тут язык?

а вот не надо путать Pattern-matching с регулярными выражениями
они тут не к месту и я о них ничего не говорил

Ну, зачем же так категорично, могут и дать. Серьезное приложение ведь не в каждом случае "горящее" по срокам. А если пользоваться подходом test-driven development то покрытие кода тестами будет очень близко к 100%. Другое дело, что у нас на тесты не заморачивается никто, тем более не говоря о разработке тестов перед разработкой кода.

вполне возможно что какая нибудь европейская контора может себе это позволить
благо они почти все там на госдотациях.

Что такое АОР, честно говоря, я представления не имею.

аспектно ориентированое програмирование
очередная новомодная тенденция
  • 0

#17
Havoc

Havoc
  • Завсегдатай
  • 296 сообщений
http://ip.osgf.ge/GN...c/libc_277.html
  • 0

#18
xxel

xxel
  • Завсегдатай
  • 146 сообщений

http://ip.osgf.ge/GN...c/libc_277.html

видно придется отпинываться по полной от предлагаемых библиотек обработки текстов
то что кто-то обозвал библиотеку "Pattern matching" вовсе не означает что она
полностью реализует то чем называется. Я свои библиотеки тоже как угодно могу обозвать.
Адекватное название предложеной ссылки это "Text Pattern matching" или
"String pattern matching" (хотя за это можно конечно простить авторов - строк то в С нет)

Тем не менее есть вполне официальная трактовка понятия Pattern matching
http://en.wikipedia....attern_matching
где дано понятие и примитивные примеры использования нормального Pattern matching'a
  • 0

#19
Havoc

Havoc
  • Завсегдатай
  • 296 сообщений
Ну полнофункциональную библиотеку надо будет поискать на досуге, а пока что расскажите нам, что это за неубогий язык, где полная поддержка Pattern Matching идет на уровне языка.
  • 0

#20
xxel

xxel
  • Завсегдатай
  • 146 сообщений

Ну полнофункциональную библиотеку надо будет поискать на досуге, а пока что расскажите нам, что это за неубогий язык, где полная поддержка Pattern Matching идет на уровне языка.

можно не напрягаться... полнофункциональной библиотеки для реализациии
этого в природе существовать не может

а насчет языков с Pattern Matching... дык их вагон и телега
тот же упомянутые на Wiki Haskell, далее Clean. ML, SML, OCamL
потом идут еще куча диалектов этих линеек включая объектно-ориентированные..

есть все основания что новая разработка от Sun'a будет
тоже его содержать и не только это
  • 0




Количество пользователей, читающих эту тему: 1

пользователей: 0, неизвестных прохожих: 1, скрытых пользователей: 0

Размещение рекламы на сайте     Предложения о сотрудничестве     Служба поддержки пользователей

© 2011-2019 vse.kz. При любом использовании материалов Форума ссылка на vse.kz обязательна.