Библиотека XWPL – Extreme Windows Programming Library
От: Роман Акопов Грузия http://adontz.wordpress.com/
Дата: 22.10.02 21:41
Оценка: 90 (4) +1
Статья:
Библиотека XWPL – Extreme Windows Programming Library
Автор(ы): Роман Акопов
Дата: 11.11.2002


Авторы:
Роман Акопов

Аннотация:
Зачем всё это нужно?

На самом деле это довольно сложный вопрос. В начале (а прошёл уже год более или, скорее, менее активной работы) это был метод что-то доказать себе, нежели желание принести пользу. Не знаю, наверное, это болезнь всех, кто начинал на медленных машинах (80286), желание оптимизировать… Помню как мне слегка (и это не преуменьшение) не понравилась стандартная библиотека Borland Pascal 7.0, и я полностью переписал её всю (CRT, Graph, DOS + свои модули) на ассемблере. Ну вот, с тех пор и страдаю болезнью замены Run-Time Libraries :)
A journey of a thousand miles must begin with a single step © Lau Tsu
Совет: забей
От: Коваленко Дмитрий Россия http://www.ibprovider.com
Дата: 28.10.02 06:28
Оценка: +1
Таких как ты очень много, и, как правило, они точно знают зачем это все надо. Но обратить других в свою веру очень сложно. Все дело в природе программирования и людей, занятых в этом процессе :)

У нас в организации используется своя инструментальная С++ библиотека, объем которой будет немного побольше твоей — порядка 100.000 строчек кода. Ради интереса, один раз мы опубликовали её часть — набор классов для прямой работы с OLEDB провайдерами. Нулевой эффект. И это при том, что нормального эквивалента в природе нет. То же отношение к надстройкам над STL, которее я кинул в конференцию исходников — http://www.rsdn.ru/forum/Message.aspx?mid=103114&only=1
Автор: Коваленко Дмитрий
Дата: 19.09.02
. Энтузиазма тоже не наблюдалось.

Люди предпочитают возиться либо с собственными поделками либо от "бессмертных производителей". С Васями Пупкиными, даже трижды гениальными, стараются не связываться.

И еще совет. Если хочешь иметь хоть какую то надежду на сотрудничество — нужно помещать свое детище под систему контроля версий например на www.sourceforge.com. Остальные способы — заведомо мертвые направления
-- Пользователи не приняли программу. Всех пришлось уничтожить. --
Мнение...
От: null  
Дата: 23.10.02 21:41
Оценка:
К чужому труду надо относиться уважительно, но, к сожалению, я не могу не сдержаться, чтобы не сказать, что весь этот код можно смело выкинуть. Во-первых, половина из того что написано уже есть в стандартной библиотеке (std::auto_ptr, std::string, "шаблоны структур данных") и написано достаточно на высоком уровне, чтобы оставить место для оптимизации. Макрос, аналогичный DEBUG_CHECK, объявлен в <assert.h>, против использования которого тоже нет никаких предпосылок. Во-вторых, если уж писать на С++, то надо писать именно на C++. Код AWL по своему духу очень напоминает Cишный. Смысл тогда создавать библиотеку в классах? Некоторые вещи, например C_Variant, можно было бы намного элегантней и эффективней реализовать, используя шаблоны. Заметно, что многие идеи почерпнуты из кода Microsoft. Надо сказать, не самый лучший код. Поэтому люди и пишут свои обертки над ним. Писать же тоже самое, но другими словами, заменив префикс C на С_, String на C_String, есть ли в этом смысл? А польза? Вместо разного рода префиксов, гораздо лучше подходит использование пространства имен:


namespace awl
{

class window
{
...
};

}

... где-то в коде

awl::window m_mainWnd;

Вообщем, сказать еще можно много. Реальную пользу от этой библиотеки, я вижу только в использовании ее как справочного руководства по некоторым специфичным API функциям Windows. С примерами.

С уважением,
Павел Дуванов.
Мнение о продукте
От: Краснокутский Василий Россия  
Дата: 24.10.02 07:15
Оценка:
То что ты написал, практически полностью уже написано и давно используется.
Один человек или группа на некоммерческой основе не в состоянии превзойти коммерческую систему в столь глобальном начинании, да и не нужно этого.
Любая коммерческая реализация в разработке которой будет участвовать хотя бы 10 человек превзойдет любую некоммерческую реализацию. Поскольку у коммерческого продукта иная база знаний и люди его реализующие хоть в какой-то мере являются ответственными за свой продукт. Плюс к этому есть некоторая методика проектирования и сопровождения программного продукта. Это большое преимущество, поскольку сообщения об ошибках или неточностях в реализации поступают на регулярной основе и люди посвящают все рабочее время, чтобы в них разобраться. Тогда как, альтруистам в конце концов захочется кушать и они все это бросят не доведя до ума. Да и как показывает практика люди разрабатывающие коммерческие продукты поопытнее будут (именно потому что занимаются профессиональным программированием, а не копанием в коде из интереса. Хотя и такое бывает часто), да и поорганизованнее.
Так что можешь писать и дальше, но вряд ли кто этим кроме тебя и тебе подобных (людей которым интересно заниматься переписыванием уже существующего программного кода) будет этим пользоваться.
Извини если я очень резко написал. Я уважаю твой труд, но к сожалению он бесполезен для практического использования, поскольку кроме кода нет никакой качественной технической документации и для того чтобы его эффективно использовать нужно внимательно просмотреть все исходники и только осмыслив приступать к написанию программ. Причем наверняка встретиться куча ошибок, никто же не тестировал его на совместимость с другими программными реализациями подобного кода.

С Уважением Краснокутский Василий
Вот если..
От: Аноним  
Дата: 24.10.02 08:35
Оценка:
Если бы ты предоставил врапперы для всех объектов ядра, для Шела, всяких моникеров, и тд и тд, без оконных фич — это было бы круто
Для реестра еще хорошо, мапи. Для callback'ов универсальный враппер,
для imghlp, icmphlp и тд и тд
Мнение автора
От: adontz Грузия http://adontz.wordpress.com/
Дата: 24.10.02 09:31
Оценка:
То что я написал, практически полностью уже написано и давно используется ? Да, я и не отрицаю этого. Но что заключаеться в этом вашем практически ? Куча ХОРОШИХ библиотек в которых есть те или иные недочёты. Вы считаете, что этот труд напрасен ? Ну что же, просто наберите в гугле C++ library и посмотрите скольно названий вылезет :). Как видите я не один такой маньяк :) Вы считаете, что коммерческая реализация лучше ? www.rsdn.ru/article/?atl/IDispEventImpl_error.xml
Автор(ы): Владислав Чистяков
Дата: 02.10.2002
по-моему достаточно красноречиво. Лучшая методика проектирования ? Что вы имеете ввиду ? Что классы будут продуманне связаны между собой ? Этого и так можно добиться, для этого Corp. в конце не объязательно. Вы считате, что альтруистам захочется кушать ? Да, захочется и они будут кушать, но за счёт других проектов. Вы видели Linux, gcc, MySQL, другие GNU разработки ? И что ? Они не заняли своё место в мире ? Вы считаете, что я делаю AWL безответственно ? Да, возможно вы правы. Я не отчитываюсь ни перед кем когда я закончу написание того или иного класса. Да, я не несу никакой гарантии за качество продукта. А кто несёт ? Вы видели хоть одно лицензионное соглашение в котором разработчик несёт ответственность за ошибки в программном обеспечении ? И я не несу. Но я по крайней мере люблю своё детище, так же как и многие другие любят то, что они делают. Это очень сильный стимул работать хорошо. Вы считаете, чтоо я не очень опытен ? Да, возможно не очень. А что значит достаточно опытен ? Да я и не собирался делать всё сам. Я ЯВНО указал, что не откужусь ни от какой КОНСТРУКТИВНОЙ помощи.
A journey of a thousand miles must begin with a single step © Lau Tsu
Мнение автора
От: adontz Грузия http://adontz.wordpress.com/
Дата: 24.10.02 09:32
Оценка:
А беседы о моей квалифицированности по-моему неуместны. К тому же копание в чужом коде из интереса, по моему скромному мнению, занятие не бесполезное. Нельзя написать что-то новое, хорошое, не узнав, что было написано до этого плохо. Только изучая другие библиотеки можно понять как должна выглядеть новая. Вряд ли кто-то кроме меня и подобных мне будет пользоваться AWL ? А сколько их, подобных мне ? Судя по вашему тону, вы думаете что мало... Давайте подойдём с другого конца. Вы считаете себя ПОДОБНЫМ разработчикам MFC ? А много ли людей считают себя подобными им ? Но многие пользуются MFC. И не надо говорить о том, что MFC хорошая библиотека. Нет ! MFC это единственная в своём роде библиотека. А отсутствие конкуренции ведёт к упадку качества, навязыванию внутрикорпоративных технологий. Вы прекрасно (наизусть) знаете как Microsoft называет в своей уникальной терминологии те или инные вещи, имена методов MFC-шных классов. А где альтернатива ? ATL ? www.rsdn.ru/files/?libs/asclib.xml явно свидетельствует о том что и эту надо ещё дорабатывать. Так что назвать существующие библиотеки идеальными, да нет просто хорошими, полноценными язык не поворачивается. Я сделал ядро AWL. Давайте работать дальше. Вам кажеться, что надо использовать пространства имён ? Вы считаете что надо написатьт C_Variant шаблонами. Вы считаете что код слишком сишный ? Кто ещё так считает ? Вас много ? Ну тогда напишите как и я переправлю. Вся прелесть нынешней стадии в том что НИЧЕГО не стандартизированнно. А ведь это было бичом многих библиотек: когда сперва стандартизировали, а потом поняли как лучше. Вы можете присылать мне свои пожелания и я постараюсь изменить AWL так, что бы она была удобна для большинства. Я не собираюсь навязывать свои методы написания. Документация сейчас мною пишется. Да, это не MSDN, но она пишется достаточно подробно и скоро будет здесь размещена. Обругать, сказать что всё это не нужно легко. А помочь мне хотя бы советами многим слабо.

С уважением и с надеждой на плодотворное сотрудничество,
Роман Акопов.
A journey of a thousand miles must begin with a single step © Lau Tsu
Re: Вот если..
От: adontz Грузия http://adontz.wordpress.com/
Дата: 24.10.02 14:19
Оценка:
OK, будет.
Объекты ядра это все кто HANDLE ?
Какие объекты шела заварпить ?
Будь другом, скинь списки на мыло.
поддержка ICMP DNS HTTP FTP протоколов планируется.
Не очень понял что естьь универсальный варпер для callback-ов. Это через шаблоны ?
A journey of a thousand miles must begin with a single step © Lau Tsu
Первый
От: adontz Грузия http://adontz.wordpress.com/
Дата: 24.10.02 14:28
Оценка:
old Dutchman — первый человек высказавшийся конструктивно. Надеюсь и другие последуют его примеру
A journey of a thousand miles must begin with a single step © Lau Tsu
Re: Вот если..
От: Аноним  
Дата: 29.10.02 08:41
Оценка:
Я тебе большое письмецо написал.
Ты его получил ?
А то у нас почта не работает.
Re: Совет: забей
От: adontz Грузия http://adontz.wordpress.com/
Дата: 31.10.02 07:42
Оценка:
Забей ?
Не слишком ли легко? Хотя совет явно хороший :)
У меня есть идея.
Каждая такая библиотека имеет свою специализацию.
AWL (кстати я вчера обнаружил библиотеку с таким же названием, наверное опять переименовывать придётся) должна была в какой то мере объеденить все ети изыскания Васей Пупкиных (весьма гениальных, но не признанных)
Даёшь классную библиотеку !!!
На sourceforge я сегодня же зарегистрируюсь
Если хочешь сотрудничать (есть идеи) черкни

Для тех кто всё таки загорелся на adontz.narod.ru скоро будет более менее толковая документация
A journey of a thousand miles must begin with a single step © Lau Tsu
Re: Вот если..
От: adontz Грузия http://adontz.wordpress.com/
Дата: 03.11.02 12:14
Оценка:
нет :(
A journey of a thousand miles must begin with a single step © Lau Tsu
Try again
От: Аноним  
Дата: 04.11.02 08:13
Оценка:
Немного лирики
От: Willi  
Дата: 19.12.02 07:42
Оценка:
"...
Не знаю, наверное, это болезнь всех, кто начинал на медленных машинах (80286)
..."

Прочитал и слезы на глаза наворачиваться стали. Когда-то 80286 была пределом мечтаний для работающих на 80086 :)

Только не принимай в штыки. А зачем буква "С" в префиксах названий указателей на структуры? Обычно так обзывают константные указатели, но у тебя же они не константные.

А в общем, молодец. Не слушай всяких злопыхателей. Я так понимаю ты писал это для души. И не важно что кто-то считает этот труд напрасным. Важно то что ты написал это и поднял свой профессиональный уровень. Но меня обычно "ломает" писать такие грандиозные бибилиотеки :)
\/\/i||i
Re: Немного лирики
От: Willi  
Дата: 19.12.02 07:43
Оценка:
Очепятка 80086 => 8086 :)
\/\/i||i
Re: Немного лирики
От: adontz Грузия http://adontz.wordpress.com/
Дата: 19.12.02 17:11
Оценка:
Спасибо за поддержку. Для души и поднял уровень — это несомненная правда. Ломает ? А не надо писать грандиозные библиотеки. Можно писать крутые и важные классы в грандиозных библиотеках :)) Орать помогите как-то не хочеться, но от идей и исходников никогда не откажусь.
A journey of a thousand miles must begin with a single step © Lau Tsu
Немного критики и радости.
От: null  
Дата: 20.12.02 07:08
Оценка:
В ж...... комерцию. Главное для себя.
Re: Так есть и другое мнение!
От: MadDed Россия  
Дата: 20.12.02 19:33
Оценка:
Мотивация "работать за бабло" — это далеко не самая сильная мотивация. Как правило — результат — это требования заказчика и не более того. Любой ценой пустить пыль в глаза, обеспечив функциональность на столько за сколько уплачено. Вот и весь "коммерческий продукт". Та же MS никогда не будет тиражировать средства разработки, если в них не понаставлены палки в колеса в нужных местах. Плодить конкурентов — кому это надо?
Женщина — друг человека!
Re: Немного критики и радости.
От: adontz Грузия http://adontz.wordpress.com/
Дата: 21.12.02 15:03
Оценка:
Не-е-ет не для себя, а для нас. Коммерцию не в (то место через которое у нас всё делается) а просто отодвинули в сторону.
Не понял вобщем то, что критика, а что радость, но порадоваться с вами всегда готов.
ЗЫ как-то неконструктивно вышло :-(
A journey of a thousand miles must begin with a single step © Lau Tsu
About...
От: Аноним  
Дата: 21.12.02 16:05
Оценка:
Прогресс налицо, круто !

Мои поздравления :)


Но работы еще очень много...
Re: About...
От: adontz Грузия http://adontz.wordpress.com/
Дата: 24.12.02 09:12
Оценка:
Ну дык стараюсь :-) Честно говоря иногда очень лень, но потом беру чай с лимоном, сажусь и пишу. И аппетит как-то во время еды приходит. Много времени щас уходит на создание нового сайта. Хочу добить до нового года. А потом уже и библиотекой снова займусь.
A journey of a thousand miles must begin with a single step © Lau Tsu
Re: Совет: забей
От: Kluev  
Дата: 07.02.03 18:12
Оценка:
ИМХО Глупый совет. Что значит забей! Если я допустим хочу что-то написать я сожусь и пишу. И абсолютно наплевать написано это уже или нет. Я получаю удовольствие. Если вы проходите мимо — проходите мимо. Дело ваше.

И напоследок мысль: есть такая дурацкая группа — руки вверх, так вот когда их клип показывают по телеку то милионы людей приводятся в движение хотя бы для того чтобы переключить канал... помедитируйте об этом ;)
... и продолжайте переключать телевизор.
Re: Совет: забей
От: Коваленко Дмитрий Россия http://www.ibprovider.com
Дата: 30.04.03 07:20
Оценка:
Мда, наверное меня неправильно поняли.
Я сказал "забей" в отношении критики "зачем изобретать свой велосипед?".

Насчет "даёшь классную библиотеку", ну вообщем тут уже был лозунг —
"даешь ascLib в народ" :)

Это так, мысли вслух.
-- Пользователи не приняли программу. Всех пришлось уничтожить. --
Re: Библиотека XWPL – Extreme Windows Programming Library
От: ILva_ Россия  
Дата: 25.03.08 13:33
Оценка:
Здравствуйте, Роман Акопов, Вы писали:

РА>Статья:

РА>Библиотека XWPL – Extreme Windows Programming Library
Автор(ы): Роман Акопов
Дата: 11.11.2002


А почему библиотека содержит в названии слово "Extreme"?
Когда я увидил название статьи — первая моя ассоциация была, что библиотека как-то связана с "Extreme programming"..
Re[2]: Библиотека XWPL – Extreme Windows Programming Library
От: CreatorCray  
Дата: 26.03.08 09:12
Оценка:
Здравствуйте, ILva_, Вы писали:

IL_>А почему библиотека содержит в названии слово "Extreme"?

IL_>Когда я увидил название статьи — первая моя ассоциация была, что библиотека как-то связана с "Extreme programming"..
Некропостер!
До тебя последняя мессага в эту ветку была аж в 2002 году!
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Забанили по IP, значит пора закрыть эту страницу.
Всем пока
Re: А что, проект замер?
От: AndreyGoryachev  
Дата: 31.03.08 17:16
Оценка:
Последнее сообщение в форуме аж в 2002 году.
Что с проектом? Развивается или в мусорную корзину отправлен?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.