Что занятно, ведь о мусоре и посудомойке мы никогда не спорим) А вот о криптографической стойкости перестановок, эллиптической крипты и прочего - вполне и регулярно)
А мусор один хрен я всегда выношу, а посудомойку я загружаю, а жена выгружает)
Ну, мне теперь не надо поднимать жопу, чтобы выключить свет)) И не надо искать кухонный таймер при готовке) Могу спросить погоду) Могу "погуглить" что-нибудь пока ем)
А уж сколько бессмысленных споров дома было решено вопросами к Алисе - не счесть)
Вещаю, как представитель неправильной системы ценностей: для меня проблема в том, что усилия общие, а результат - частный) Поэтому мне по большей степени наплевать на коллег, компанию, продукт, синергию и "общее дело") Все мои отношения с работой - чисто товаро-денежные. Поэтому логично, что я оптимизирую функцию "поменьше сделать за побольше денег".
Друзья и семья у меня за пределами работы имеются)
Пример из моей практики работы над криптографической библиотекой: знание на этапе компиляции определенных констант (если точнее: целых таблиц констант) - позволяет компилятору генерировать код, который лучше векторизуется и работает на 10-15% быстрее, чем код, скомпилированный с кодогенерацией)
Да я на самом деле не против wrapper-ов, более того, я очень даже за и даже уже написал их) Просто заняло это прилично времени, значительно больше "на один час" и потребовало немало усилий) Не говоря уже о том, что теперь их ещё и поддерживать надо)
В общем, wrapper-ы это концептуально правильно, но чем их больше, чем больше сил на поддержку и доработку уходит, ведь хорошие API - сложно писать)
А в моём проекте потребуется значительно больше Verify) Как минимум весь API по работе с X509 сертификатами. А для этого придется ещё пяток других API обернуть, чтобы типы не протекали.
И это работа не на один день даже) Смысл этой работы правда не сильно ясен)
Продумать API хорошего wrapper-а - это прям тонкая работа) Хороший wrapper - это wrapper не повторяющий логику работы низлежащей реализации, а реализующий нужные бизнес-API.
А для этого нужно сильно подумать наперёд, какие потребности реализует этот API и над какими сущностями работает. Это точно не работа на один час)
Фреймворк отличается от библиотеки тем, что в общем случае он выполняет некую работу сам по себе, обладает внутренним состоянием и (самое главное) — не является полностью черным ящиком с точки зрения приложения.
Мне не очень нравится это определение, т.к. оно довольно размытое. С моей колокольни, пока ваша программа использует функциональность извне - это "извне" является библиотекой. Если ваша программа является "плагином" к коду извне - это "извне" является фреймворком.
Получается библиотека реализует функциональность. Фреймворк реализует поведение, и предоставляет точки кастомизации этого поведения.
Обернуть любую внешнюю библиотеку в свой интерфейс — работа на час с перекурами
Штош :) Вот вам для затравки: OpenSSL. Оберните эту библиотеку в С++ интерфейсы "за час с перекурами")) Встретимся через недельку, когда вы будете всё ещё пыхтеть над API)
Не знаю как предыдущий оратор, но да, я предлагаю) Если эффект от действий нулевой, суды - это пустая трата сил.
Чтобы что-то изменилось - надо примыкать, тем или иным образом, к политико-экономичесским силам, которые заинтересованы в уменьшении слежки. Но таковых не наблюдается, а потому пора просто смириться и разрабатывать стратегии жизни в мире, в котором полнейший цифровой беспредел.
Я минусы ставить не могу, но мне в России вроде безопасно в бытовом смысле) Конечно, чувство безопасности пошатнулось из-за войны, но до неё я чувствовал себя вполне комфортно.
Продукты разные есть и рядовой айтишник вполне себе может позволить качественные) Да, они будут дороже, но другие вещи будут сильно дешевле. Коммуналка та же. В среднем, выйдет то же самое.
Как минимум, студенты будут знать про Postgres Pro) Так гляди, подрастут, да внедрят где-нибудь) Сам Postgres Pro с этого вообще ничего не теряет по сути.
Зависит от архитектуры. В той же е2k (Эльбрусы) - там стек это сущности уровня процессора)
VPN? Вполне работает.
Что занятно, ведь о мусоре и посудомойке мы никогда не спорим) А вот о криптографической стойкости перестановок, эллиптической крипты и прочего - вполне и регулярно)
А мусор один хрен я всегда выношу, а посудомойку я загружаю, а жена выгружает)
Ну, мне теперь не надо поднимать жопу, чтобы выключить свет)) И не надо искать кухонный таймер при готовке) Могу спросить погоду) Могу "погуглить" что-нибудь пока ем)
А уж сколько бессмысленных споров дома было решено вопросами к Алисе - не счесть)
Вещаю, как представитель неправильной системы ценностей: для меня проблема в том, что усилия общие, а результат - частный) Поэтому мне по большей степени наплевать на коллег, компанию, продукт, синергию и "общее дело") Все мои отношения с работой - чисто товаро-денежные. Поэтому логично, что я оптимизирую функцию "поменьше сделать за побольше денег".
Друзья и семья у меня за пределами работы имеются)
Есть такой флаг.
-Wl,--version-script. Сходите в ChatGPT за примером использованияКак и в любой стране: переходя дорогу определённым людям, модно огрести проблем) Роль иммигранта только ухудшает ситуацию.
Если в РФ не вести никакой публичной и тем более политической деятельности (а я их не веду), шансы на внезапность очень невелики.
Пример из моей практики работы над криптографической библиотекой: знание на этапе компиляции определенных констант (если точнее: целых таблиц констант) - позволяет компилятору генерировать код, который лучше векторизуется и работает на 10-15% быстрее, чем код, скомпилированный с кодогенерацией)
Концепция черного ящика никак не связана с чистотой функций, но я вас понял. В вашей терминологии действительно фреймворк не черный ящик)
Думаю, ту лучше подойдёт концепция "серого ящика", когда мы имеем входы и выходы, но при этом знаем некоторые детали о внутренней структуре)
Да я на самом деле не против wrapper-ов, более того, я очень даже за и даже уже написал их) Просто заняло это прилично времени, значительно больше "на один час" и потребовало немало усилий) Не говоря уже о том, что теперь их ещё и поддерживать надо)
В общем, wrapper-ы это концептуально правильно, но чем их больше, чем больше сил на поддержку и доработку уходит, ведь хорошие API - сложно писать)
Возможно мы по разному понимаем черный ящик)
Да нет, я пишу вообще условный TLS Proxy. А заменить можно кучей всего. Ну, например BoringSSL, Botan, wolfSSL, NSS, GnuTLS, да тысячи их)
А в моём проекте потребуется значительно больше Verify) Как минимум весь API по работе с X509 сертификатами. А для этого придется ещё пяток других API обернуть, чтобы типы не протекали.
И это работа не на один день даже) Смысл этой работы правда не сильно ясен)
Продумать API хорошего wrapper-а - это прям тонкая работа) Хороший wrapper - это wrapper не повторяющий логику работы низлежащей реализации, а реализующий нужные бизнес-API.
А для этого нужно сильно подумать наперёд, какие потребности реализует этот API и над какими сущностями работает. Это точно не работа на один час)
Мне не очень нравится это определение, т.к. оно довольно размытое. С моей колокольни, пока ваша программа использует функциональность извне - это "извне" является библиотекой. Если ваша программа является "плагином" к коду извне - это "извне" является фреймворком.
Получается библиотека реализует функциональность. Фреймворк реализует поведение, и предоставляет точки кастомизации этого поведения.
Штош :) Вот вам для затравки: OpenSSL. Оберните эту библиотеку в С++ интерфейсы "за час с перекурами")) Встретимся через недельку, когда вы будете всё ещё пыхтеть над API)
Но ведь вся история в том, что никуда я не пройду, никаких штрафов не заплачу и ничего со мной не будет.
Получается, вроде как не я живу в мире фантазий, а вы?)
Не знаю как предыдущий оратор, но да, я предлагаю) Если эффект от действий нулевой, суды - это пустая трата сил.
Чтобы что-то изменилось - надо примыкать, тем или иным образом, к политико-экономичесским силам, которые заинтересованы в уменьшении слежки. Но таковых не наблюдается, а потому пора просто смириться и разрабатывать стратегии жизни в мире, в котором полнейший цифровой беспредел.
Я минусы ставить не могу, но мне в России вроде безопасно в бытовом смысле) Конечно, чувство безопасности пошатнулось из-за войны, но до неё я чувствовал себя вполне комфортно.
Продукты разные есть и рядовой айтишник вполне себе может позволить качественные) Да, они будут дороже, но другие вещи будут сильно дешевле. Коммуналка та же. В среднем, выйдет то же самое.
Как минимум, студенты будут знать про Postgres Pro) Так гляди, подрастут, да внедрят где-нибудь) Сам Postgres Pro с этого вообще ничего не теряет по сути.
:)