Форум программистов, компьютерный форум, киберфорум
Обо всем!
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.67/15: Рейтинг темы: голосов - 15, средняя оценка - 4.67
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909

С++ для начинающих. Мысли вслух

04.01.2013, 14:11. Показов 3395. Ответов 40
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток.

В конце ноября регистрировался на форуме с простой целью: хотелось посмотреть какие вопросы и проблемы возникают у студентов при изучении языка С++. Не ради исследований, статистики и прочего. Просто хотелось оценить "на глаз" и, возможно, отметить для себя какие-то моменты, на которые следует обратить внимание, если самому придется работать со студентами. Форум известный, поток вопросов имеется. Предположил, что студенты ориентировочно первого курса в основном будут писать в разделе "С++ для начинающих", там и решил обосноваться. На данный момент я несколько разочарован и хочу поделиться своими мыслями и вопросами по поводу того, что бросается в глаза.

Дисклеймер
Пост вероятно получится относительно длинным, при этом в нем не будет ничего нового, только очевидные вещи, находящиеся на поверхности. Все высказывания субъективны. Ссылки с конкретными примерами не приводятся намеренно, чтобы не задеть чувства авторов. Орфография и пунктуация никогда не были моей сильной стороной.


Не страшно? Поехали!

Ctrl+C, Ctrl+V
Очень много тем с банально скопированым текстом задания. Пожалуй, по этому пункту сказать решительно нечего. Такие студенты всегда были и еще будут. И дипломы защищали на "отл" люди, не способные написать ни строчки кода. Иногда накатывает и хочется послать их подальше со специальности (о профессии пока и речи нет), но потом становится все равно - они сами решили потратить время обучения впустую.

cout, следовательно, C++
Часто приходится наблюдать откровенную кашу в голове студентов в виде неспособности отличить C от C++. Ребят, подскажите: почему так происходит и откуда у этой проблемы ноги растут? Не могу придумать на кого свалить, кроме как на преподавателей. Сам наблюдал, как в очень уважаемом ВУЗе нашего города студенты-математики писали в каком-то древнем билдере на языке Си, но при этом для вывода использовали cout, выделяли память для массивов с помощью new и очень удивлялись вызовам malloc.

Зачем сознательно создавать путаницу в головах студентов? Слишком страшен синтаксис, используемый в printf? Слишком сложно использовать malloc? Лично я не считаю это вескими причинами.

Вспоминая свой первый курс, у нас такой проблемы не было. Дали Linux, gcc. Что, какой g++? Забыли, пишем на Pure C. Да, проблемы были. Кто-то терялся в командной строке, кому-то было сложно поставить себе дистрибутив для работы, а когда программы стали состоять из нескольких файлов, пришлось еще учиться писать Makefile. Тем не менее, справились. Кто-то сам, кому-то помогли. Но работа в таком режиме помогла понять, что за IDE не стоит никакой магии.

У меня возникает вопрос. Может, я ошибаюсь, и в других учебных заведениях сразу говорят, что будем изучать С++, но начнем с его сишной части, не углубляясь пока в классы? Но для простоты пока будем использовать некоторые возможности С++. Если кто-нибудь в курсе, проясните, пожалуйста, этот момент.

Случается, что за помощью обращается человек с заданием явно академического плана, где стандартные вещи необходимо реализовать вручную. В итоге получает решение с использованием STL. Да, это лаконично и аккуратно. Да, я понимаю, что мы находимся в разделе С++ и хотим по максимуму использовать возможности языка и стандартной библиотеки для написания красивых решений. Но от нас ждали другого, и часто это можно понять по уровню сложности задания и формулировкам.

Вопрос: можно и нужно ли бороться с проблемой смешения двух языков студентами?

Горшочек, вари!
Еще раз о каше, дамы и господа. В этот раз - об оформлении исходого кода. Случалось видеть и полное отсутствие какого-либо форматирования, и просто бессистемное оформление кода. Есть примеры, в которых я прослеживаю логику оформления, но читать такой код не становится проще. Да, какое-то выравнивание есть. Но я не привык к такому его виду. И все вокруг меня не привыкли. Я сейчас не говорю о том, где расставлять фигурные скобки и сколько пробелов использовать для отступов. Но оформление элементарно должно быть. Отделить операторы пробелами, расположить по одной инструкции на строку, добавить пустые строки для разбиения кода на логические блоки - это все не так сложно, но сэкономит время-нервы и тем, кто желает помочь, и самому автору (хотя, наверное, сам он может этого и не осознавать).

Вопрос: как можно приучить к оформлению исходного кода?
Вспоминая практику своих преподавателей, код, в котором отсутствует форматирование не принимается. Без вопросов. В учебной практике можно продолжать придерживаться этого правила, в этом проблем не вижу. Можно ли что-нибудь поделать в рамках форума? Игнорировать темы, авторы которых не постарались придать коду аккуратный вид, наверное, не стоит. В конце концов, на форум обращаются с другими вопросами. Конечно, можно скопировать себе код, отформатировать одной из доступных утилит, но вы же понимаете, что лень. Иногда не приходится компилировать и запускать код, чтобы найти в нем ошибки. Можно прикрепить тему со списком соответствующих утилит. Но очень сомневаюсь, что кто-то будет заглядывать в нее.

Вместо заключения
Были и еще какие-то мысли о наболевшем, но они либо забылись, либо показались несущественными. Спасибо всем, кто дочитал.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.01.2013, 14:11
Ответы с готовыми решениями:

Мысли вслух
Почему собственно при оценке эффективности рекламы высчитывают именно отношение показов к кликам, а не посетителей к кликам. Второе, как...

мысли вслух
Люди, давайте немного задумаемся!

Аварийное питание (мысли вслух)
Бывают ситуации, когда при отключении сетевого напряжения, необходимо, что бы устройство продолжало работать. Будь то какой-нибудь сложный...

40
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
19.01.2014, 18:37
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от MrGluck Посмотреть сообщение
Вроде это собираются в ближайшее время пофиксить с введением метки "правильное решение".
Уже есть в технических разделах в виде «лучшие ответы». Правда, пока не понятно, как оно работает.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
19.01.2014, 18:37

Робот SWG - мысли вслух
Поломав около года голову над поворотной платформой своего робота (для краткости я также называю ее "Башней"), перебрав кучу...

Как правильно говорить вслух команды типа du -sh
du минус sh? du тире sh?

Букмарклет читалки вслух Google Translate. Кириллица неадекватна
В результате 15 минут моего неловкого ковыряния в двух букмарклетах получился этот. Он читает вголос выделенный на странице текст (если...

Мысли материальны?
Который раз убеждаюсь! Недавно вот подумал про одного тиммейта из школьной баскетбольной команды...Я просто привык быть лидером, а тут...

Мысли о установщике 10.8
Дорогие друзья, у меня недавно мак и не могу понять одной вещи: Скачал N-ую программу из интернета, в интернете написано что интерфейс...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
41
Ответ Создать тему
Новые блоги и статьи
Нейтральные знания ..., ... чистая наука. Пока что-то проходит модерацию на Хабре, стоит развить мысль ...
Hrethgir 20.07.2026
К таким радикальным взглядам я конечно в той публикации не приходил, но чтобы скоротать вечер, решил углубиться немного. 1. Почему показания термометра заряжены целью? Цель заложена в самом. . .
Установка нескольких штампов электронной подписи в строго определенных местах файла docx
ВладимирСамохин 19.07.2026
(В!) Работа с Электронной подписью - это неотъемлемая часть современного документооборота. Но что делать, если нужно поставить несколько штампов электронной подписи в строго определенных местах. . .
сукцессия 35. Научная статья о проделанной работе
anaschu 19.07.2026
Написал в формате латекс и пдф
Вангую, что это не пройдёт модерацию, и на неделе я запущу свой сервер.
Hrethgir 19.07.2026
Эта публикация сейчас в песочнице и ждёт приглашения. https:/ / habr. com/ ru/ sandbox/ 295048/ По ссылке 403. Не очень информативно такую ссылку постить. Запись от Usaga размещена Сегодня в 06:46 . . .
сукцессия 33. открытые вопросы от клауде
anaschu 19.07.2026
"Что накопилось за эту часть А — тринадцать правок, из которых шесть пришли из ваших вопросов и каждая оказалась реальной ошибкой, а не калибровкой: односторонний симбиоз, отсутствующий листопад,. . .
32 сукцессия
anaschu 19.07.2026
сукцессия 28‑мерное ядро стабилизировано Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не «подкручивает» сходимость —. . .
сукцессия 31: модель микоризы - это модель ещё нескольких явлений, социальных и экономических
anaschu 18.07.2026
Теория «Всего»: апдейт v1. 1. 2 — 28‑мерное ядро стабилизировано Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не. . .
сукцессия 30. Массив проверяющих друг друга моделей
anaschu 18.07.2026
Архитектура сети взаимопроверяющих моделей микоризной сукцессии (v2. 0) Развитие тензорного ОДУ-ядра и создание кросс-платформенного калибровочного полигона Уважаемые коллеги! В продолжение. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru