О бедном плюс-плюсе замолвите слово

Feb 13, 2016 04:47

Недавно посмотрел Stop Teaching C (типа, как правильно учить C++) и почитал Почему не лишено смысла писать код на C, а не на C++. Считаю, что сказанное мужиком в статье в большой степени лишает смысла сказанное тёткой в ролике. Невозможно отстраниться от уродств языка и ограничиться только простым, читаемым и стопроцентно верным. [Я недавно ( Read more... )

c++

Leave a comment

Comments 5

Ближе статья мужика, но тетка говорит не про то. zevaka_derevnia February 13 2016, 16:18:32 UTC
Но во-первых - спасибо за ссылки - интересно. Мне, однозначно, ближе позиция в статье, что и неудивительно - я и писал и пишу на С, а С++ знаю весьма поверхностно. Но, как мне показалось, тетка в лекции говорит не о том, как правильно использовать язык опытным программистам, а исключительно о том, как его преподавать не умеющим програмиировать вообще детям С++ так, чтобы им было прощще и удобнее начать программировать хоть как-то. Поскольку я был в позиции такого преподавателя, я ее в чем-то могу поддержать. По моему опыту - "внутренняя механика" языка - вещь, для меня самого являющаяся очень ценной и упрощающая понимание того "как это на самом деле работает", часто при попытке передать детям становится для них противоположностью - лишним обременением, сложняющим понимание.

Reply

Re: Ближе статья мужика, но тетка говорит не про то. archaicos February 13 2016, 21:28:30 UTC
Если речь о детях, то лучше им C++ не давать никакой, как мне кажется. Ибо если давать целиком, то это более чем перебор, а если давать избранными, немногочисленными и пережёванными кусочками, то:
1. Эти кусочки есть и в других, в целом более доступных изучению языках, т.е. в такой форме нет никакого преимущества у C++, кроме как в названии.
2. Полученные знания будут столь же далеки от реальной жизни, как и виртуозное владение фразой London is the capital of the Great Britain в любом контексте как результат просиживания сорокапяти минут на уроке пару раз в неделю в течение нескольких лет. Нельзя не говорить про UB и прочие B. А вылезти они могут даже при использовании отфильтрованного языка. Они в ДНК, они неизбежны.
3. Поверхностное знание чего-то многими неновичками что-то говорит и об этом чём-то. Как нам с вами освоить этот монструозный C++?

Reply


Лучше подбирать инструмент (язык в т.ч.) к задаче. fatoff February 13 2016, 17:04:42 UTC
Не смотрел, как любимый браузер написан? Это будет сизифиов труд на C писать. Ну, сложный язык. Когда Хром перепишут на "что получше", поверю что противоречия С++ пользы от него не стоят.

Reply

Re: Лучше подбирать инструмент (язык в т.ч.) к задаче. archaicos February 13 2016, 21:32:19 UTC
Я примерно представляю себе как он написан. На подмножестве языка, следуя гуиделинам. И с ##. :)

Reply

Re: Лучше подбирать инструмент (язык в т.ч.) к задаче. fatoff February 14 2016, 04:00:41 UTC
Там такой классический C++ 03, паттерны во весь рост. Task-based concurrency, для примера. Мы ре-имплементируем некоторые из тех tasks. Не гнушаются переходить на старый добрый C. Кругом свои умные указатели, и др. То есть, нет STL (в FireFox, как помню, есть).

Reply


Leave a comment

Up