Здравствуйте, LaptevVV, Вы писали:
SaZ>>... SaZ>>2. Работа с чужим кодом. Я думаю многие видели джунов, которые не могут дорабатывать чей-то код (даже нормального качества) и хотят всё переписать с нуля. Как правило потому, что не могут разобраться. LVV>А вот это — да. LVV>Я пытался внедрить в курсе системное программирование. LVV>Пишем интерпретатор виртуальной машины — тестирование делает другой студент. LVV>Потом пишем ассемблер для виртуальной машины — опять же тестирование делает другой студент. LVV>Но не пошло — студенты же сразу друг с другом состыковались. LVV>Пока не придумал, как это осуществить в учебном процессе.
LVV>Это надо каждому дать индивидуальный чужой проект. И чтобы он его модифицировал в нужном направлении. LVV>Проекты не должны быть засвечены в учебном процессе ранее. LVV>Подумаю.
Спасибо за ответ. Я немного перефразирую: я пока не знаю как привить студентам навык чтения чужого кода. Мне в своё время этого очень не хватало. Впрочем, я не особо преподавал, вёл несколько месяцев факультатив по си, ещё будучи студентом. Потом несколько раз халтурил репетитором, но быстро надоело, потому что когнитивная нагрузка высокая, а выхлоп в долларо-часах на основной работе к тому моменту был уже заметно выше.
Переломный момент произошёл когда сабмитил какой-то мелкий фикс в Qt и меня тогда на ревью разнесли в пух и прах по всем фронтам. Тогда я начал читать чужой код и пытаться понять, почему написано именно так, чем хорош и плох кодстайл кутэ и т.п. В общем, это заметно добавило мне педантичности. А несколько самописных логгеров, которые я каждый раз пытался сделать лучше и лучше, но потом по факту осозновал что я сделал кривенький велосипед, собственно и подтолкнули к изучению чужих решений и способствовали тому, что я начал отличать плохой код от хорошего.