Здравствуйте, Head Ache, Вы писали:
HA>Казалось бы, что мешало сделать базовый класс с дефолтной реализацией — нет, нада интерфейс зачем-то.
Ты правда не понимаешь или прикидываешься?
HA>Интересный эффект, если при реализации (очередной версии) класса понадобилось добавить поддержку IDisposable (а вдруг возникла необходимость дернуть неуправляемый код) HA>Это ВО ВСЕХ зависимых приложениях как минимум надо понавтыкать using, HA>а уж если класс был вложен в другой, то и тому другому классу тоже надо прикрутить IDisposable и тоже в его использовании понавтыкать using. HA>А если зависимых классов много, совсем весело становится. HA>То же — в случае отказа от IDisposable. HA>Итого злостное, корявое нарушение принципов ООП: изменение внутренней реализации влечет переделку пользователей открытого интерфейса класса.
Твой вариант?
HA>Добавим к этому, что для сборщика мусора вообще нет никаких хинтов в IDisposable, HA>соответсвенно, сборка мусора возбудится, только когда прилетит ошибка ОС о нехватке свободной памяти или о еще какой ж... в ресурсах.
Какой хинт ты предлагаешь добавить?
Здравствуйте, hattab, Вы писали:
H>Проходили уже. H>
This class represents a string-like object whose value is a mutable sequence of characters.
H>ToString у строки... ну-да, ну-да.
Так ты не то выделил. Основное слово в твоей цитате mutable, а не string.
НС>> И длину указывать не надо, маршаллер об этом сам позаботится. Достаточно просто ToString без параметров. H>Еще и маршалер включается в работу... то-то ганджустас распевался об эффективности .net'а
Снова ты не то померить хочешь. Сколько раз такая функция в среднем вызывается в программах? Я думаю это число гораздо меньше единицы.
А сколько вызывается аллокатор....
Я помню гонял тесты на Turbo Delphi и .NET на выделение-освобождение, результаты не в пользу делфи были
Здравствуйте, hattab, Вы писали:
CC>> H>По моему, с w2k все же UTF-16. CC>> Суррогаты поддерживает, да. Но в потрохах они понимаются не везде. H>Где об этом почитать можно?
В исходниках ядра например.
UTF16 отличается от UCS2 только тем, что UTF16 поддерживает non-BMP диапазон (U+10000 — U+10ffff)и выше а UCS2 только BMP (U+0000 — U+ffff).
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Забанили по IP, значит пора закрыть эту страницу.
Всем пока
Здравствуйте, gandjustas, Вы писали:
G>Даже ты догадался,
Я вообще капец какой вумный. Даже череп жмёт, да!
А вот ты видимо не догадался, так как почему то не согласен с очевидными вещами Re[15]: Почему Delphi всё еще жив?!
G>а в MS гораздо больше и гораздо более умные люди работают
Судя по тому, что они понакрутили в области поддержки storage "умность" людей из МС сильно преувеличена.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Забанили по IP, значит пора закрыть эту страницу.
Всем пока
Здравствуйте, CreatorCray, Вы писали:
CC>Здравствуйте, gandjustas, Вы писали:
G>>Даже ты догадался, CC>Я вообще капец какой вумный. Даже череп жмёт, да! CC>А вот ты видимо не догадался
Я документацию читал
CC>так как почему то не согласен с очевидными вещами Re[15]: Почему Delphi всё еще жив?!
S>>>> Объект.ПолучитьОбъект().Получить2Объект().Выполнить(); После выполнения данной команды промежуточные объекты удалятся (По месту релиза). А бывают и очнь длинные цепочки. G>>>И что? S>> А то, что накапливаются объекты многие из которых содержат ресурсы, котрые нужно освождать чем раньше тем лучше. G>"чем раньше тем лучше" зачастую некорректное утверждение.
Корректное когда ресурсы заняты, ими нельзя воспользоваться из других приложений. S>>>>>>Плюс в 2009 и дженерики появились. G>>>>>Все бы хорошо, но в .NET они появились на 4 года раньше. Кроме того до сих пор самая используемая версия делфей — 7 S>>>> Но это не значит, что 2009 не существует. Мы же обсуждаем не NET 1.1 G>>>На .NET 1.1 уже никто не пишет, а на Delphi 7 — вполне. S>> Это только говорит о его состоятельности. Хотя честно говоря уж долго он не развивался. G>Это говорит о несостоятельности новых версий. G>Почему при наличии delphi 2005 и выше, до сих пор на семерке сидят?
Delphi 2005 была ориентирована на Net. 2009 уже на натив. C# в Net мощнее поэтому то и развития не получила.
2009 уже развитие натива. Но много ли перешли в Net на 4ку? S>>>> Ну и как Тебе с Голым IDispatch работается через рефлексию? G>>>С dynamic — прекрасно. S>> И давно динамики то появились? G>Ну в VB они и раньше были, в C# только в 4 версии.
Еще VB мне до кучи не хватало. Итак приходится разные макросы писать.
Так что намного проще на Delphi написать.
и солнце б утром не вставало, когда бы не было меня
Здравствуйте, hattab, Вы писали:
H>Здравствуйте, Serginio1, Вы писали:
S>> Почему же? Да нет инлайна, но писать очень быстрый код можно легко проверено.
H>Да инлайн есть давно, лет 5 уже как
Спасибо. Что я совсем отстал или забыл . Практики не так много
и солнце б утром не вставало, когда бы не было меня
Здравствуйте, gandjustas, Вы писали:
g> H>Еще и маршалер включается в работу... то-то ганджустас распевался об эффективности .net'а
g> Снова ты не то померить хочешь. Сколько раз такая функция в среднем вызывается в программах? Я думаю это число гораздо меньше единицы.
Это лишь банальный пример, и он свою функцию выполняет, показывая, что "В .NET этого недостатка нету." не более чем миф. По сравнению с дельфей еще как есть.
g> А сколько вызывается аллокатор....
g> Я помню гонял тесты на Turbo Delphi и .NET на выделение-освобождение, результаты не в пользу делфи были
Как раз таки наоборот Ты вспомни топик, где ты мерялся аллокаторами Там .net слил и дельфям и аллокатору от CreatorCray. У меня все ходы записаны
Здравствуйте, CreatorCray, Вы писали:
CC> CC>> H>По моему, с w2k все же UTF-16.
CC> CC>> Суррогаты поддерживает, да. Но в потрохах они понимаются не везде.
CC> H>Где об этом почитать можно?
CC> В исходниках ядра например. CC> UTF16 отличается от UCS2 только тем, что UTF16 поддерживает non-BMP диапазон (U+10000 — U+10ffff)и выше а UCS2 только BMP (U+0000 — U+ffff).
В чем разница между ucs-2 и utf-16 я в курсе Я думал есть где-то дока говорящая о неполной поддержке utf-16 в виндах.
Здравствуйте, gandjustas, Вы писали:
g> g>> g>> Нету в варианте делфи обработки ошибок, да и кто мешает почти также написать?
g> g>> H>Да что вы с этими ошибками, сам-то не видишь, что пример демонстрирует совершенно другое?
g> g>> Тоже самое, только без обработки ошибок
g> H>Ладно, даю подсказку: твой код будет работать медленнее дельфийского в 4 раза (я уже померял ) Так что не рассказывай больше сказок о беспроблемном и могучем .net.
g> Не смеши мои тапочки. Это не тот код, быстродействием которого имеет смысл мериться. Кроме того в реальном приложении такого кода не будет. g> Если мне понадобится перфоманс, я (и многие другие) возьму С, а не делфи.
Здравствуйте, Ikemefula, Вы писали:
I>Ты заметил, что перечисляешь не потребности и даже не юзкейсы, а какие то огрызки ?
Симметрично
I>>>А вот найди как плагин, что бы _на_панели_ фара был запущен тотал. Слабо ? SD>>Про свистнуть жопой CreatorCray уже ответил, разделяю мнение. Т.е. плюс Тотала в том, что его юзерям может понадобиться FAR в панели? Мне Тотал как-то вообще не нужен в панели FAR. I>Это не свистнуть жопой. Это консоль в панели тотала, что бы не надо было дурью маяться. В некоторых случаях очень удобно — получаешь как бы консольное ГУИ приложение, что бы не надо было запускать доп инстанцы всякой дряни. I>Как в тотале, так это свистнуть жопой, а как фича для фара(сonemu), так это круто.
Не, не круто. conemu по мне так очень на любителя.
Просто для FAR фича "гуй в окне" как то не востребована.
Два разных продукта, с двумя разными ЦА.
I>Консольщики такие консольщики I>Фолдинг в консольном редакторе ? Круто, круто Я как бы тоже видел, но дерьма стараюсь не употреблять.
Давай без твоего фирменного говнометания.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Забанили по IP, значит пора закрыть эту страницу.
Всем пока
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>В Дельфи точно так же уперлась, там все строки мутабельные. А вот то что там нет иммутабельной строки, Дельфи совсем не красит.
I>>>Для тотала вагоны плагинов если ты не в курсе. SD>>Вопрос был не достаточно конкретный? Мне не нужны вагоны с плагинами. Я писал о вполне конкретных двух фичах, которые я активно использую.
I>Если тебе нужн делать нечто постоянно, удобно, быстро, то попробуй погуглить. I>А если ты хочешь, что бы Тотал работал точь в точь как Фар то это к доктору. I>Ты заметил, что перечисляешь не потребности и даже не юзкейсы, а какие то огрызки ?
Понимаешь какая штука, изначально я отвечал CreatorCray. Т.е. я просто поделился с ним какие полезняшки есть для облегчения/убыстрения навигации.
Вопрос про Тотал был на тот расчет, что найдется добрая душа, которая расскажет как можно в Тотале так же сделать (напомню: 1. быстрый переход в папку по её псевдониму — "cd:md" переход в мои документы, без отыскивания нужного пункта в выпадающем меню; 2. история просмотров, редактирований, переходов по папкам, в возможностью фильтрации по части pathname). Я не хочу сделать из Тотала FAR, меня интересуют вполне конкретные способы выполнения задач быстрой навигации. Если там что-то реализовано по-другому, но с сохранением функционала, то я ж не против.
Но троллить конечно проще
I>"фичи" которые ты перечислил, есть в тотале "искаропки".
Я и просил подсказать. Лучше конечно со скриншотами, если это не сложно. Я видел историю переходов и закладки лишь в виде выпадающих меню, которые нельзя отфильтровать набрав кусок пути.
SD>>Кстати, какие там есть полезные плагины к Тоталу, кроме плагинов файловой системы, отображателей для Lister'a? I>Если в гугле забанили то помочь конечно сложно. Всего 4 вида плагинов.
Опять же, я не интересовался вагоном плагинов к Тоталу, это и взаправду может выдать Гугль. Меня интересовал личный опыт. Твой опыт. Сложно поделиться? Или ответил лишь бы ответить?
I>Как в тотале, так это свистнуть жопой, а как фича для фара(сonemu), так это круто.
FAR != консоль, Conemu != TotalCmd. Зачем запускать FAR внутри Тотала, если он такой весь из себя удобный? Консоль вполне можно использовать из cmd. Соответственно, Conemu сам по себе не является полноценным приложением, а лишь украшатель интерфейса для консолефобов. Без него FAR на много отзывчивей, особенно, когда нечто вешает весь гуй.
I>Консольщики такие консольщики I>Conemu это сильно для консольщиков, только нахрена нужно, не ясно, если у меня консольных прог то не осталось
Не правильно. Я не фанат консоли. FAR мог бы быть и гуёвым, я б согласился бы им пользоваться. У Тотала просто нет преимуществ для меня, а есть лишь недостатки, которые я уже упоминал. И я не претендую на единственную истину. У каждого свои нужды и привычки. Нет смысла перебираться на то, что тебе менее удобно, или на чем нужный функционал недостижим.
I>Не интересовался. Расскажи, как это делается для Фара ?
Опа, неожиданный разворот В FAR все окошки открываются внутри консоли, это конечно и минус с одной стороны (что нельзя окошки отстыковать от основного окна), но с другой стороны мне такое поведение больше по душе, т.к. отдельноплавающие окна мне очень и очень редко нужны.
I>Они просто табами отображаются, а не тулбаром.
ок
I>Фолдинг в консольном редакторе ? Круто, круто Я как бы тоже видел, но дерьма стараюсь не употреблять.
Ды я тоже не употреблять. Colorer'a и его навигации по файлу хватает с головой. На порядок лучше студии (без VisualAssist).
I>Собственно, видно что ты тотала вобщем то не видел и не пробовал толком, но мнение имеешь
Да, так и есть. Я несколько раз пытался перебраться на Тотал. Но всегда находилась какая-то жопь, из-за которой им было неудобно пользоваться.
И да, я не утверждаю, что я хорошо знаю Тотал. В моем изначальном сообщении до разделителя я описал возможности в FAR, которые я использую и просил знающих подсказать есть ли такое в Тотале. После разделителя я перечислил то, что меня в Тотале не устраивало. Опять же, перед ответом я проверил, не изменилось ли чего в Тоталостане.
Здравствуйте, vdimas, Вы писали:
E__>>Иногда нужно. Но реализация мультиделегата довольно проста, если подумать.
V>Она проста только в системе с GC. А иначе надо думать, кто чем владеет и когда, и не будет ли вызов события отправлен уже мертвому объекту. Весь aggregation в COM плясал именно вокруг этого, и там на счетчиках ссылок не так все тривиально получалось, чтобы избегать взаимного приращения счетчиков, т.е. ненужного лишнего удержания объектов в памяти.
Здравствуйте, gandjustas, Вы писали:
I>>За каким хреном нужно писать код выше вместо I>>Application.Documents.Current.SomeObjects I>>Можешь сходу сказать ? I>>Лично мне не нравится писать десять строчек вместо одной и я называю это "париться", потому что не дай бог забудешь, косяки может понадобиться искать неделями. G>Так не пиши, ты в чем проблемы увидел то?
Повторяю вопрос — в каких случаях надо писать именно так как я показал, а не в одну строчку.
I>>Кто по твоему закроет Эксель если счетчи ссылок на него нулю не равен ? G>А кто тебе сказал что не равен? Может почитаешь рихтера и узнаешь когда вызываются финализаторы?
G>ЗЫ. Если че напиши код сам — увидишь что все закрывается.
Здравствуйте, hattab, Вы писали:
I>> H>Если людям нафиг не уперлись ни генерики, ни юникод, ни многие другие плюшки нафиг им куда-то мигрировать?
I>> На пенсию идти.
H>Они решают свои задачи меньшими средствами
CC>>>Там вообще то между окнами (редактор/просмотр/панели) можно переключаться. И соотвественно редакторов и просмотров может быть много. I>>Ога, круто — переключаться между редакторами, когда можно обойтись без этого. CC>Если у тебя открыто на редактирование 2 редактора то ты в любом случае будешь между ними переключаться. Фокус ввода в винде и всё такое.
Они запросто могут быть видны оба. А в фаре нужно переключаться только для того, что бы посмотреть контент.
Здравствуйте, Феоктистов Александр, Вы писали:
ФА>в однокристалках, си должен побеждать асм, на асме большие проги это гемор, а с++ и подавно, так как они не достаточно большие для монстра с++
О, вы точно хотите поспорить
1. Ручная оптимизация для однокристалок на самом деле в большинстве случаев дает 15-20% выигрыша по скорости и объема проги, кроме того однокристалки довольно просты, там нет конвееров и т.д., поэтому такая оптимизация еще и не слишком сложна.
2. С++ для однокристалок на мой взгляд значительно удобнее Си (хотя многие со мной не согласны ) Например, шаблоны с их компайл-тайм генерацией кода позволяют обренуть региcтры процессора и вместо
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Здравствуйте, enji, Вы писали:
E>>Развитость языка — а какие именно возможности языка были бы полезны в этом случае?
НС>К примеру, для работы с СОМ-портом можно использовать Reactive Framework. В Дельфи аналог есть? Для асинхронности все тот же Rx или PLinq. В Дельфи аналог последнего есть?
Гм, а зачем? В дельфи есть компонент, у которого есть события — получен символ, переданы данные и т.д. Компонент полностью изолирует порт. Что у него внутрях — я не знаю, может отдельный поток, может порты завершения...
На его основе работа с портом пишется весьма просто.