История изменений
Исправление liksys, (текущая версия) :
Поэтому, я за Паскаль только по причине того, что студенту надо рассказать про типы и про передачу параметров по значению и по указателю. Сразу С с его арифметикой указателя — это выстрел в голову.
Господи, опять эти сказки про сложные указатели. Концепция указателей и их арифметики объясняется за десять минут на примере тетради в клеточку, и можно объяснить это далеко не на первом занятии.
Ну не питону же сразу учить с его неявной системой типов.
Почему бы и нет. В MIT вон курс есть соответствующий. Если цель - обучить алгоритмостроению и структурам данных, то питон отлично подходит.
Я уже раньше писал, как должен быть устроен правильный, всесторонний и не оторванный от реальности курс по обучению программированию на айтишных специальностях:
-
Сначала питон, алгоритмы и структуры, базовые понятия о том, как писать код, декомпозировать задачи и прочее.
-
Потом си для осознания того, как высокоуровневые типы работают внизу и чего на самом деле стоит обращение с ними, чтобы у людей появилось осознание сложности, оптимизации и прочего.
-
На последнем этапе надо дать задачу написать на питоне какой-то производительный код со сложной логикой, который бы вынудил особо узкие места писать именно на сях. По итогу студент будет знать два актуальных языка, научится в какое-никакое проектирование и осознает, что в реальном мире на одном-единственном языке проекты не пишутся, а языки всегда выбираются под задачу.
Имея этот базис, дальше можно изучать ассемблер, сети/протоколы, теорию компиляторов и прочие замечательные вещи.
Исправление liksys, :
Поэтому, я за Паскаль только по причине того, что студенту надо рассказать про типы и про передачу параметров по значению и по указателю. Сразу С с его арифметикой указателя — это выстрел в голову.
Господи, опять эти сказки про сложные указатели. Концепция указателей и их арифметики объясняется за десять минут на примере тетради в клеточку, и можно объяснить это далеко не на первом занятии.
Ну не питону же сразу учить с его неявной системой типов.
Почему бы и нет. В MIT вон курс есть соответствующий. Если цель - обучить алгоритмостроению и структурам данных, то питон отлично подходит.
Я уже раньше писал, как должен быть устроен правильный, всесторонний и не оторванный от реальности курс по обучению программированию на айтишных специальностях:
-
Сначала питон, алгоритмы и структуры, базовые понятия о том, как писать код, декомпозировать задачи и прочее.
-
Потом си для осознания того, как высокоуровневые типы работают внизу и чего на самом деле стоит обращение с ними, чтобы у людей появилось осознание сложности, оптимизации и прочего.
-
На последнем этапе надо дать задачу написать на питоне какой-то производительный код со сложной логикой, который бы вынудил особо узкие места писать именно на сях. По итогу студент будет знать два актуальных языка, научится в какое-никакое проектирование и осознает, что в реальном мире на одном-единственном языке проекты не пишутся, а языки всегда выбираются под задачу.
Исходная версия liksys, :
Поэтому, я за Паскаль только по причине того, что студенту надо рассказать про типы и про передачу параметров по значению и по указателю. Сразу С с его арифметикой указателя — это выстрел в голову.
Господи, опять эти сказки про сложные указатели. Концепция указателей и их арифметики объясняется за десять минут на примере тетради в клеточку, и можно объяснить это далеко не на первом занятии.
Ну не питону же сразу учить с его неявной системой типов.
Почему бы и нет. В MIT вон курс есть соответствующий. Если цель - обучить алгоритмостроению и структурам данных, то питон отлично подходит.
Я уже раньше писал, как должен быть устроен правильный курс по обучению программированию на айтишных специальностях.
-
Сначала питон, алгоритмы и структуры, базовые понятия о том, как писать код, декомпозировать задачи и прочее.
-
Потом си для осознания того, как высокоуровневые типы работают внизу и чего на самом деле стоит обращение с ними, чтобы у людей появилось осознание сложности, оптимизации и прочего.
-
На последнем этапе надо дать задачу написать на питоне какой-то производительный код со сложной логикой, который бы вынудил особо узкие места писать именно на сях. По итогу студент будет знать два актуальных языка, научится в какое-никакое проектирование и осознает, что в реальном мире на одном-единственном языке проекты не пишутся, а языки всегда выбираются под задачу.