@oop_ru

Страница 470 из 785
Sergey
24.01.2018
08:27:56
ну то есть типа кохижена это больше причина для группировки модулей. "случайная" явно хуже "фуцнкционального"

Like
24.01.2018
08:28:10
Mykola
24.01.2018
08:28:54
тут как-то с другой стороны надо подходить

как - я тоже не могу пока ответить

Google
Mykola
24.01.2018
08:32:09
но мысль крутится вокруг эквивалентных преобразований кода

Sergey
24.01.2018
08:32:10
тут как-то с другой стороны надо подходить
ну вот я не уверен... мне кажется это неплохой инструмент что бы объяснить почему ложить код нужно так а не иначе (с учетом типов каплинга разумеется)

Mykola
24.01.2018
08:33:01
ну к примеру у тебя есть две программы, которые делают одно и то же

в одной там ооп и суперсолид, а в другой - процедурка процедурку вызывает

там будет разный коуплинг и кохижен, например

какой код лучше?

Roman
24.01.2018
08:34:48
Смотря какие метрики

Которые определяют что лучше а что хуже.

Sergey
24.01.2018
08:36:16
какой код лучше?
там где кохижен выше а каплинг меньше)

(и это не обязательно будет ООП с суперсолидом))))

Google
Sergey
24.01.2018
08:37:00
больше кохижен -проще находить код. Меньше каплинг - проще вносить изменения

Roman
24.01.2018
08:37:08
Есть там файлик какой-то попарсить в БД закинуть, и в процедурном стиле это займёт 30 минут времени, а Ъ вариант - рабочий день, и критической метрикой является время получения готовой программы - то процедурки, как ни странно лучше. А если ERP CRM Enterprise Rocketscience SupaDupaMega System - то в процедурках можно погибнуть.

Mykola
24.01.2018
08:37:49
но перед этим важно осознать по настоящему два важных вопроса, которые витают в воздухе: - как из программы одного вида сделать программу другого вида? можно ли это вообще сделать? (а автоматически?) - а действительно ли это две одинаковые программы с одинаковыми возможностями?

Roman
24.01.2018
08:37:52
Зависит от того чем, что и как измерять. Какие критерии, каким способом.

Sergey
24.01.2018
08:37:54
но перед этим важно осознать по настоящему два важных вопроса, которые витают в воздухе: - как из программы одного вида сделать программу другого вида? можно ли это вообще сделать? (а автоматически?) - а действительно ли это две одинаковые программы с одинаковыми возможностями?
- не думаю что это возможно - смотря что сравнивать. Если мы не будем учитывать перспективы и т.д. - то можно говорить что они эквивалентны. А если учитывать возможность вносить изменения - то тут уже интереснее.

Mykola
24.01.2018
08:39:52
Тут не думать надо, а математику применять какую-то бешеную

Sergey
24.01.2018
08:40:10
Mykola
24.01.2018
08:40:32
Отнюдь. Есть жизненный пример

Последовательные и параллельные алгоритмы какие-то

Sergey
24.01.2018
08:41:06
p.s. как научиться в математику что бы когда люди скидывают ссылки на книжки по теории категорий хоть чето понимать?)

Mykola
24.01.2018
08:42:02
Я ещё не встречал в теории категорий оценки связности

Там в основном все вокруг теории типов крутится)

Sergey
24.01.2018
08:42:55
я думаю что если избавиться от времени в этом уравнении - то все станет чуть проще

Mykola
24.01.2018
08:43:28
А как ты от него избавиться?

Sergey
24.01.2018
08:43:55
А как ты от него избавиться?
заменить "наше" время на какое-то псевдовремя (вчера у Алана в высказываниях подсмотрел))

со своими свойствами

но я подозреваю что он там про экторы топил

Google
Mykola
24.01.2018
08:44:51
Есть реальный код где время имеет значение. Хз как от него избавиться.

Sergey
24.01.2018
08:45:31
Тут не думать надо, а математику применять какую-то бешеную
короч меня смущает то, что я бешеную математику не знаю. И врядли узнаю (я пытался, я не шарю)

и я думаю что бешеную математику не осилит большинство

так что даже если ты вдруг сможешь формализовать эти субъективные штуки и при помощи своей бешеной математики хотя бы сможешь давать разработчикам подсказки "почему говно"....

то круто, но для начала можно попробовать просто за счет вопросов сделать то же самое

а "преобразователь программ" - это я думаю после того как ты решишь как требования формализовать)

Mykola
24.01.2018
08:47:56
этот преобразователь должен основываться не на "требованиях", а на каких-то вменяемых критериях, некоторой функциии для минимизации

как в симплекс-методе там например

на каждом этапе преобразования твой код лучше и лучше

Sergey
24.01.2018
08:51:18
для этого компайл тайм мир должен совпадать с рантайм миром либо ты должен учитывать рантайм (аля JIT)

более того тебе было бы неплохо учитывать еще и историю VCS

ну и я не думаю что сегодня (или завтра) это будет возможно... так как ты по сути говоришь о том что бы сделать что-то умнее среднего разработчика)

Aleh
24.01.2018
09:42:11
Увы, джоб оферы в другой чат

Max
24.01.2018
20:37:22
Тут не думать надо, а математику применять какую-то бешеную
Как раз таки те кто шарит хорошо в математике достаточно плохо (чаще всего) шарит в погромировании и ООП в частности. Я как то краем глаза глянул одно такое творение, где спагетти на 80к строк и код аля isVorkuta (который хранит bool, и так на каждый город у него)

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

Bohdan
24.01.2018
20:46:29
да вот ни у кого руки не доходят сделать примеры

господа админы может провести тут опрос, кто на чем пишет? для статистики чисто

Kirill
24.01.2018
20:47:40
/stat@combot

Combot
24.01.2018
20:47:41
combot.org/chat/-1001071233926

Mykola
24.01.2018
20:56:42
я на компютере и на ноудбуке

Google
Mykola
24.01.2018
20:58:04
я пытаюсь родить примеры
надо, да... для книги

Admin
ERROR: S client not available

Sergey
24.01.2018
20:58:12
но это сложно и мне лениво...

надо, да... для книги
книги не прикольно, нужны интерактивные упражнения)

Max
24.01.2018
20:59:15
я пытаюсь родить примеры
А что то из рабочей практики взять если? Понятно что какие то моменты опустить, но так ведь само наглядней будет

Mykola
24.01.2018
20:59:49
могу класный пример

из мира пхп симфони

надо?

andretshurotshka?❄️кде
24.01.2018
21:00:08
не

давайте пример из мира языка с генериками

Max
24.01.2018
21:00:17
И было бы круто собрать список проектов на гитхабе, которые можно брать в качестве ориентира (ООП, кохижены и все остальное)

Mykola
24.01.2018
21:00:41
в фейсбучного пхп есть генерики)

Max
24.01.2018
21:00:46
из мира пхп симфони
Давай, конечно

Mykola
24.01.2018
21:01:07
кароч, я не про пхп буду, а так, авьтрактно

просто пример класный

Max
24.01.2018
21:01:46
Таких просто нет :) Это миф. Вплане положительных.
Понятно что идеала нет, но хоть что то же можно использовать как ориентир

Mykola
24.01.2018
21:02:12
о! так есть же книжка с примерами

Google
Anton
24.01.2018
21:02:17
Сколько уж раз пытались делать всякие мудрые дядьки, никто так и не сделал

Mykola
24.01.2018
21:02:18
забыл как называется

помой кота

или как-то так

Anton
24.01.2018
21:02:47
Примеры все только на уточках, от коих толку чуть более чем никакого

Буду рад если меня поправят

Mykola
24.01.2018
21:03:36
никто не заценил шутку про кота :(

Max
24.01.2018
21:04:18
Если примеры чуть сложнее типичного crud, то это уже хорошо будет, пусть и с уточками

никто не заценил шутку про кота :(
Это книжка такая чтоли? Линкани тогда, заценим)

Sergey
24.01.2018
23:00:15
проблема с "примером на гитхабе" в том, что вся прелесть этих всех премудростей проявляется в ходе внесения изменений. Более того, оценить ты это можешь только поработав какое-то время с кодом. Ну то есть это все "легко понять" только когда ты уже прошел тернистую дорожку и понял. А до этого - нифига не очевидные вещи

максимум что я могу придумать - это вопросы которые должны помочь с описанием болезней кода

Страница 470 из 785