Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
В начале писали о неподъемности Boost, могу сказать что не залезая в исходники этих библиотек можно спокойно продолжать программировать с их использованием, но когда понимаешь, что не понимаешь как работает например Spirit, когда любопытно и медитируешь на Proto, тогда да, понимаешь что в этом языке есть куда расти, и что изучать. Помните, чем больше я изучаю С++ тем меньше я понимаю С++? Реально не хватает экосистемы, простых и удобных фреймворков, но есть конечно надежда что всё измениться, и тогда-то я перестану кодить на Scala (да, я уже запланировал комбэк), и вернусь обратно, и будет уже совершенно другое кодовство, будет ФП по жесткой схеме, а не только макро-магия прекомпила. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2016, 17:08 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
народ, чем отличаеются темы "В какую сторону движется C++?" от "Куда катится C++" ? :) или я чего-то не догнал? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2016, 19:04 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
alexy_black, В одном оптимисты, в другом — пессимисты, Которые как известно просто хорошо информированные оптимисты ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2016, 20:33 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
Изопропил, гы, какая животрепещющая тема )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2016, 20:48 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
alexy_blackнарод, чем отличаеются темы "В какую сторону движется C++?" от "Куда катится C++" ? :) или я чего-то не догнал? Да. Топики действительно похожи. Но насколько я понял месседж. MasterZiv считает что развитие С++ стоит на распутье. Создатели не могут развивать одновременно два направления. ФП и мета-программинг. Я-бы голосовал за ФП т.к. считаю что у него больше возможностей и он интереснее. Мета-кодинг исчерпал сам себя. Мы уже больше ничего высосать из него не можем. Осталось постулировать понятие ЧИСЛА через шаблоны и определить базовые алгебры. Есть в этом какой-то философский тупик. Получается что С++ ники каг-бе решают фундаментальные проблемы которые по принципиально отсутствуют к примеру в Delphi. Или подобно космомольцам сами создают себе трудности которые решают. Но каково бизнес-value шаблонов - никто сказать не может. Или не может провести исследование и доказать что шаблоны очень сильно необходимы бизнесу. Скорее всего это просто игры разума. Как-то так. По сабжу я не являюсь шаблоно-хейтером. Я просто инженер который искренне удивляется умению других инженеров создавать себе трудности. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.09.2016, 23:42 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
maytonНо каково бизнес-value шаблонов - никто сказать не может. Или не может провести исследование и доказать что шаблоны очень сильно необходимы бизнесу.мне шаблоны реально сокращают рутинный код в разы. Можно теперь сказать, что шаблоны необходимы бизнесу? ;-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2016, 00:10 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
egorychmaytonНо каково бизнес-value шаблонов - никто сказать не может. Или не может провести исследование и доказать что шаблоны очень сильно необходимы бизнесу.мне шаблоны реально сокращают рутинный код в разы. Можно теперь сказать, что шаблоны необходимы бизнесу? ;-) Нет, теперь должен провести исследование и доказать Вот то-то же, ждет философский тупик. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2016, 00:26 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
maytonЯ-бы голосовал за ФП т.к. считаю что у него больше возможностей и он интереснее.Вот сижу, думаю. А чего нам в С++ сейчас не хватает чтобы использовать ФП? И прихожу к выводу что уже сейчас все есть. Тут надо не язык развивать, а программистов обучать. Что такое ФП? Это ж всего-навсего полный запрет обращаться к переменным из внешней области видимости. И все. Получила функция на вход переменную, обработала, отдала результат другой функции ... и так пока не решим всю задачу. Как ни странно, но ФП не подразумевает полную имплементацию лямбда-исчисления. maytonМета-кодинг исчерпал сам себя.Вот если хочешь полноценное лямбда-исчисление получить тогда и мета-программирование понадобится, иначе абстракции сделать не получиться. Впрочем тут я не уверен на все сто. Просто я как зачет сдал по лямбдам, так и забыл их... maytonНо каково бизнес-value шаблонов - никто сказать не может. Или не может провести исследование и доказать что шаблоны очень сильно необходимы бизнесу.Шаблоны могут быть слегка полезны как заменитель вариантных типов. Этакое решение для бедных и только на этапе компиляции. Но и все. maytonПо сабжу я не являюсь шаблоно-хейтером. Я просто инженер который искренне удивляется умению других инженеров создавать себе трудности.Поздно. Тебя уже записали :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2016, 00:39 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
egorychmaytonНо каково бизнес-value шаблонов - никто сказать не может. Или не может провести исследование и доказать что шаблоны очень сильно необходимы бизнесу.мне шаблоны реально сокращают рутинный код в разы. Можно теперь сказать, что шаблоны необходимы бизнесу? ;-)Мне жутко хочется посмотреть на этот рутинный код который сокращается шаблонами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2016, 00:40 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
White OwlМне жутко хочется посмотреть на этот рутинный код который сокращается шаблонами. Самый простейший пример: std:string и std::wstring код которых без шаблонов пришлось бы продублировать, а так это просто две строки с typedef и один общий шаблон. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2016, 01:48 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
White OwlМне жутко хочется посмотреть на этот рутинный код который сокращается шаблонами. Если клянетесь не воровать! :) Код: plaintext 1. 2. 3. 4. 5. 6. Использование Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Использование тоже можно было бы щаблонизировать, но пока копипаст :) Появится еще один тип игровых объектов - методы find... и fill... останутся теми же. Но на этапе компиляции будут предъявлены определенные требования к новому типу игровых объектов. Не забалуешь :) И вообще - очень много где используем. Если есть копипаст - надо подумать как применить шаблоны. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2016, 05:22 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
White OwlМне жутко хочется посмотреть на этот рутинный код который сокращается шаблонамида std::vector же, иначе пришлось бы или каждый раз делать работу с массивом данных, или организовывать свою иерархию, как это делается в классических примерах про виртуальные функции в с++ alex_kЕсли клянетесь не воровать! :)"мы украли твою идею, теперь станем миллионерами" :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2016, 05:59 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
White OwlmaytonЯ-бы голосовал за ФП т.к. считаю что у него больше возможностей и он интереснее.Вот сижу, думаю. А чего нам в С++ сейчас не хватает чтобы использовать ФП? И прихожу к выводу что уже сейчас все есть. Тут надо не язык развивать, а программистов обучать. Что такое ФП? Это ж всего-навсего полный запрет обращаться к переменным из внешней области видимости. И все. Получила функция на вход переменную, обработала, отдала результат другой функции ... и так пока не решим всю задачу. Как ни странно, но ФП не подразумевает полную имплементацию лямбда-исчисления. Ну... прежде всего надо формализовать список в понимании ФП. И дать возможность толкать в него микс из типов. А это требует RTTI. То о чем говорил Илья. Такое должно работать. Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2016, 08:33 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
White OwlШаблоны могут быть слегка полезны как заменитель вариантных типов. Этакое решение для бедных и только на этапе компиляции. Но и все. Если рассматривать std::vector, std::map - как набор алгоритмов "над ccылками" (опять гребаный RTTI) то нам шаблонизация и не очень нужна. Возможно имеет смысл оценить контракты "сравнения" и "хеширования" двух объектов а это ближе к интерфейсам чем к шаблонам. Вобщем взять курс на пересмотр необходимости. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2016, 08:53 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
я ещё вспомнил примерчик, модульная надстройка над классами. Код: plaintext 1. 2. 3. 4. и куча других прикольных веществ вещей от Александреску ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2016, 10:51 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
White OwlМне жутко хочется посмотреть на этот рутинный код который сокращается шаблонами.ничего военного. Добавление справочника в главное меню. Создать QAction, добавить его в главное меню, написать для него слот. Шаблоном это делается в одну строку, без шаблона - 7 строк для каждого справочника. Справочников - порядка 50 на приложение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2016, 11:05 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
mayton, спасибо :) мне кажется, что это не мешает друг другу... ну dynamic_cast никак не мешает тому, что есть шаблоны, а шыблоны никак не мешают тому, что есть dynamic_cast.. чтобы убрать шаблоны, у всех классов и, возможно, функций, должен быть один общий суперкласс.. лучшу уж шаблоны :) а то придется от вектора димамокастить в нужный тебе класс.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2016, 13:38 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
maytonТакое должно работать. Код: plaintext 1. Пожалуйста Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2016, 13:57 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
alexy_blackлучшу уж шаблоны Вы так говорите, как будто шаблоны это что-то плохое, и мы вынуждены их терпеть, потому что без них еще хуже ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2016, 13:59 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
alexy_blackmayton, спасибо :) мне кажется, что это не мешает друг другу... ну dynamic_cast никак не мешает тому, что есть шаблоны, а шыблоны никак не мешают тому, что есть dynamic_cast.. чтобы убрать шаблоны, у всех классов и, возможно, функций, должен быть один общий суперкласс.. лучшу уж шаблоны :) а то придется от вектора димамокастить в нужный тебе класс.. С шаблонами (compile time polymorphism) при несоответствии типов будет ошибка компилятора, а без шаблонов с RTTI (runtime polymorphism) не будет ошибки компилятора. Очевидно же что RTTI лучше, т.к. нет ошибки Вообще компилятора не должен выдавать ошибки, тогда все программы будут правильными. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2016, 14:20 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
alexy_blackdynamic_cast делает runtime check. Это работа процессора, которую можно было бы избежать, делая проверки на этапе компиляции. Работа процессора, к стати, это потраченная электроэнергия. Единственный способ процессору потратить электроэнегрию - выделить тепло. Ну а тепло будет рассеяно во вселенной, увеличивая энтропию. dynamic_cast увеличивает энтропию! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2016, 14:43 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
alex_kalexy_blackdynamic_cast делает runtime check. Это работа процессора, которую можно было бы избежать, делая проверки на этапе компиляции. Работа процессора, к стати, это потраченная электроэнергия. Единственный способ процессору потратить электроэнегрию - выделить тепло. Ну а тепло будет рассеяно во вселенной, увеличивая энтропию. dynamic_cast увеличивает энтропию!да, я об этом же :) поэтому считаю шаблоны полезными - без них все будет в рантайме, а это не гуд. я за мир во всем мире и за чистую экологию! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2016, 15:14 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
alexy_blackя за мир во всем мире и за чистую экологию!Можно и "лучше" сказать. "Трахтор в поли дыр, дыр, дыр. Мы за мыр! Мы за мыр!" /Павло Тычына/ PS: Ни кто не против STL и template. Разве кто-то утверждал обратное? ИМХНО мне этот подход и его реализация не нравится. Но из этого абсолютно не следует, что их использовать не буду. Буду - когда посчитаю уместным ... Такой же подход у любого из форумчан ... Что обсуждаете то и что друг другу доказываете /и пытаетесь убедить/? Нет еще "идеального" языка программирования и не только ... ИМХНО самая большая польза от этого и других форумах может быть лишь в том, чтобы научиться не хамить, настаивать на своем, уважать мнение других, ... Остальное ... ... ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2016, 17:18 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
Владимир2012, да, мне тоже не нравится.. или я двже не знаю как к этому относится :) вот например строка. с одной стороны, я бы хотел, чтобы это был набор символов, но это не так. то есть в плюсах std::string - это контейнер char, но символы не влезают в char.. то есть иногда std::string::size не равно кол-ву букв в слове, там хранящимся. с другой стороны, это как посмотреть: для работы со строками, есть потоки, а это просто контейнер в памяти, поэтому без раницы что у него там что-то не влезает, и хорошо, что я могу управлять где он хранит - больше гибкости. и срзу куча вопросов для работы со строкам: символ ударения, например, это символ, но люди воспринимают его как часть буквы. то есть слово из пяти букв плюс ударение - это шесть символов для компа, но почти любой скажет, что это пять букв.. естественно одним универсальным подходом тут не обойдешься. поэтому мне нормально, что это сделано на шаблонах. а для подсчета и операций, можно использовать, например, подход boost.locale - там нужно указать что ты хочешь получить, кол-во символов, слов и т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2016, 17:37 |
|
||
|
Куда катится C++
|
|||
|---|---|---|---|
|
#18+
White OwlМне жутко хочется посмотреть на этот рутинный код который сокращается шаблонами. Anatoly MoskovskyСамый простейший пример: std:string и std::wstring код которых без шаблонов пришлось бы продублировать, а так это просто две строки с typedef и один общий шаблон.ммм... может быть. Однако мне как пользователю библиотеки абсолютно до лампочки как именно организован код внутри библиотеки, даже если там будет полноценный копи-паст. До тех пор пока библиотека работает мне не важно сколько там строк внутри. А когда я пишу собственный класс для строк, я его делаю на основе юникода (с наследованием от ICU) и никакие std::w?string мне не нужны вообще. alex_kЕсли клянетесь не воровать! :)Не вижу в приведенном примере проверки типов на этапе компиляции. Зато проверку типов в рантайме вижу. Не засчитано. CEMbда std::vector же, иначе пришлось бы или каждый раз делать работу с массивом данных, или организовывать свою иерархию, как это делается в классических примерах про виртуальные функции в с++Угу. Работа со списками это пожалуй единственное более-менее оправданное использование шаблонов. egorychничего военного. Добавление справочника в главное меню. Создать QAction, добавить его в главное меню, написать для него слот. Шаблоном это делается в одну строку, без шаблона - 7 строк для каждого справочника. Справочников - порядка 50 на приложение. Уточни, что есть "справочник" в данной задаче? У меня в качестве справочников всегда используются различные варианты хешей/мапов со строковыми ключами и комментариями. Ни разу не видел нужды их унифицировать на основе шаблонов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.09.2016, 18:09 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=39302428&tid=2018431]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
70ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
58ms |
get tp. blocked users: |
1ms |
| others: | 13ms |
| total: | 181ms |

| 0 / 0 |
