tag:blogger.com,1999:blog-10303035.post8821761317250153026..comments2024-02-04T23:20:04.066+03:00Comments on Алёна C++: Приняла участие в подкасте Радио ТAlenahttp://www.blogger.com/profile/09389124127364799922noreply@blogger.comBlogger66125tag:blogger.com,1999:blog-10303035.post-8851411273407864492014-09-22T14:54:37.122+04:002014-09-22T14:54:37.122+04:00Прошу прощения за некрокоммент, но этот выпуск «Ра...Прошу прощения за некрокоммент, но этот выпуск «Радио-Т» был одним из самых технически интересных, ведущих так никто не гонял (кроме гостьи из IBM), а ведущие никогда так не атаковали гостя (кроме гостьи из IBM, но то был другой выпуск:). Без преувеличения, это золотой фонд подкаста.Captain C++https://www.blogger.com/profile/16853746283688964029noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-69827198648385925782011-05-22T19:54:33.846+04:002011-05-22T19:54:33.846+04:00Указанная вами ссылка на выпуск не рабочая, к сожа...Указанная вами ссылка на выпуск не рабочая, к сожалению. Новая => http://new.radio-t.com/2011/01/222_8801.htmlAnonymousnoreply@blogger.comtag:blogger.com,1999:blog-10303035.post-62057478059281179442011-03-17T16:09:45.199+03:002011-03-17T16:09:45.199+03:00И как же хорошо, что уметь программировать - это л...И как же хорошо, что уметь программировать - это лучше чем шарить в программировании... <br /><br />Из прослушивания подкаста у меня сложилось мнение о ведущих как о людях, которые способны перейти на любую технологию, если так скажет рынок. И если при переходе на новую технологию будет иметься выбор, то он будет сделан исходя из задачи, а не потому, что такая-то технология аж позволяет написать целый драйвер.<br /><br />А для Явы не будет нужна виртуальная машина, если кто-нибудь напишет соответствующий компилятор.<br /><br />Так что нечего поливать людей грязью, особенно по причинам, высосанным из своего же пальца.toiamahttps://www.blogger.com/profile/04003698682594797671noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-82645697426716401072011-03-16T09:57:46.442+03:002011-03-16T09:57:46.442+03:00Чувачки в подкасте похоже вообще в программировани...Чувачки в подкасте похоже вообще в программировании не шарят :-) пусть они драйвера на джаве напишут ага (или на сишарпе). Чтоб их говнокод джавовский заработал надо виртуальную машину запустить которая написана на C/C++ (это если еще памяти и мощи проца хватит). Они походу хабранутые :-)bojlahghttps://www.blogger.com/profile/06065336536790752703noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-34287783248262862582011-01-31T05:57:19.083+03:002011-01-31T05:57:19.083+03:00shebdim
В силу разных причин ваш блог не читаю, но...<b>shebdim</b><br /><i>В силу разных причин ваш блог не читаю, но ценю :) Специально зашёл, чтобы поблагодарить :)</i><br /><br />спасибо :-)Alenahttps://www.blogger.com/profile/09389124127364799922noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-60958541279552955942011-01-27T15:54:22.980+03:002011-01-27T15:54:22.980+03:00Только сейчас послушал 222 радиот.
Мне очень понр...Только сейчас послушал 222 радиот.<br /><br />Мне очень понравилось как вы вели дискуссию на столь холиварную тему. Зная как Умпутун умеет "вдарить" в "подставившегося" я боялся что может получиться грубо и неинтеллигентно :) Однако вы были на высоте. Я получил истинное удовольствие слушая вас.<br /><br />В силу разных причин ваш блог не читаю, но ценю :) Специально зашёл, чтобы поблагодарить :)Anonymoushttps://www.blogger.com/profile/14079784757216823624noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-58853850137922282112011-01-23T21:04:55.791+03:002011-01-23T21:04:55.791+03:00Собсно в подтверждение моего предыдущего поста - с...Собсно в подтверждение моего предыдущего поста - ссылочка <a href="http://www2.research.att.com/~bs/applications.html" rel="nofollow">C++ Applications</a>SVGreghttps://www.blogger.com/profile/17045424001411185612noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-19770614940877595402011-01-23T19:42:54.256+03:002011-01-23T19:42:54.256+03:00Работа в исполняющей среде, это как покупка товара...Работа в исполняющей среде, это как покупка товара у перекупщика - тот же товар но втридорога. И никто не замечает, что практически все Unix системы написаны на C/C++, большай часть Windows написана на C/C++.<br />Java - это исключительно прикладной язык для прикладных задач. Я думаю тут даже спорить не о чем.<br /><br />Алёна - Вас было приятно теперь не только читать, но и слышать ))))SVGreghttps://www.blogger.com/profile/17045424001411185612noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-607454003103523572011-01-21T20:56:43.050+03:002011-01-21T20:56:43.050+03:00Алёна, спасибо, вы здорово раскрасили Радио-Т. Им ...Алёна, спасибо, вы здорово раскрасили Радио-Т. Им очень нехватало вашего голоса.Nikita A Zeeminhttps://www.blogger.com/profile/09558873057605110345noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-38960082185017914362011-01-21T20:49:17.179+03:002011-01-21T20:49:17.179+03:00Алёна, к устным баталиям нужно готовиться... Прове...Алёна, к устным баталиям нужно готовиться... Провести разведку, побольше узнать о противнике. В ходе беседы постоянно сквозило подменой понятий: то язык, то библиотека, то платформа, то вакансии в Америке - не ясно что с чем сравнивалось. Бред про glib особенно понравился. Ниша С++ Страуструпом определена как, разработка библиотек. У Java - Web приложения. А по поводу вакансий, тут также вилка: мало С++ по экономическим причинам - получить быстро выгоду. Сами возможности языка здесь не причем. Java давит всем весом своей платформ... Конечно кроссовость и коробочность это понятно и круто для менедров...<br />Бьерн рекомендовал изучать низкий уровень программинга. Понять смысл эволюции языка и вообще научиться программировать отлично на чистом СИ. Правильный путь именно восходящего развития. Если писать только на STL без понимания на уровне ОС разница парадигм в умах программистов С++ и Java не существенна. Получается узкий кодер без опоры. И еще, думаю, что не правильно измерять результат затраченными усилиями и значимость результата зарплатой. Или можно?Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-10303035.post-5306422395156382092011-01-20T18:07:41.547+03:002011-01-20T18:07:41.547+03:00К теме разговора в начале подкаста, нашелся рейти...К теме разговора в начале подкаста, нашелся <a href="http://spb.hh.ru/article.xml?articleId=1100" rel="nofollow"> рейтинг языков по данным кадрового агенства </a>Rinat Galiulinhttps://www.blogger.com/profile/15934508188322401837noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-33417241781944727872011-01-20T12:12:25.233+03:002011-01-20T12:12:25.233+03:00Alex Ott
небольшое исследование на тему умные указ...<b>Alex Ott</b><br /><i>небольшое исследование на тему умные указатели С++ vs. GC в части производительности</i><br />Продолжая то, что напрямую не относится к этому посту :), скажу, что:<br />1) странный тест - хорошо бы посмотреть на результаты работы профилировщика;<br />2) за то, как используется boost::shared_ptr в тесте (см. исходный код в тамошних коментах), я бы "оторвал...", т.е. заставил выучить boost::shared_ptr best practices наизусть.<br />Хотя отрицать то, что GC может выигрывать у детерминированного (программистом) управления памятью (и уже тем более при подсчете ссылок) глупо;<br />3) в свете C++0x и move semantic в будущем удастся сократить количество вызовов конструктора копирования boost::shared_ptr (т.е. кол-во выполняемых CAS-операций), заменив некоторые из них вызовами move-конструктора (несколько операций копирования raw pointer) - конечно это не спасет shared_ptr в этом тесте, но все равно "новые результаты" будут интересными (особенно для "цппшников").<br /><b>Алёна</b><br /><i>Хочу. Но я много чего хочу, не факт что соберусь.</i><br />Был бы очень рад видеть Ваши (!) статьи не только об умных указателях, но и о других известных (в разрезе C++) идиомах/шаблонах проектирования - уж очень интересен Ваш опыт (не только геймдев).<br />И, кстати, не знал про Delphi - я и сам с него начинал, но после того, как узнал, как ведут себя конструкторы в Delphi при выбрасывании из них исключения - брррр...<br />Подкаст, кстати, получился хороший - приятно послушать такой "не напрягающе" лёгкий троллинг, не перегруженный перечислением того, что "все уже и так знают". Я вот люблю C++, но деньги получаю за Java. Может быть, именно владение несколькими языками, "успокаивает душу программиста" и позволяет не напрягаться по поводу очередного холивара.Marat Abrarovhttps://www.blogger.com/profile/01714473137005987457noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-27711412900471704772011-01-20T10:21:05.523+03:002011-01-20T10:21:05.523+03:00@valexey:
ByteBuffer -- это совсем не ручное упра...@valexey:<br /><br />ByteBuffer -- это совсем не ручное управление памятью в Java. Если ведущие подкаста такие вещи утверждают, то это всего лишь свидетельствует об их уровне.<br /><br />Ручное управление памятью есть в Real-Time Java. Вот пара ссылок для информации:<br /><br />http://java.sun.com/developer/technicalArticles/Programming/rt_pt1/<br /><br />http://www.cs.purdue.edu/homes/jv/pubs/isorc04.pdf<br /><br />Только, имхо, траха с управлением памятью в Java в этих случаях будет не меньше, если не больше, чем в C++.eao197https://www.blogger.com/profile/17283739752119445290noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-42601501153930585252011-01-20T10:06:29.808+03:002011-01-20T10:06:29.808+03:00А вот насчёт auto_ptr подумалось. Он мне вообще нр...А вот насчёт auto_ptr подумалось. Он мне вообще нравится потому что быстрый. Такой-же быстрый, как void*. Все эти shared_ptr только тормозят и кучу фрагментируют, их стараюсь без нужды не трогать. Так вот, auto_ptr замечательно лезет в контейнеры, если запихивать его туда через move(). Проблема возникает с std::sort, который, зараза такая, оказывается делает копию опорного элемента. Это нихрена не хороший сюрприз. Граждане, будьте осторожны, когда сортируете что-то сложное.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-10303035.post-90664753586185620692011-01-20T03:32:38.796+03:002011-01-20T03:32:38.796+03:00Да, а на С++, из повседневно bи повсеместно исполь...Да, а на С++, из повседневно bи повсеместно используемых ОС написан например Symbian. Микроядерная система реального времени как бы :-)valexeyhttps://www.blogger.com/profile/02594309440030597264noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-27858431094252721632011-01-20T03:31:22.877+03:002011-01-20T03:31:22.877+03:00Но таки один камень в сторону ведущего играющего з...Но таки один камень в сторону ведущего играющего за "нападающего": java это не самый хороший противовес С++ в данном споре был. Единственный плюс жабы -- это GC и работа с памятью. Всё. (напомню в рамках этого спора-разговора).<br /><br />Всё же остальное, все называемые недостатки С++ в яве стократ виднее.<br />Это:<br />1) Огромадные иерархии классов. Та самая древовидная структуру с корнем. Это самое ООП которое неоднократно клеймилось в ходе разговора.<br /><br />2) Метапрограммирование. Уж чего-чего а этого в яве ОЧЕНЬ много. Особенно в j2ee. И я согласен с ведущими -- за это нужно расстреливать. К сожалению в яве средства метапрограммирования слишком легкодоступны.<br /><br />Откровенно говоря, я всё ждал когда упомянут например Haskell или тот же CL с его иной парадигмой ООП (для не любителей скобочек есть Dylan -- тот же Common Lisp практически, но с алголоподобным синтаксисом, т.е. никаких скобочек). Мне, кстати, очень понравилось тамошнее ООП. Потратил вечер на чтение доки и проникся.valexeyhttps://www.blogger.com/profile/02594309440030597264noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-44014525368840457502011-01-20T03:24:37.084+03:002011-01-20T03:24:37.084+03:00Ага. Нашел. Это таки ByteBuffer
http://download.o...Ага. Нашел. Это таки ByteBuffer<br /><br />http://download.oracle.com/javase/1.4.2/docs/api/java/nio/ByteBuffer.html<br /><br />Но я не нашел как же туда засунуть не какой-то примитивный тип, а структуру-объект. Т.е. видимо надо будет делать фасад для таких объектов который будет непосредственно иметь ссылку на этот ByteBuffer и куда-то там что-то писать/читать.<br /><br />Единственное что -- человеческих ссылок на другие объекты такие объекты живущие в буфере иметь не будут. По кр. мере с ходу я не вижу как такой объект сможет ссылаться на объект живущий в общем хипе. Может как-то через слабые ссылки и отображать одно на другое.. Хез.<br /><br />В общем пожалуй посложнее чем в плюсах просто аллокатор памяти поменять.<br /><br />Но в общем да. Подкаст полезный. Ещё один довод в спорах с шарпщиками :-)valexeyhttps://www.blogger.com/profile/02594309440030597264noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-61070580522164773962011-01-20T03:11:26.929+03:002011-01-20T03:11:26.929+03:00Замечательный подкаст. Тонкий троллинг ведущих. В ...Замечательный подкаст. Тонкий троллинг ведущих. В т.ч. и друг друга. :-)<br /><br />Разговор не интересен и вообще не состоится если все со всеми согласны. В разговоре должны быть разные точки зрения, должен быть конфликт какой-то, или видимость его. Так что всё нормально.<br /><br />Правда я не понял пассажа про ручное управление памятью в яве (в своих пулах памяти). Что-то было про ByteArray. Если там есть механизм размещения объектов в моём запасённом ByteArray'e, то это замечательно. Но ничего нагуглить на эту тему не смог. Быть может кто подскажет что это?valexeyhttps://www.blogger.com/profile/02594309440030597264noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-66475354888214311372011-01-19T20:03:43.080+03:002011-01-19T20:03:43.080+03:00Вы молодец!!!, хотя если судить по подкасту Java к...Вы молодец!!!, хотя если судить по подкасту Java какой-то совсем уж крутой получился. ИМХО программист должен знать как минимум 2-3 языка(асм само-собой), например связка -императифный-функциональный или компилируемыq-интерпритируемый (пример в игроделе С++ + lua) и т.д. В принципе только один язык круче С++ это pure Cnastvoodhttps://www.blogger.com/profile/14963651691577139565noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-86451526958387310272011-01-19T12:40:49.121+03:002011-01-19T12:40:49.121+03:00@Alex Ott:
>вот небольшое исследование на тему...@Alex Ott:<br /><br /><i>>вот небольшое исследование на тему умные указатели С++ vs. GC в части производительности.</i><br /><br />Точнее говоря не "умные указатели вообще", а boost::shared_ptr. AFAIK, boost-овский shared_ptr не интрузивный, т.е. у него счетчик ссылок лежит отдельно, что приводит к дополнительным new/delete для создания/удаления данного счетчика. В случае же интрузивных умных указателей (как Poco::AutoPtr) этих накладных расходов не будет.<br /><br />Ну и, кроме того, подобные benchmark-и хороши на задачах, где сначала много памяти навыделяли, а потом всю ее освободили. <a href="http://www-cs.canisius.edu/~hertzm/gcmalloc-oopsla-2005.pdf" rel="nofollow">Более серьезные исследования показывают</a>, что GC имеет сравнимую с ручным управлением памятью скорость только при наличии в 5 раз большего ее объема, чем это нужно.eao197https://www.blogger.com/profile/17283739752119445290noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-83871180000646681372011-01-19T10:17:52.366+03:002011-01-19T10:17:52.366+03:00Burjui
вам, Елена, спасибо - было очень интересно...<b>Burjui</b><br /><i> вам, Елена, спасибо - было очень интересно послушать ваше мнение о С++,</i><br />пожалуйста!<br /><br /><i>Полагаю, вам приходилось выступать перед публикой? Очень уж свободно вы говорите для первого подкаста (:</i><br /><br />Приходилось, ага.<br /><br /><b>Marat</b><br /><i>Алёна, не хотите написать статью про «умные указатели» в C++ и их разумное применение?</i><br /><br />Хочу. Но я много чего хочу, не факт что соберусь.Alenahttps://www.blogger.com/profile/09389124127364799922noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-75940225684640161032011-01-19T00:09:45.186+03:002011-01-19T00:09:45.186+03:00Технологии меняются, меняются требования к програм...Технологии меняются, меняются требования к программированию.<br />Но С++ словноватый видимо для лентяев. Отсюда и возникают такие вопросы.Дизельhttps://www.blogger.com/profile/05658861328860148594noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-68696444936067805542011-01-18T21:45:48.346+03:002011-01-18T21:45:48.346+03:00Алена, спасибо вам, вы прекрасная гостья подкаста!...Алена, спасибо вам, вы прекрасная гостья подкаста!<br />Приходите почаще, будет очень приятно вас слышать!СергАлnoreply@blogger.comtag:blogger.com,1999:blog-10303035.post-14432813203695468492011-01-18T13:22:35.609+03:002011-01-18T13:22:35.609+03:00Забавно очередной говносрач на тему C++ не читать ...Забавно очередной говносрач на тему C++ не читать на LOR-е, а слушать. Впрочем, уровень наездов на C++ на LOR-е зачастую повыше будет.eao197https://www.blogger.com/profile/17283739752119445290noreply@blogger.comtag:blogger.com,1999:blog-10303035.post-84143839900286556212011-01-18T10:43:26.703+03:002011-01-18T10:43:26.703+03:00с умными указателями тоже хватает проблем, и с точ...с умными указателями тоже хватает проблем, и с точки зрения использования (поскольку методика подсчета ссылок - глубоко порочна), и с точки зрения производительности.<br /><a href="http://flyingfrogblog.blogspot.com/2011/01/boosts-sharedptr-up-to-10-slower-than.html" rel="nofollow">вот</a> небольшое исследование на тему умные указатели С++ vs. GC в части производительности.<br />Да и Лев Валкин (lionet) писал, что на большом объеме выделения мелких объектов, OCaml GC, например, обгоняет стандартный mallocAlex Otthttps://www.blogger.com/profile/13001951608173211050noreply@blogger.com