С чего начинать С или С++? Подходы в Украине и на Западе.

С чего начинать С или С++? Подходы в Украине и на Западе.

 

Довольно часто слышу вопрос - стоит ли при выборе линейки С/С++ учить С или лучше сразу начинать с С++?

Благодаря возможности проводить занятия по скайпу у меня ученики из разных городов и стран. И часто темы занятий следуют за программой какого-то ВУЗа в котором в данный момент учится ученик (простите за тавтологию) или вообще строятся на разборе непосредственно заданий этих самых ВУЗов.

И вот какие особенности в программах и подходах бросились в глаза:

Все без исключения попадавшиеся программы западных ВУЗов (Канада, Великобритания, Чехия, Польша, Словакия) по специальностям, связанным с упомянутым направлением, начинаются с изучения чистого Си. То есть они начинают строить с фундамента и после уже на последующих курсах с легкостью его наращивают объектно-ориентированным подходом и другими языками, часто уже зависящими от выбранного студентом направления. На мой взгляд, это вполне логично, ведь странно же начинать строить дом с террасы или крыши, не построив фундамент со стенами?

В украинские ВУЗах, этого подхода придерживаются (из попадавшихся) лишь в столичных «топовых». По Харькову к сожалению, нет информации, не попадались студенты пока, но вроде как Харьковские технические довольно сильны. Во всех же других попадавшихся украинских учебных учреждениях, начинают программу сразу с С++.

Конечно, можно получить результаты и при таком подходе, но исходя из опыта, так получается сложнее и менее эффективно, ведь студенту приходится сразу сталкиваться с подходами следующего этапа развития языка (часто вообще без объяснения некоторых моментов и лишь с фразой, вы пока запомните просто как писать и пишите, а поймете позже) не освоив базового уровня.

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

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

Но конечно же решать, с чего начать строить «здание» ваших знаний, все же вам.

Автор: Олексій М.

Редакція не несе відповідальності за наповнення блогів, вони є персональною думкою автора