Re[33]: Почему Delphi всё еще жив?!
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 20.10.10 14:06
Оценка:
Здравствуйте, CreatorCray, Вы писали:

I>>Консольщики такие консольщики

I>>Фолдинг в консольном редакторе ? Круто, круто Я как бы тоже видел, но дерьма стараюсь не употреблять.
CC>Давай без твоего фирменного говнометания.

Хорошо, давай. Ты употребляешь консольный фолдинг ?
Re[33]: Почему Delphi всё еще жив?!
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 20.10.10 14:18
Оценка: :)
Здравствуйте, std.denis, Вы писали:

SD>Понимаешь какая штука, изначально я отвечал CreatorCray. Т.е. я просто поделился с ним какие полезняшки есть для облегчения/убыстрения навигации.


Ну, допустим.

SD>Вопрос про Тотал был на тот расчет, что найдется добрая душа, которая расскажет как можно в Тотале так же сделать (напомню: 1. быстрый переход в папку по её псевдониму — "cd:md" переход в мои документы, без отыскивания нужного пункта в выпадающем меню; 2. история просмотров, редактирований, переходов по папкам, в возможностью фильтрации по части pathname). Я не хочу сделать из Тотала FAR, меня интересуют вполне конкретные способы выполнения задач быстрой навигации. Если там что-то реализовано по-другому, но с сохранением функционала, то я ж не против.


Людям обычно нужен переход в какую то папку. Тебе почему то нужны псевдонимы

SD>Я и просил подсказать. Лучше конечно со скриншотами, если это не сложно. Я видел историю переходов и закладки лишь в виде выпадающих меню, которые нельзя отфильтровать набрав кусок пути.


Я честно говоря не сильно понимаю зачем это надо — фильтровать по части пути.

I>>Как в тотале, так это свистнуть жопой, а как фича для фара(сonemu), так это круто.

SD>FAR != консоль, Conemu != TotalCmd. Зачем запускать FAR внутри Тотала, если он такой весь из себя удобный?

Фар это консоль. Конему это эмулятор консоли. Эмулятор консоли — есть такой плагин для тотала. Так понятно ?

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

Просто хотел проверить, куда вы увильнёте

>Консоль вполне можно использовать из cmd. Соответственно, Conemu сам по себе не является полноценным приложением, а лишь украшатель интерфейса для консолефобов. Без него FAR на много отзывчивей, особенно, когда нечто вешает весь гуй.


Не украшатель, а фича которая уменьшает количество лишних окон. Сейчас чуть не все аппликации это умеют — кол.во лишних окон уменьшать.

I>>Не интересовался. Расскажи, как это делается для Фара ?

SD>Опа, неожиданный разворот В FAR все окошки открываются внутри консоли, это конечно и минус с одной стороны (что нельзя окошки отстыковать от основного окна), но с другой стороны мне такое поведение больше по душе, т.к. отдельноплавающие окна мне очень и очень редко нужны.

Т.е. выходит фар не умеет то, что ты запросил для тотала, правильно ?

I>>Фолдинг в консольном редакторе ? Круто, круто Я как бы тоже видел, но дерьма стараюсь не употреблять.

SD>Ды я тоже не употреблять. Colorer'a и его навигации по файлу хватает с головой. На порядок лучше студии (без VisualAssist).

Ну это ты погорячился. В студии и без ассиста есть вагон сильных фич.

SD>Да, так и есть. Я несколько раз пытался перебраться на Тотал. Но всегда находилась какая-то жопь, из-за которой им было неудобно пользоваться.


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

SD>И да, я не утверждаю, что я хорошо знаю Тотал. В моем изначальном сообщении до разделителя я описал возможности в FAR, которые я использую и просил знающих подсказать есть ли такое в Тотале. После разделителя я перечислил то, что меня в Тотале не устраивало. Опять же, перед ответом я проверил, не изменилось ли чего в Тоталостане.


Лучше бы ты рассказал, что тебе надо делать по работе, а я бы рассказал как бы я это делал в тотале, если конечно на консоль все не завязано.
Re[17]: Почему Delphi всё еще жив?!
От: hattab  
Дата: 20.10.10 14:32
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I> I>> H>Если людям нафиг не уперлись ни генерики, ни юникод, ни многие другие плюшки нафиг им куда-то мигрировать?


I> I>> На пенсию идти.


I> H>Они решают свои задачи меньшими средствами


I> И все равно надо идти на пенсию.


Шашечки? Ехать?
avalon 1.0rc3 rev 363, zlib 1.2.3
Re[34]: Почему Delphi всё еще жив?!
От: CreatorCray  
Дата: 20.10.10 14:40
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>>>Консольщики такие консольщики

I>>>Фолдинг в консольном редакторе ? Круто, круто Я как бы тоже видел, но дерьма стараюсь не употреблять.
CC>>Давай без твоего фирменного говнометания.

I>Хорошо, давай. Ты употребляешь консольный фолдинг ?

Нет. Я пользуюсь файловым менеджером как файловым менеджером.
Код я в файловых менеджерах не пишу.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Забанили по IP, значит пора закрыть эту страницу.
Всем пока
Re[34]: Почему Delphi всё еще жив?!
От: CreatorCray  
Дата: 20.10.10 14:40
Оценка: +2 -1
Здравствуйте, Ikemefula, Вы писали:

I>Людям обычно нужен переход в какую то папку. Тебе почему то нужны псевдонимы

Псевдоним это способ быстро перейти в нужную папку.
При навыке слепой печати данное действие выполняется за доли секунды.

SD>>Я и просил подсказать. Лучше конечно со скриншотами, если это не сложно. Я видел историю переходов и закладки лишь в виде выпадающих меню, которые нельзя отфильтровать набрав кусок пути.

I>Я честно говоря не сильно понимаю зачем это надо — фильтровать по части пути.
Если нужных папок реально много — фильтр это просто мегафича.

I>Просто хотел проверить, куда вы увильнёте

Так и пиши: троллил.

I>>>Фолдинг в консольном редакторе ? Круто, круто Я как бы тоже видел, но дерьма стараюсь не употреблять.

SD>>Ды я тоже не употреблять. Colorer'a и его навигации по файлу хватает с головой. На порядок лучше студии (без VisualAssist).
I>Ну это ты погорячился. В студии и без ассиста есть вагон сильных фич.
Без ассиста студия просто капец какая корявая.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Забанили по IP, значит пора закрыть эту страницу.
Всем пока
Re[18]: Почему Delphi всё еще жив?!
От: Ikemefula Беларусь http://blogs.rsdn.org/ikemefula
Дата: 20.10.10 14:41
Оценка:
Здравствуйте, hattab, Вы писали:

I>> H>Они решают свои задачи меньшими средствами


I>> И все равно надо идти на пенсию.


H>Шашечки? Ехать?


Есть конечно проекты где люди пишут велосипеды "без дженериков" и тд и тд. Как правило это нежелание что либо изучать, т.е. тупо пилят деньги заказчика.
Re[19]: Почему Delphi всё еще жив?!
От: hattab  
Дата: 20.10.10 14:58
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I> I>> H>Они решают свои задачи меньшими средствами


I> I>> И все равно надо идти на пенсию.


I> H>Шашечки? Ехать?


I> Есть конечно проекты где люди пишут велосипеды "без дженериков" и тд и тд. Как правило это нежелание что либо изучать, т.е. тупо пилят деньги заказчика.


Будто нет проектов где пилят с дженериками
avalon 1.0rc3 rev 363, zlib 1.2.3
Re[14]: Почему Delphi всё еще жив?!
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 20.10.10 15:49
Оценка:
Здравствуйте, Serginio1, Вы писали:

S>Здравствуйте, gandjustas, Вы писали:



S>>>>> Объект.ПолучитьОбъект().Получить2Объект().Выполнить(); После выполнения данной команды промежуточные объекты удалятся (По месту релиза). А бывают и очнь длинные цепочки.

G>>>>И что?
S>>> А то, что накапливаются объекты многие из которых содержат ресурсы, котрые нужно освождать чем раньше тем лучше.
G>>"чем раньше тем лучше" зачастую некорректное утверждение.
S> Корректное когда ресурсы заняты, ими нельзя воспользоваться из других приложений.
Реальные примеры такого есть?

S>>>>>>>Плюс в 2009 и дженерики появились.

G>>>>>>Все бы хорошо, но в .NET они появились на 4 года раньше. Кроме того до сих пор самая используемая версия делфей — 7
S>>>>> Но это не значит, что 2009 не существует. Мы же обсуждаем не NET 1.1
G>>>>На .NET 1.1 уже никто не пишет, а на Delphi 7 — вполне.
S>>> Это только говорит о его состоятельности. Хотя честно говоря уж долго он не развивался.
G>>Это говорит о несостоятельности новых версий.
G>>Почему при наличии delphi 2005 и выше, до сих пор на семерке сидят?
S> Delphi 2005 была ориентирована на Net. 2009 уже на натив. C# в Net мощнее поэтому то и развития не получила.
S>2009 уже развитие натива. Но много ли перешли в Net на 4ку?
Я перешел

S>>>>> Ну и как Тебе с Голым IDispatch работается через рефлексию?

G>>>>С dynamic — прекрасно.
S>>> И давно динамики то появились?
G>>Ну в VB они и раньше были, в C# только в 4 версии.
S> Еще VB мне до кучи не хватало. Итак приходится разные макросы писать.
S>Так что намного проще на Delphi написать.
А причем тут макросы? VB.NET мало чем отличается от C# и отлично с ним взаимодействует.
Re[22]: Почему Delphi всё еще жив?!
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 20.10.10 15:55
Оценка: :)
Здравствуйте, hattab, Вы писали:

H>Здравствуйте, gandjustas, Вы писали:


g>> H>Еще и маршалер включается в работу... то-то ганджустас распевался об эффективности .net'а


g>> Снова ты не то померить хочешь. Сколько раз такая функция в среднем вызывается в программах? Я думаю это число гораздо меньше единицы.


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


То есть пример кода, который в реальных приложениях не встречается, а даже если бы встречался то его быстродействие никого бы не интересовало, что-то может доказать?
Я тебе щас столько говна на делфи приведу с таким подходом... Можно начать тупо с возврата объекта из метода и вопроса об управлении временем жизни.


g>> А сколько вызывается аллокатор....


g>> Я помню гонял тесты на Turbo Delphi и .NET на выделение-освобождение, результаты не в пользу делфи были

H>Как раз таки наоборот Ты вспомни топик, где ты мерялся алокаторами Там .net слил и дельфям и алокатору от CreatorCray. У меня все ходы записаны
Не уходи от темы, там алокатор делфи слился. А то что написал CreatorCray далеко не стандартный алокатор, далеко не каждый сможет такой написать и он тупо через new не вызывается
Кроме тогос таким аллокатором не вызывается деструктор при освобождении.
Re[14]: Почему Delphi всё еще жив?!
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 20.10.10 15:57
Оценка:
Здравствуйте, Ikemefula, Вы писали:

I>Здравствуйте, gandjustas, Вы писали:


I>>>За каким хреном нужно писать код выше вместо

I>>>Application.Documents.Current.SomeObjects
I>>>Можешь сходу сказать ?
I>>>Лично мне не нравится писать десять строчек вместо одной и я называю это "париться", потому что не дай бог забудешь, косяки может понадобиться искать неделями.
G>>Так не пиши, ты в чем проблемы увидел то?

I>Повторяю вопрос — в каких случаях надо писать именно так как я показал, а не в одну строчку.

Мне — ни в каких, тебе — не знаю.


I>>>Кто по твоему закроет Эксель если счетчи ссылок на него нулю не равен ?

G>>А кто тебе сказал что не равен? Может почитаешь рихтера и узнаешь когда вызываются финализаторы?

G>>ЗЫ. Если че напиши код сам — увидишь что все закрывается.

I>Писал, потому и сообщаю — не закроется.
Значит не то писал, у меня все закрылось. Может магические плашки в подписи помогли
Re[12]: ЧОЧО?
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 20.10.10 16:12
Оценка:
Здравствуйте, enji, Вы писали:

E>Здравствуйте, Ночной Смотрящий, Вы писали:


НС>>Здравствуйте, enji, Вы писали:


E>>>Развитость языка — а какие именно возможности языка были бы полезны в этом случае?


НС>>К примеру, для работы с СОМ-портом можно использовать Reactive Framework. В Дельфи аналог есть? Для асинхронности все тот же Rx или PLinq. В Дельфи аналог последнего есть?


E>Гм, а зачем? В дельфи есть компонент, у которого есть события — получен символ, переданы данные и т.д. Компонент полностью изолирует порт. Что у него внутрях — я не знаю, может отдельный поток, может порты завершения...


E>На его основе работа с портом пишется весьма просто.


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

А потом сравним вариант с Rx на .NET
Re[23]: Почему Delphi всё еще жив?!
От: hattab  
Дата: 20.10.10 16:34
Оценка:
Здравствуйте, gandjustas, Вы писали:

g> H>Это лишь банальный пример, и он свою функцию выполняет, показывая, что "В .NET этого недостатка нету." не более чем миф. По сравнению с дельфей еще как есть.


g>

g> То есть пример кода, который в реальных приложениях не встречается, а даже если бы встречался то его быстродействие никого бы не интересовало, что-то может доказать?

Это прямое опровержение твоих слов о каких-то проблемах дельфей при работе со строками. Цитирую тебя дословно:

много проблем возникает со строками, особенно когда надо их передавать и получать из внешних модулей.


И еще одно опровержение о якобе безпроблемности аналогичного в .net:

почему в .NET такие проблемы отсуствуют?
Там и COM и и передача между модулями нормально работает.
Наверное это таки недостаток делфи.


Итого, поздравляю тебя, гражданин, дважды соврамши.

g> Я тебе щас столько говна на делфи приведу с таким подходом... Можно начать тупо с возврата объекта из метода и вопроса об управлении временем жизни.


В делфи управление временем жизни объектов ручное. Я уже в курсе, что ты не осиливаешь.

g> g>> А сколько вызывается аллокатор....


g> g>> Я помню гонял тесты на Turbo Delphi и .NET на выделение-освобождение, результаты не в пользу делфи были


g> H>Как раз таки наоборот Ты вспомни топик, где ты мерялся алокаторами Там .net слил и дельфям и алокатору от CreatorCray. У меня все ходы записаны


g> Не уходи от темы, там алокатор делфи слился. А то что написал CreatorCray далеко не стандартный алокатор, далеко не каждый сможет такой написать и он тупо через new не вызывается

g> Кроме тогос таким аллокатором не вызывается деструктор при освобождении.

У тебя с памятью что-то стало
Автор: gandjustas
Дата: 19.03.09
. Результаты на моей тогдашней буке: C# 103ms
Автор: hattab
Дата: 20.03.09
, Delphi 67ms
Автор: hattab
Дата: 20.03.09
(для однопоточки вообще 24ms
Автор: hattab
Дата: 20.03.09
).
avalon 1.0rc3 rev 363, zlib 1.2.3
Re[23]: Почему Delphi всё еще жив?!
От: CreatorCray  
Дата: 20.10.10 16:42
Оценка: +1
Здравствуйте, gandjustas, Вы писали:

G>А то что написал CreatorCray далеко не стандартный алокатор,

А что такое стандартный аллокатор? Где определение "стандартности"?
В С++ стандарте алгоритм аллокации не фиксирован. То что по недоразумению называют стандартным аллокатором это реализация аллокатора изготовителем CRT. Как правило те не парятся и вызывают то, что предоставляет для аллокации памяти система.
Замена глобального аллокатора предусмотрена и разрешена.
Более того, можно по кастомному аллокатору вешать хоть на каждый класс.
Т.е. лехко сделать чтоб например new MySuperPuperString (...) выделялся собственным специальным аллокатором.
Ну а там уже дикий простор для творчества.

G>далеко не каждый сможет такой написать

Да в общем то и WinHeap ещё более не каждый осилит (а он посложнее будет).
Но пользуются им миллионы.
И ничего с ними не делается.

G>и он тупо через new не вызывается

4 строки...
void* __cdecl operator new     (size_t size) {return ThreadPoolAlloc::Alloc (size);}
void* __cdecl operator new[]   (size_t size) {return ThreadPoolAlloc::Alloc (size);}
void __cdecl operator delete[] (void* ptr)   {ThreadPoolAlloc::Free (ptr);}
void __cdecl operator delete   (void* ptr)   {ThreadPoolAlloc::Free (ptr);}

...и всё превосходно вызывается.

G>Кроме тогос таким аллокатором не вызывается деструктор при освобождении.

Вызывается, вызывается. Не беспокойся. Глобальный operator delete об этом заботится сам.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Забанили по IP, значит пора закрыть эту страницу.
Всем пока
Re[24]: Почему Delphi всё еще жив?!
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 20.10.10 16:58
Оценка: :))
Здравствуйте, hattab, Вы писали:

H>Здравствуйте, gandjustas, Вы писали:


g>> H>Это лишь банальный пример, и он свою функцию выполняет, показывая, что "В .NET этого недостатка нету." не более чем миф. По сравнению с дельфей еще как есть.


g>>

g>> То есть пример кода, который в реальных приложениях не встречается, а даже если бы встречался то его быстродействие никого бы не интересовало, что-то может доказать?

H>Это прямое опровержение твоих слов о каких-то проблемах дельфей при работе со строками. Цитирую тебя дословно:

H>

много проблем возникает со строками, особенно когда надо их передавать и получать из внешних модулей.

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

g>> Я тебе щас столько говна на делфи приведу с таким подходом... Можно начать тупо с возврата объекта из метода и вопроса об управлении временем жизни.

H>В делфи управление временем жизни объектов ручное.
Не съезжай с темы, как просто вернуть объект из метода? В C++ можно с shared_ptr вывернуться, в языках с GC вообще проблем нет, а в делфи как?

H>Я уже в курсе, что ты не осиливаешь.

Не переживай за меня, я на делфи много писал.

g>> g>> А сколько вызывается аллокатор....


g>> g>> Я помню гонял тесты на Turbo Delphi и .NET на выделение-освобождение, результаты не в пользу делфи были


g>> H>Как раз таки наоборот Ты вспомни топик, где ты мерялся алокаторами Там .net слил и дельфям и алокатору от CreatorCray. У меня все ходы записаны


g>> Не уходи от темы, там алокатор делфи слился. А то что написал CreatorCray далеко не стандартный алокатор, далеко не каждый сможет такой написать и он тупо через new не вызывается

g>> Кроме тогос таким аллокатором не вызывается деструктор при освобождении.

H>У тебя с памятью что-то стало
Автор: gandjustas
Дата: 19.03.09
. Результаты на моей тогдашней буке: C# 103ms
Автор: hattab
Дата: 20.03.09
, Delphi 67ms
Автор: hattab
Дата: 20.03.09
(для однопоточки вообще 24ms
Автор: hattab
Дата: 20.03.09
).

В более ранней теме delphi слился, искать лень. Да и ставить Turbo чтобы забеги устроить.
Re[25]: Почему Delphi всё еще жив?!
От: hattab  
Дата: 20.10.10 17:28
Оценка:
Здравствуйте, gandjustas, Вы писали:

g> H>Это прямое опровержение твоих слов о каких-то проблемах дельфей при работе со строками. Цитирую тебя дословно:

g> H>

много проблем возникает со строками, особенно когда надо их передавать и получать из внешних модулей.


g> Да ну? Покажешь как на делфи сделать dll с функцией, возвращающей строку, которая будет использоваться другим модулем?


Легко. Есть несколько способов отличающихся различной степенью сложности:
Самый сложный: Использовать общий интерфейс менеджера памяти, типа IMalloc.
Одно из стандартных решений старых версий: Использовать внешний менеджер памяти borlndmm.dll
Простое решение: Использовать строки BSTR, ими управляет ОС (WideString).
Простое решение: Использовать пакеты вместо dll (подходит для любых версий Delphi).
Простое решение: Использовать менеджер памяти FastMM, он самостоятельно реализует шаринг (используется в Delphi c версии 2006).

g> g>> Я тебе щас столько говна на делфи приведу с таким подходом... Можно начать тупо с возврата объекта из метода и вопроса об управлении временем жизни.


g> H>В делфи управление временем жизни объектов ручное.


g> Не съезжай с темы, как просто вернуть объект из метода? В C++ можно с shared_ptr вывернуться, в языках с GC вообще проблем нет, а в делфи как?


Как просто вернуть? Вернуть очень просто:
Result := TObject.Create;

Дальше, либо сам заботишься, либо контейнер с передачей прав владения используешь.

g> H>Я уже в курсе, что ты не осиливаешь.


g> Не переживай за меня, я на делфи много писал.


Оно и заметно

g> g>> Не уходи от темы, там алокатор делфи слился. А то что написал CreatorCray далеко не стандартный алокатор, далеко не каждый сможет такой написать и он тупо через new не вызывается

g> g>> Кроме тогос таким аллокатором не вызывается деструктор при освобождении.

g> H>У тебя с памятью что-то стало
Автор: gandjustas
Дата: 19.03.09
. Результаты на моей тогдашней буке: C# 103ms
Автор: hattab
Дата: 20.03.09
, Delphi 67ms
Автор: hattab
Дата: 20.03.09
(для однопоточки вообще 24ms
Автор: hattab
Дата: 20.03.09
).


g> В более ранней теме delphi слился, искать лень. Да и ставить Turbo чтобы забеги устроить.


Конечно тебе лень, ведь небыло такой темы
avalon 1.0rc3 rev 363, zlib 1.2.3
Re[13]: ЧОЧО?
От: Eugeny__ Украина  
Дата: 20.10.10 17:54
Оценка:
Здравствуйте, gandjustas, Вы писали:


E>>Гм, а зачем? В дельфи есть компонент, у которого есть события — получен символ, переданы данные и т.д. Компонент полностью изолирует порт. Что у него внутрях — я не знаю, может отдельный поток, может порты завершения...


E>>На его основе работа с портом пишется весьма просто.


G>Датыче? напиши-ка прогу, которая читает из порта пакеты, где в первом байте указана длина пакета, а в последующих сам пакет, в конце CRC.

G>После принятия валидного пакета его надо отправить на обработку некоторой функции, при этом порт должен продолжать принимать данные.

G>А потом сравним вариант с Rx на .NET


Хм, а можно сразу пример на дотнете? А то я тут на жабе такие обработчики постоянно пишу, и слабо представляю, как тут что-то автоматизировать. Описания пакетов-то для всех девайсов разные(где-то первый байт длина, где-то два вторых, а первый маркер, где-то маркер конца без длины, CRC у всех разные и часто доморощенные(упаси судьба вас писать драйвер для китайского девайса, дока к которому автопереведена на английский, потом так же на русский, и оригинала нет), частенько приходится страдать анализом дампа с тестовой проги, так как доки вообще нет, часто вообще просто raw байты без маркеров и структуры, вобщем весело).
Поток на запись, поток на чтение, кастомная валидация и составление экземпляра класса "ответ", который уже выше отдается. Коммуникация с портом — тупо исходящий и входящий потоки. Как тут что-то изменить, я представляю слабо.
Новости очень смешные. Зря вы не смотрите. Как будто за наркоманами подсматриваешь. Только тетка с погодой в завязке.
There is no such thing as a winnable war.
Re[24]: Почему Delphi всё еще жив?!
От: Eugeny__ Украина  
Дата: 20.10.10 18:06
Оценка:
Здравствуйте, CreatorCray, Вы писали:

G>>А то что написал CreatorCray далеко не стандартный алокатор,

CC>А что такое стандартный аллокатор? Где определение "стандартности"?
CC>В С++ стандарте алгоритм аллокации не фиксирован. То что по недоразумению называют стандартным аллокатором это реализация аллокатора изготовителем CRT. Как правило те не парятся и вызывают то, что предоставляет для аллокации памяти система.
CC>Замена глобального аллокатора предусмотрена и разрешена.
CC>Более того, можно по кастомному аллокатору вешать хоть на каждый класс.
CC>Т.е. лехко сделать чтоб например new MySuperPuperString (...) выделялся собственным специальным аллокатором.
CC>Ну а там уже дикий простор для творчества.

А уж как туда кто-то с кривыми руками залезет — простор для фантазии о результатах этого просто фантастический.
Новости очень смешные. Зря вы не смотрите. Как будто за наркоманами подсматриваешь. Только тетка с погодой в завязке.
There is no such thing as a winnable war.
Re[14]: ЧОЧО?
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 20.10.10 18:39
Оценка: :)
Здравствуйте, Eugeny__, Вы писали:

E__>Здравствуйте, gandjustas, Вы писали:



E>>>Гм, а зачем? В дельфи есть компонент, у которого есть события — получен символ, переданы данные и т.д. Компонент полностью изолирует порт. Что у него внутрях — я не знаю, может отдельный поток, может порты завершения...


E>>>На его основе работа с портом пишется весьма просто.


G>>Датыче? напиши-ка прогу, которая читает из порта пакеты, где в первом байте указана длина пакета, а в последующих сам пакет, в конце CRC.

G>>После принятия валидного пакета его надо отправить на обработку некоторой функции, при этом порт должен продолжать принимать данные.

G>>А потом сравним вариант с Rx на .NET


E__>Хм, а можно сразу пример на дотнете?

Потом, чтобы интригу не портить.

E__>А то я тут на жабе такие обработчики постоянно пишу, и слабо представляю, как тут что-то автоматизировать. Описания пакетов-то для всех девайсов разные(где-то первый байт длина, где-то два вторых, а первый маркер, где-то маркер конца без длины, CRC у всех разные и часто доморощенные(упаси судьба вас писать драйвер для китайского девайса, дока к которому автопереведена на английский, потом так же на русский, и оригинала нет), частенько приходится страдать анализом дампа с тестовой проги, так как доки вообще нет, часто вообще просто raw байты без маркеров и структуры, вобщем весело).

Соболезную.

E__>Поток на запись, поток на чтение, кастомная валидация и составление экземпляра класса "ответ", который уже выше отдается. Коммуникация с портом — тупо исходящий и входящий потоки. Как тут что-то изменить, я представляю слабо.

Например сделать всю эту хукню асинхронной.
Re[25]: Почему Delphi всё еще жив?!
От: hattab  
Дата: 20.10.10 18:43
Оценка:
Здравствуйте, Eugeny__, Вы писали:

E> А уж как туда кто-то с кривыми руками залезет — простор для фантазии о результатах этого просто фантастический.


Ну дык, спички детям не игрушка
avalon 1.0rc3 rev 363, zlib 1.2.3
Re[15]: ЧОЧО?
От: Eugeny__ Украина  
Дата: 20.10.10 18:52
Оценка:
Здравствуйте, gandjustas, Вы писали:

E__>>Хм, а можно сразу пример на дотнете?

G>Потом, чтобы интригу не портить.

Ну, подождем. Впрочем, мне только для интереса — шарп недоступен, так как 98% клиентов, где крутится приложение(а это тысячи терминалов по всей стране), на Генту, и некоторая часть на Винде, причем паленой(полноценную поддержку таких мы не осуществляем). Кстати, прога 100% pure java, и я не хочу встраивать никакие нативные компоненты.

E__>>А то я тут на жабе такие обработчики постоянно пишу, и слабо представляю, как тут что-то автоматизировать. Описания пакетов-то для всех девайсов разные(где-то первый байт длина, где-то два вторых, а первый маркер, где-то маркер конца без длины, CRC у всех разные и часто доморощенные(упаси судьба вас писать драйвер для китайского девайса, дока к которому автопереведена на английский, потом так же на русский, и оригинала нет), частенько приходится страдать анализом дампа с тестовой проги, так как доки вообще нет, часто вообще просто raw байты без маркеров и структуры, вобщем весело).

G>Соболезную.

Чему именно? Процессу разработки, или тому, что эта задача могла бы решаться каким-то магическим способом проще?

E__>>Поток на запись, поток на чтение, кастомная валидация и составление экземпляра класса "ответ", который уже выше отдается. Коммуникация с портом — тупо исходящий и входящий потоки. Как тут что-то изменить, я представляю слабо.

G>Например сделать всю эту хукню асинхронной.

В каком плане? И так все асинхронно донельзя. Если что, потоки(данных) ввода-вывода также надстройка(по одному потоку(который Thread) на поток(данных) со свои буфером), и они позволяют драйверу не блокироваться на чтении/записи.
Новости очень смешные. Зря вы не смотрите. Как будто за наркоманами подсматриваешь. Только тетка с погодой в завязке.
There is no such thing as a winnable war.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.