Re[20]: Обновление
От: Сергей Губанов Россия http://sergey-gubanov.livejournal.com/
Дата: 01.11.04 12:07
Оценка:
Здравствуйте, Mamut, Вы писали:

M>Как вы сможете впихнуть, скажем систему авторизации в один файл (обероновский модуль?)?


Систему я впихну в систему модулей, а не в один. А вот, фасад этой системы, возможно в одном модуле уберется.
Re[18]: Обновление
От: Сергей Губанов Россия http://sergey-gubanov.livejournal.com/
Дата: 01.11.04 12:16
Оценка: -5 :)
Здравствуйте, VladD2, Вы писали:

VD> Так проблема в том, что она не нужна, или в том что делать некому?


Я когда первый раз увидел БлэкБокс, то тоже подумал какого черта нет подсветки синтаксиса. Даже хотел сам написать, благо сделать это не сложно — доступ к вьюхе документа свободный. Потом, по здравому размышлению, согласился с мнением изложенным у info21. Дело в том, что в оберонах служебные слова набираются заглавными буквами, и выделять их цветом уже не надо — и так все видно. Зато цвет можно использовать совершенно для других целей. Например, если нужно, по той или иной причине акцентировать внимание на каком-то участке кода, то просто берешь и красишь его в красный цвет (весь, вместе со служебными словами) или каким-то другим способом изменяешь шрифт на необычный.
Re[21]: Обновление
От: Mamut Швеция http://dmitriid.com
Дата: 01.11.04 12:21
Оценка:
Здравствуйте, Сергей Губанов, Вы писали:

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


M>>Как вы сможете впихнуть, скажем систему авторизации в один файл (обероновский модуль?)?


СГ>Систему я впихну в систему модулей, а не в один. А вот, фасад этой системы, возможно в одном модуле уберется.


Но в том-то и дело, что Блэкбокс не способствует созданию системы модулей.

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

Рефакторинг затруднен бинарными обероновскими файлами по причинам здесь
Автор: Mamut
Дата: 29.10.04
. Что делать?
... << RSDN@Home 1.1.4 beta 3 rev. 185>>


dmitriid.comGitHubLinkedIn
Re[13]: Обновление
От: Сергей Губанов Россия http://sergey-gubanov.livejournal.com/
Дата: 01.11.04 12:22
Оценка:
Здравствуйте, VladD2, Вы писали:

VD> Можно поглядеть твой код?


Код нельзя. Собственность фирмы. Да и не на оберонах он так, на старом добром MS Visual C++ + Delphi.

Раньше я работал в "НИКА КОМ", написал вот это: http://www.ncom.ru/win/soft/marsh_master.htm
Re[36]: Component Pascal
От: Сергей Губанов Россия http://sergey-gubanov.livejournal.com/
Дата: 01.11.04 12:23
Оценка: :)))
Здравствуйте, WolfHound, Вы писали:

СГ>>АКТИВНЫЕ ОБЪЕКТЫ,

WH>А чем оно лучше потоков?

Потоки — это чуждая (внешняя) для ОО сущность.
Re[19]: Обновление
От: VladD2 Российская Империя www.nemerle.org
Дата: 01.11.04 12:51
Оценка:
Здравствуйте, Сергей Губанов, Вы писали:

СГ>Новому модулю дается новое имя (так же как с COM-интерфейсами).


Это что?... Я вот каждому новому файлу новое имя даю. Однако COM-интерфейсы вряд ли прийдет в колову распихивать по отдельным ДЛЛ-ям.
... << RSDN@Home 1.1.4 beta 3 rev. 207>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[25]: Мэйнстрим vs. Самосовершенствование :)))
От: prVovik Россия  
Дата: 01.11.04 13:23
Оценка:
Здравствуйте, VladD2, Вы писали:


VD>Я тебе это уже объяснял. Сортировка — это метод. Имея возможность применять его к более широкому ряду объектов мы нарушаем принцип инкапсуляции.

Влад, а как ты вообще относишься к обобщенному программировнию?


ПК>>Давай-ка ты подтвердишь это утверждение хоть какими-то ссылками на классику ООП.

VD>Давай-ка ты пойдеш лесом. А? Я тебе не нанимался искать ссылки по всему Интернету. Попробуй сам ссылками доказать свое утверждение о безграмотности размещения методов в объектах на том лишь основании что в принципе без них можно прежить.
Я хоть и не ПК, но ссылкой поделюсь:
Г.Буч "Объектно-ориентированный анализ и проектирование" 3.6

Для оценки качества классов и объектов, выделяемых в системе можно предложить следующие пять критериев:

* зацепление
* связность
* достаточность
* полнота
* примитивность
...
Примитивными являются только такие операции, которые требуют доступа к внутренней реализации абстракции. Так, в примере с классом Set операция Add (добавление к множеству элемента) примитивна, а операция добавления четырех элементов не будет примитивной, так как она вполне эффективно реализуется через операцию добавления одного элемента.


Или Буч для тебя не авторитет?
... << RSDN@Home 1.1.4 @@subversion >>
лэт ми спик фром май харт
Re[19]: Обновление
От: Mamut Швеция http://dmitriid.com
Дата: 01.11.04 14:42
Оценка:
Здравствуйте, Сергей Губанов, Вы писали:

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


VD>> Так проблема в том, что она не нужна, или в том что делать некому?


СГ>Я когда первый раз увидел БлэкБокс, то тоже подумал какого черта нет подсветки синтаксиса.


И действительно, какого черта?

СГ>Даже хотел сам написать, благо сделать это не сложно — доступ к вьюхе документа свободный. Потом, по здравому размышлению, согласился с мнением изложенным у info21. Дело в том, что в оберонах служебные слова набираются заглавными буквами, и выделять их цветом уже не надо — и так все видно.


А если я всю программу заглавными буквами напишу?

СГ>Зато цвет можно использовать совершенно для других целей. Например, если нужно, по той или иной причине акцентировать внимание на каком-то участке кода, то просто берешь и красишь его в красный цвет (весь, вместе со служебными словами) или каким-то другим способом изменяешь шрифт на необычный.


И часто это нужно? И значит, весь остальной мир зря думает, как бы раскраску кода и Code-Completion наиболее быстро и эффективно сделать?
... << RSDN@Home 1.1.4 beta 3 rev. 185>>


dmitriid.comGitHubLinkedIn
Re[26]: Мэйнстрим vs. Самосовершенствование :)))
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 01.11.04 15:23
Оценка: +1
Здравствуйте, prVovik, Вы писали:

V>Примитивными являются только такие операции, которые требуют доступа к внутренней реализации абстракции. Так, в примере с классом Set операция Add (добавление к множеству элемента) примитивна, а операция добавления четырех элементов не будет примитивной, так как она вполне эффективно реализуется через операцию добавления одного элемента.

V>[/q]

V>Или Буч для тебя не авторитет?


Ну померь скорость последовательного вызова 4 Add и 1 AddRange для ArrayList. Когда померишь продолжим разговор.

P.S. Цитата не к месту. Буч говорил об конкретной реализации, а не о контейнерах вобще.
... << RSDN@Home 1.1.4 beta 3 rev. 219>>
AVK Blog
Re[20]: Обновление
От: Сергей Губанов Россия http://sergey-gubanov.livejournal.com/
Дата: 01.11.04 15:45
Оценка: :))
Здравствуйте, Mamut, Вы писали:

M>А если я всю программу заглавными буквами напишу?


Дык, Вам ни что не мешает и разными цветами каждую букву раскрасить, благо возможности редактора это позволяют.
Re[21]: Обновление
От: Mamut Швеция http://dmitriid.com
Дата: 01.11.04 16:25
Оценка:
Здравствуйте, Сергей Губанов, Вы писали:

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


M>>А если я всю программу заглавными буквами напишу?


СГ>Дык, Вам ни что не мешает и разными цветами каждую букву раскрасить, благо возможности редактора это позволяют.


Что мне нужно? Мне нужна скорость разработки.

Сравните:

Современные средства разаботки
1. Syntax Coloring + Code Completion

Блэкбокс:
Syntax Coloring
1. Write text
2. Ctrl + Shift + Left Arrow
3. Menu -> Fon Selection -> Color Selection -> Ok
4. Repeat 1-4 as needed

Code completion
1. Press F1
2. Search for term
3. Scroll down many pages of text
4. Repeat 1-3 until found

Далее, если разные программисты используют различные цветовые схемы? Их код потом очень интересно будет читать. Причем Блэкбокс это поощряет. А не надо.

Опять же, повторюсь: Почему среды разработки Турбо Паскаль/Турбо С лучше Блэкбокса
Автор: Mamut
Дата: 01.11.04
... << RSDN@Home 1.1.4 beta 3 rev. 185>>


dmitriid.comGitHubLinkedIn
Re[27]: Мэйнстрим vs. Самосовершенствование :)))
От: prVovik Россия  
Дата: 01.11.04 16:27
Оценка:
Здравствуйте, AndrewVK, Вы писали:


AVK>Ну померь скорость последовательного вызова 4 Add и 1 AddRange для ArrayList. Когда померишь продолжим разговор.

См. ниже.

AVK>P.S. Цитата не к месту. Буч говорил об конкретной реализации, а не о контейнерах вобще.

Конкретная реализация тут не при чем. Подглава книги называется Измерение качества абстракции. И по словам Буча, одним из критериев качества интерфейса является его примитивность. Контейнер Set был приведен для примера, чтобы пояснить понятие "примитивность". Кстати, на счет производительности он пишет дальше:

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


Как раз твой случай.
... << RSDN@Home 1.1.4 @@subversion >>
лэт ми спик фром май харт
Re[19]: Обновление
От: VladD2 Российская Империя www.nemerle.org
Дата: 01.11.04 16:31
Оценка:
Здравствуйте, Сергей Губанов, Вы писали:

СГ>Я когда первый раз увидел БлэкБокс, то тоже подумал какого черта нет подсветки синтаксиса. Даже хотел сам написать, благо сделать это не сложно — доступ к вьюхе документа свободный. Потом, по здравому размышлению, согласился с мнением изложенным у info21.


Понимаю. Всегда проще что-то обосновать чем сделать.

СГ> Дело в том, что в оберонах служебные слова набираются заглавными буквами, и выделять их цветом уже не надо — и так все видно.


Насколько я понял парсеру Оберона плевать на кегель букв (или я ошибаюсь?). А раз так, то большие и маленькие буквы — это всего лишь соглашение о кодировании. И никто не обязан их соблюдать. К тому же читать что-то набранное большими буквами крайне неудобно (это можно прочесть в любом руководстве по верстке). Так что навязывать такой стиль, мягко говоры, не красиво.

СГ> Зато цвет можно использовать совершенно для других целей. Например, если нужно, по той или иной причине акцентировать внимание на каком-то участке кода, то просто берешь и красишь его в красный цвет (весь, вместе со служебными словами) или каким-то другим способом изменяешь шрифт на необычный.


Незнаю. Читать код с подсветкой мне намного проще. Есть за что глазу зацепиться. Выделение фрагменов дополнительными цветами конечно выглядит заманчиво. Но какой ценой?! Если из-за этого я обязан отказаться от плоского текста и использовать неизвесный науке бинарный стандарт, то подкраска будет мне уже малым утешением.

В общем, довольно смешно выглядят подобные навации при таком убогом виде. Лучше уж было не выпендриваться и взять вымученные временем решения. И вообще, если бы эти навации были бы действительно ценными, то комерческие продукты давно бы слизали их.
... << RSDN@Home 1.1.4 beta 3 rev. 207>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[14]: Обновление
От: VladD2 Российская Империя www.nemerle.org
Дата: 01.11.04 16:31
Оценка:
Здравствуйте, Сергей Губанов, Вы писали:

СГ>Код нельзя. Собственность фирмы.


С фирмы не убудет если ты продемонстрируешь десяток строк кода.

СГ>Да и не на оберонах он так, на старом добром MS Visual C++ + Delphi.


Забавно. Работаешь на одном, а рекламирушь другое... Не находиш — это странным?

СГ>Раньше я работал в "НИКА КОМ", написал вот это: http://www.ncom.ru/win/soft/marsh_master.htm


Опять таки код тут не увидишь. Стало быть стиль тоже не оценишь.
... << RSDN@Home 1.1.4 beta 3 rev. 207>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[28]: Мэйнстрим vs. Самосовершенствование :)))
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 01.11.04 16:40
Оценка:
Здравствуйте, prVovik, Вы писали:

V>

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


О! Осталось только понять что многие алгоритмы сортировки требуют доступа к внутренним структурам, а, следовательно, являются примитивными методами. Так что цитата твоя таки не в тему.
... << RSDN@Home 1.1.4 beta 3 rev. 219>>
AVK Blog
Re[22]: Обновление
От: Sinclair Россия https://github.com/evilguest/
Дата: 01.11.04 17:03
Оценка: :))) :))
Здравствуйте, Mamut, Вы писали:

M>Опять же, повторюсь: Почему среды разработки Турбо Паскаль/Турбо С лучше Блэкбокса
Автор: Mamut
Дата: 01.11.04

Не, ты не понял. Основной принцип Вирта — "Тяжело в учении, легко в бою". Например, его стремление изничтожить дебаггер за то, что он видишь ли поощряет ленивых программистов, говорит именно об этом. Он хочет, чтобы программер всегда проигрывал логику метода в уме, а где надо — строил ассерты. С его логикой довольно трудно спорить — она сродни логике армейского сержанта. Это прикладных товарищей из коммерческого мира интересуют исключительно вопросы снижения входной планки в индустрию, поэтому они продвигают "рюшечки для инвалидов" типа визуального проектирования, код комплишна, подсветки синтаксиса и прочие пошаговые отладчики. Армейский сержант наборот — будет класть всех мордой в грязь и будить посреди ночи. Зато те, кто выживут — вот те будут кодить правильно просто на уровне рефлексов. Угу. Я, кстати, не понимаю, почему это он не поставил ограничение на частоту компиляции. Нефиг! Ведь это стимулирует написание кода кое-как — фигня, компилятор поправит. Потом тупо берем и бездумно подавляем каждое сообщение компилера. Не хватает скобки — на тебе скобку. Не определен Irerator — доопределим ирератор. Очень это подозрительно. Должно быть так: запускаешь проект на компиляцию — и тебе компилер выкидывает типа удалось/не удалось. А чтобы понять, где не удалось — фтыкаешь через нужный интервал прагму, которая коммент емиттит в аутпут. А потом читаешь листинг компилера — и догадываешься, что типа докуда докомпилялось. Угу.

В общем, я зверств-то не хуже Вирта могу попридумывать.
Вот только некоторые вещи в нашей индустрии совершенно неочевидны. И глупо думать, что один человек, даже самый гениальный, придумает решения всех проблем. Не существует пророков, на которых надо молиться. Как и серебряных пуль. Вирт — просто пожилой человек, со своими (местами оригинальными) взглядами на программирование вообще, и на его преподавание в частности. Надо понимать, что темпы развития технологий таковы, что разработки десятилетней давности могут скорее повредить, чем помочь. Знаете, как смешно читать рассуждения спецов по UI образца 1991 года? Интернет совершенно перевернул многие концепции. То, что прошло проверку временем — остается. Но экспериментальные разработки тем и экспериментальные, что могут оказаться тупиками.
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[20]: Обновление
От: prVovik Россия  
Дата: 01.11.04 17:05
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Незнаю. Читать код с подсветкой мне намного проще. Есть за что глазу зацепиться. Выделение фрагменов дополнительными цветами конечно выглядит заманчиво. Но какой ценой?! Если из-за этого я обязан отказаться от плоского текста и использовать неизвесный науке бинарный стандарт, то подкраска будет мне уже малым утешением.

Еще хуже то, что раскрашивать это надо вручную. Имхо, это не применимо.
... << RSDN@Home 1.1.4 @@subversion >>
лэт ми спик фром май харт
Re[29]: Мэйнстрим vs. Самосовершенствование :)))
От: prVovik Россия  
Дата: 01.11.04 17:05
Оценка: 2 (1)
Здравствуйте, AndrewVK, Вы писали:

AVK>О! Осталось только понять что многие алгоритмы сортировки требуют доступа к внутренним структурам

Вот для контейнеров, сортировка которых действительно требует доступа к внутренней структуре ее, конечно, надо делать внутренним методом.
Для всего остального подойдет внешний обобщенный алгоритм сортировки типа std::sort()
... << RSDN@Home 1.1.4 @@subversion >>
лэт ми спик фром май харт
Re[30]: Мэйнстрим vs. Самосовершенствование :)))
От: prVovik Россия  
Дата: 01.11.04 17:10
Оценка: 4 (3) +1
Здравствуйте, prVovik, Вы писали:

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


AVK>>О! Осталось только понять что многие алгоритмы сортировки требуют доступа к внутренним структурам

V>Вот для контейнеров, сортировка которых действительно требует доступа к внутренней структуре ее, конечно, надо делать внутренним методом.
V>Для всего остального подойдет внешний обобщенный алгоритм сортировки типа std::sort()

Добавлю также, что если интерфейс контейнера позволяет реализовать алгоритм без обращений к внутренней структуре и без значимых потерь в производительности, то этот алгоритм надо делать внешним, а не добавлять его в интерфейс.
... << RSDN@Home 1.1.4 @@subversion >>
лэт ми спик фром май харт
Re[26]: Мэйнстрим vs. Самосовершенствование :)))
От: VladD2 Российская Империя www.nemerle.org
Дата: 01.11.04 17:25
Оценка:
Здравствуйте, prVovik, Вы писали:

V>Влад, а как ты вообще относишься к обобщенному программировнию?


Отлично.

V>Примитивными являются только такие операции, которые требуют доступа к внутренней реализации абстракции. Так, в примере с классом Set операция Add (добавление к множеству элемента) примитивна, а операция добавления четырех элементов не будет примитивной, так как она вполне эффективно реализуется через операцию добавления одного элемента.

V>[/q]

V>Или Буч для тебя не авторитет?


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

К абстрактным рассуждения общ эффективности я тоже отношусь крайне скептически. Рассуждения о том, что "добавление четырех элементов не будет примитивной, так как она вполне эффективно реализуется через операцию добавления" явно натянуто. Добавление нескольких элементов обычно можно реализовать намного эффективнее если иметь доступ к закрытым членам.
... << RSDN@Home 1.1.4 beta 3 rev. 207>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.