Здравствуйте, Vzhyk, Вы писали:
V>Но во время переделки контора может лишиться больщого заказа, который ее V>и похоронит.
Ну дык — если у тебя большая система, ты ее переписываешь не всю сразу, а постепенно рефакторишь отдельные кусочки. При этом работоспособность всей системы не нарушается. У фаулера много об этом, рекомендую
>> И имеем мы десяток одинаковых программ. V>Ну и что. Если оказались две очень близкие, то их можно объединить, V>остальные никому не мешают.
Они то не мешают, но вносить одну и ту же правку в даже 10 программ — сильно утомляет. И собственно необходимость этого говорит, что что-то у нас не так...
>> Больше 30 уже... V>Во-во, а не 30000.
Я в начале говорил о десятках. Ты же назвал цифру миллиард, теперь 30000. Что дальше?
>> А если у нас появляется "А" поверх "С"? "С" парсится другой программой... V>Бррр. Ничего не понял, что-то вы намудрили.
Эт не мы, это жизнь такая.
Реальный пример — есть протокол lon. Есть протокол ifsf. Ifsf может транслироваться поверх lon, а может поверх tcp. ifsf в свою очередь многоуровневый, там есть общий базовый слой и протокол уровня приложения (свой для каждого приложения)
>> И кстати, почему ты называешь это уродством? Вот например wireshark... V>Не знаю что это такое и почему вы считаете его идеалом?
Про идеал ты сказал Погугли, если интересно, распространенная прога для анализа сетевых протоколов
Здравствуйте, Alexéy Sudachén, Вы писали:
AS>Есть такая классная штука, называется UNIX way ))) Дык вот, если идти по этому пути, то за каждую функцию отвечает своя программа. В вашем случае за первичный разбор каждого входного формата/протокола. Главное чтобы выхлоп у них был понятен другой программе, которая преобразует это во то что нужно.
собственно, это и было источником вдохновения У нас вместо отдельных программ плагины и компоненты, в вместо шела — яваскрипт.
Можно было бы конечно выделить компоненты в отдельные программы, но пришлось бы заводить библиотеку с общим кодом + между компонентами ходят объекты, а не текст. В powershell вроде как можно этого добиться, но насколько я понимаю, только с управляемыми языками. У нас же мало опыта с шарпом, зато много кода на с++ и некоторые знания яваскрипта
Здравствуйте, pkl, Вы писали:
pkl>Где тут прокол — мне надо было сразу догадаться, что для пустяковой проблемы следует нагородить умных универсальных интерфейсов с шаблонами или им следовало точнее задавать вопрос? ))
С чего вы взяли что задача пустяковая? Может там тысячи клиентов, которые коннектятся к серверу, и шлют в сумме 1000 файлов в секунду, может быть немаленьких размеров. Если по вашему это пустяковая задача, то уже заранее понятно, что говорить с вами не о чем.
Можно возразить — этого не было в условии задачи. Так опытность и определяется тем, возникнут ли нужные вопросы или нет, наступали ли на грабли, решали ли проблемы, можете ли предвидеть проблемы. Если вопросов нет — no hire без вариантов.
Здравствуйте, pkl, Вы писали:
pkl>...Я думаю: странное извращение: плодить сущности для такого говна, ну ладно...
pkl>Где тут прокол — мне надо было сразу догадаться, что для пустяковой проблемы следует нагородить ...
Вспоминается кусочек из какого-то романа, читал давным давно но...
Главный герой — химик, проводится собеседование
— Сделайте анализ образца.
— Какого?
— Да любого — вон полный шкаф.
Я подхожу к шкафу с образцами, отрываю первую попавшуюся банку,
высыпаю немного в руку, несу к лабораторному столу беру пробирку,
высыпаю туда, ставлю пробирку на горелку, зажигаю, и тут меня прерывают.
— Достаточно! Вы уже сделали кучу ошибок!