КИТА unofficial
Ноябрь 22, 2024, 10:10:51 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.

Войти
Новости:
 
   Начало   ПРАВИЛА Помощь WIKI PDA Войти Регистрация  


Страниц: [1] 2  Все   Вниз
  Печать  
Автор Тема: Обучение программированию с нуля  (Прочитано 39477 раз)
0 Пользователей и 2 Гостей смотрят эту тему.
LazarusLong
Ирландский доброволец
Проректор
*****

Карма: +181/-7
Offline Offline

Пол: Мужской
Награды:
А может я тоже хочу себе награду?
Сообщений: 6134


Ukrainian by birth, Irish by the grace of God


WWW
« : Январь 28, 2008, 11:15:00 »

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

На самом деле большого труда не составит тупо взять какую-нибудь книжку и прогонять ребенка по учебнику, но хотелось бы действительно научить и привить интерес к программированию )
Записан

Когда ему нужно - он русский, когда нужно - украинец, а когда ему ни хрена не нужно - он ирландец.

"...Он любил говорить факин щит
Когда что-то не так ему
Принимал он свой самый ирландский вид
И кидался трубкой в жену..."
Alder
Администратор
Проректор
*****

Карма: +331/-16
Offline Offline

Пол: Мужской
Награды:
За II место в конкурсе поэзии (весна-2007)2 место в фотоконкурсе \За II место в фотоконкурсе \3 место в фотоконкурсе \2 место в фотоконкурсе \Лучший знаток музыки 2009Лучший знаток музыки 2010
Сообщений: 11224


just for fun


WWW
« Ответ #1 : Январь 28, 2008, 11:19:26 »

LazarusLong, а ты как будешь - сразу учить какому-то алгоритмическому языку или с самого начала - биты, байты и т.п.?
Записан

"There are things known and there are things unknown, and in between are the doors..." (Jim Morrison)
Kenny
^___^
Проректор
*****

Карма: +69/-11
Offline Offline

Пол: Мужской
Награды:
3 место в фотоконкурсе \За II, III места в фотоконкурсе Вид из окна
Сообщений: 2352



WWW
« Ответ #2 : Январь 28, 2008, 11:22:33 »

Как по мне, блок схема проще словесного описания. Начинать думаю лучше в паскале, www.pascaler.ru вам в помощь:)
PS можно научить переводить в системы исчисления.
Записан
Alder
Администратор
Проректор
*****

Карма: +331/-16
Offline Offline

Пол: Мужской
Награды:
За II место в конкурсе поэзии (весна-2007)2 место в фотоконкурсе \За II место в фотоконкурсе \3 место в фотоконкурсе \2 место в фотоконкурсе \Лучший знаток музыки 2009Лучший знаток музыки 2010
Сообщений: 11224


just for fun


WWW
« Ответ #3 : Январь 28, 2008, 11:31:12 »

Начинать думаю лучше в паскале, www.pascaler.ru вам в помощь:)
Начинать учить азы алгоритмики можно и на обычном АлгЯзе - языке словесных конструкций вида "нач","если" и т.п. А потом перевести на С. От Pascal я бы рекомендовал уходить.
Записан

"There are things known and there are things unknown, and in between are the doors..." (Jim Morrison)
Polyakov
Специалист
***

Карма: +12/-7
Offline Offline

Сообщений: 164


« Ответ #4 : Январь 29, 2008, 12:05:11 »


Начинать учить азы алгоритмики можно и на обычном АлгЯзе - языке словесных конструкций вида "нач","если" и т.п. А потом перевести на С. От Pascal я бы рекомендовал уходить.

Для того чтобы рекомендовать что-то нужно хотя бы самому знать и уметь.

К Вашему сведению Pascal - изначально был разработан как язык академического программирования, с помощью которого наиболее легко начать осваивать программирование, не отбивая у учащихся охоту к дальнейшему изучению данной предметной области.
Записан
LazarusLong
Ирландский доброволец
Проректор
*****

Карма: +181/-7
Offline Offline

Пол: Мужской
Награды:
А может я тоже хочу себе награду?
Сообщений: 6134


Ukrainian by birth, Irish by the grace of God


WWW
« Ответ #5 : Январь 29, 2008, 12:13:52 »

На первых порах мне хочется вообще абстрагироваться от конкретного языка и научить человека мыслить самостоятельно и находить решения хотя бы простейших задач в общем виде. Я просто помню, когда преподавал на курсах: потратил час на то, что бы объяснить на пальцах нахождение большего из трёх чисел. Предложил задачку: найти большее из четырёх. Результат - полный ступор. Меня интересует как преодолеть вот это? Как научить человека понимать, привить некоторую способность к обобщениям, что ли? Я бы мог подумать, что это я дурак и не в состоянии объяснить, но ведь среди тех, кого я учил(два года преподавания на курсах + еще два года репетиторства) были и такие, кого, я таки чему-то таки научил.
Записан

Когда ему нужно - он русский, когда нужно - украинец, а когда ему ни хрена не нужно - он ирландец.

"...Он любил говорить факин щит
Когда что-то не так ему
Принимал он свой самый ирландский вид
И кидался трубкой в жену..."
Zimburella
Солнечная
Проректор
*****

Карма: +156/-9
Offline Offline

Пол: Женский
Награды:
2 место в фотоконкурсе \А чем я хуже тафта??
Сообщений: 4152



« Ответ #6 : Январь 29, 2008, 12:15:34 »

LazarusLong, меня в свое время тоже знакомый учил програмить на Паскале. В школе очень слабо давали и надо было очень быстро выучить. Но это долго объяснять зачем.
Поэтому подойду скорей с позиции того, как мне было проще воспринять как усенику.
В общем, сперва меня научили таки алгоритмизации. В виде блок-схем, словесное описание - это все же слишком. ИМХО, язык словесных конструкций излишен.. Хотя зависит от ученика, наверное. Если уж совсем всё плохо - то может и стоит.
Главное, давай ему побольше программ писать. Маленьких, нетрудных, но побольше. И домой, чтобы сам делал, без тебя. Тогда будет эффект.
А как язык Паскаль.. Не знаю, мне он нравился. Я думаю, его понять будет легче. К тому же почему уходить от него? Потом вполне можно научить мальчика Делфи. Мне очень нравилось программировать в школе. Графика особенно увлекла сильно. Кстати, при изучении Си почему-то интерес к программированию пропал напрочь. Не знаю, может, виной то, что так я в нем и не разобралась.. Но просто перестало быть интересно.
Записан

Весь фокус в том, что черное - это белое, закосившее под зеленое
KyDECHuK
Декан
*****

Карма: +43/-4
Offline Offline

Пол: Мужской
Сообщений: 1711


... вот что бывает, когда башню срывает ...


WWW
« Ответ #7 : Январь 29, 2008, 12:24:20 »

 offtopic Ненавижу блок-схемы! Смеющийся Именно чертить их не люблю, нуднее занятия не придумаешь.

На первых порах мне хочется вообще абстрагироваться от конкретного языка и научить человека мыслить самостоятельно и находить решения хотя бы простейших задач в общем виде.
Именно с этого и надо начинать, и никак иначе. Нас в школе учили сначала решать задачу, а уже потом код писать для решения оной.


Polyakov - С\С++ не так сложен, как это может показаться на первый взгляд. Вообще в мире очень много сложных вещей, но Си точно не из них.

не отбивая у учащихся охоту к дальнейшему изучению данной предметной области.
Люди, у которых пропадает охота программировать на первом же занятии не будут в дальнейшем этого делать каким бы pascal'ем их не заманивали.
Да, есть некоторый процент людей которым удобнее писать именно на паскале или именно на Си или на чем-то еще. Но думаю знания Си принесут больше пользы. А хорошее знание Си - еще больше пользы.
Записан

Alder
Администратор
Проректор
*****

Карма: +331/-16
Offline Offline

Пол: Мужской
Награды:
За II место в конкурсе поэзии (весна-2007)2 место в фотоконкурсе \За II место в фотоконкурсе \3 место в фотоконкурсе \2 место в фотоконкурсе \Лучший знаток музыки 2009Лучший знаток музыки 2010
Сообщений: 11224


just for fun


WWW
« Ответ #8 : Январь 29, 2008, 12:27:27 »

Off-Topic - помечено автором как "не соответствует обсуждаемой теме"
Для того чтобы рекомендовать что-то нужно хотя бы самому знать и уметь.
Абсолютно и полностью с вами согласен. Именно потому и рекомендую Улыбка
Записан

"There are things known and there are things unknown, and in between are the doors..." (Jim Morrison)
Polyakov
Специалист
***

Карма: +12/-7
Offline Offline

Сообщений: 164


« Ответ #9 : Январь 29, 2008, 12:32:45 »

Polyakov - С\С++ не так сложен, как это может показаться на первый взгляд. Вообще в мире очень много сложных вещей, но Си точно не из них.

Смею Вас заверить я знаю С лучше чем Вы. (первый взгляд я на него кинул лет этак 18 назад)
Но в отличии от Вас я понимаю насколько этот язык по-настоящему труден и трудоемок.
Может через десяток лет и Вы это поймете, если будете на нем работать.

(Отправлено в: 28 Января 2008, 23:30:44)

Абсолютно и полностью с вами согласен. Именно потому и рекомендую

Может Вы просвятите меня когда же это Вы его изучили да еще в такой степени, чтобы рекомендовать?
Записан
LazarusLong
Ирландский доброволец
Проректор
*****

Карма: +181/-7
Offline Offline

Пол: Мужской
Награды:
А может я тоже хочу себе награду?
Сообщений: 6134


Ukrainian by birth, Irish by the grace of God


WWW
« Ответ #10 : Январь 29, 2008, 12:38:31 »

Я просто понимаю, что будет туго, раз он за 10 и половину 11-го класса из школьного курса информатики мало чему научился. Это свидетельствует как минимум о том, что нет интереса. А может быть нет и способностей вообще. Хотя хорошие его результаты по математике и физики обнадёживают. Насчет паскаля - таки да. Я в принципе согласен с тем, что практической полезности для современного программиста он не представляет, но всё же и разделяю мнение, что паскаль весьма хорош для первичного обучения программированию. Но к паскалю, да и вообще к любому языку программирования, как мне кажется, стоит подходить после усвоения основ алгоритмизации.

Цитировать
Ненавижу блок-схемы! Именно чертить их не люблю, нуднее занятия не придумаешь.
А я как раз считаю это занятие весьма полезным. Может быть не столько даже в практическом плане, сколько в методическом. Помню на втором курсе делал курсач по теории вероятностей. Строил трёхмерную гистограмму. И так и эдак пытался - всё никак. Просидел дня три. Всё потому, что сразу набивал код в редакторе. А потом просто сел, поразмыслил над задачей, так сказать заново с чистого листа, нарисовал блок-схемку и запрограммировал минут за пятнадцать. Вот тогда я, считавший до этого блок-схемы глупой прихотью преподавателей, по настоящему проникся уважением к ним Улыбка

ЗЫ. Кстати знаю одного человека который использует при обучении в качестве первичного языка программирования - python. В чём-то я его понимаю. Хотя это и перегиб)
Записан

Когда ему нужно - он русский, когда нужно - украинец, а когда ему ни хрена не нужно - он ирландец.

"...Он любил говорить факин щит
Когда что-то не так ему
Принимал он свой самый ирландский вид
И кидался трубкой в жену..."
KyDECHuK
Декан
*****

Карма: +43/-4
Offline Offline

Пол: Мужской
Сообщений: 1711


... вот что бывает, когда башню срывает ...


WWW
« Ответ #11 : Январь 29, 2008, 01:15:22 »

Смею Вас заверить я знаю С лучше чем Вы. (первый взгляд я на него кинул лет этак 18 назад)
Не сомневаюсь. НО в чем собственно вопрос? Я где-то утверждал обратное про Вас ?  Нет, не утверждал? Так к чему это сказано?

Но в отличии от Вас я понимаю насколько этот язык по-настоящему труден и трудоемок.
Может через десяток лет и Вы это поймете, если будете на нем работать.
Сам язык, его синтаксис и правила трансляции кода? Ну может и сложны, но согласитесь есть задачи, которые решаются с помошью программ на С\С++, которые сложенее самого языка в десятки раз.
Якобы сложность языка это не повод отказаться его учить или не преподавать в университете. За многолетнюю практику программирования на С можно составить весьма не плохую базу знаний и "подводных камней", а кое-чем делится из этого со своими студентами. На то они и студенты, чтобы чему-то учиться у Вас Подмигивающий
Насчет сложности добавлю только одно: сложно разбираться с компилятором и массой дополнительных библиотек, когда в них попадаются ошибки (редко, но метко).

Polyakov - по теме что-то скажете? По вопросам автора темы поднятом в первом сообщении ?

Off-Topic - помечено автором как "не соответствует обсуждаемой теме"
А я как раз считаю это занятие весьма полезным. Может быть не столько даже в практическом плане, сколько в методическом.
Я два смайлика поставил не зря Подмигивающий Одно дело набросать БС от руки собственно для решения задачи, совсем другое - начертить для оформления лабы перед сдачей преподавателю (это почти всегда делалось на перерыве до пары) Улыбка

Я просто понимаю, что будет туго, раз он за 10 и половину 11-го класса из школьного курса информатики мало чему научился. Это свидетельствует как минимум о том, что нет интереса.
Мало-ли какой чепухе учили пацана в школе на информатике. На своем примере знаю, что школьному курсу по информатике очень далеко до совершенства.
Начни с основ алгоритмизации, а дальше видно будет есть\нет интерес.
Записан

LazarusLong
Ирландский доброволец
Проректор
*****

Карма: +181/-7
Offline Offline

Пол: Мужской
Награды:
А может я тоже хочу себе награду?
Сообщений: 6134


Ukrainian by birth, Irish by the grace of God


WWW
« Ответ #12 : Январь 29, 2008, 01:21:05 »

Мало-ли какой чепухе учили пацана в школе на информатике. На своем примере знаю, что школьному курсу по информатике очень далеко до совершенства.
Начни с основ алгоритмизации, а дальше видно будет есть\нет интереса.

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

Когда ему нужно - он русский, когда нужно - украинец, а когда ему ни хрена не нужно - он ирландец.

"...Он любил говорить факин щит
Когда что-то не так ему
Принимал он свой самый ирландский вид
И кидался трубкой в жену..."
Sochin
Злой модератор
Декан
*****

Карма: +108/-6
Offline Offline

Пол: Мужской
Сообщений: 1518



« Ответ #13 : Январь 29, 2008, 01:39:03 »

И таки соглашусь с Поляковым, действительно языки С/С++ это достаточно сложные язык, тем паче для первичного обучения. С сложен своей низкоуровневостью. С++ чрезмерно отягощен наследием С, с которым по стандарту доложен обеспечивать совместимость, при всем при том что вобрал в себя такие средства как поддержка ООП, обобщенного программирования. Вобщем, для первичного обучения языки С/С++далеко не самый лучший вариант.
Если идет речь о прикладном программировании, то сейчас я бы начинал обучение вообще с базовых понятий ООП без привязки к языкам. После чего переход к кодированию на  ОО-языках для написания управляемого кода - Java/С#. Т.е. минимум платформозависимых низкоуровневых нюансов, максимум алгоритмизации и ОО-парадигмы.
Записан

Говорят, когда компьютер сгорает, перед взором микропроцессора за долю секунды проносятся все операции, которые он когда-либо совершил...
壯鎭
Storm
Верховный
Администратор
Аспирант
*****

Карма: +29/-0
Offline Offline

Пол: Мужской
Сообщений: 484



« Ответ #14 : Январь 29, 2008, 08:44:05 »

В школьную программу, по которой учили меня, входили Лого, АлгЯз, Паскаль.

Лого это для самых мелких класс 7-8, но при этом позволяет творить весьма прикольные вещи.
АлгЯз (по нему есть классный учебник Савченко, в ДонИИИ выпустили, специально для школ с уклоном в информатику) позволяет сделать упор именно на алгоритмы. Именно на нем и научили программировать /me.

В Паскале, как ни крути, уже придется учитывать особенности архитектуры компьютеров и компилятора.

Язык С имеет слишком мало ограничений, чтоб на нем учили с нуля - это как прогулка по минному полю. Сапер пройдет целым и невредимым, а не сапер. ..... Очень многое остается на совести программиста. Для того кто знает и умеет это хорошо. Его приближенность к аппаратному уровню - он задумывался как замена ассемблеру. А в ассемблере своих ограничений нет - есть ограничения процессора и программиста Подмигивающий
Записан

Только две вещи бесконечны: вселенная и тупость, и я еще не уверен по поводу вселенной. (Альберт Эйнштейн)
----------------------------------------------------
"There are two major products that came out of Berkeley: LSD and UNIX. We don't believe this to be a coincidence." (с) Jeremy S. Anderson

Проходит ирландец мимо паба....
LazarusLong
Ирландский доброволец
Проректор
*****

Карма: +181/-7
Offline Offline

Пол: Мужской
Награды:
А может я тоже хочу себе награду?
Сообщений: 6134


Ukrainian by birth, Irish by the grace of God


WWW
« Ответ #15 : Январь 30, 2008, 07:47:34 »

Сегодня провел первое занятие. Похоже случай не безнадежный. Дальше будем смотреть )))
Записан

Когда ему нужно - он русский, когда нужно - украинец, а когда ему ни хрена не нужно - он ирландец.

"...Он любил говорить факин щит
Когда что-то не так ему
Принимал он свой самый ирландский вид
И кидался трубкой в жену..."
Alder
Администратор
Проректор
*****

Карма: +331/-16
Offline Offline

Пол: Мужской
Награды:
За II место в конкурсе поэзии (весна-2007)2 место в фотоконкурсе \За II место в фотоконкурсе \3 место в фотоконкурсе \2 место в фотоконкурсе \Лучший знаток музыки 2009Лучший знаток музыки 2010
Сообщений: 11224


just for fun


WWW
« Ответ #16 : Январь 30, 2008, 08:07:51 »

LazarusLong, расскажи с чего начал.
Записан

"There are things known and there are things unknown, and in between are the doors..." (Jim Morrison)
LazarusLong
Ирландский доброволец
Проректор
*****

Карма: +181/-7
Offline Offline

Пол: Мужской
Награды:
А может я тоже хочу себе награду?
Сообщений: 6134


Ukrainian by birth, Irish by the grace of God


WWW
« Ответ #17 : Январь 30, 2008, 08:43:31 »

Да начали с самых общих понятий: алгоритмы, последовательности команд и ветвление. Разобрали несколько простейших алгоритмов (нахождение большего из трех чисел, из четырех, решение квадратного уравнения, площадь треугольника и т.п.). Радует что все алгоритмы, кроме самого первого он написал сам. Пускай с небольшими подсказками, но в общем сам. А на информатике в школе их учат рисовать в Paintе.
Записан

Когда ему нужно - он русский, когда нужно - украинец, а когда ему ни хрена не нужно - он ирландец.

"...Он любил говорить факин щит
Когда что-то не так ему
Принимал он свой самый ирландский вид
И кидался трубкой в жену..."
Alder
Администратор
Проректор
*****

Карма: +331/-16
Offline Offline

Пол: Мужской
Награды:
За II место в конкурсе поэзии (весна-2007)2 место в фотоконкурсе \За II место в фотоконкурсе \3 место в фотоконкурсе \2 место в фотоконкурсе \Лучший знаток музыки 2009Лучший знаток музыки 2010
Сообщений: 11224


just for fun


WWW
« Ответ #18 : Январь 30, 2008, 08:52:07 »

Радует что все алгоритмы, кроме самого первого он написал сам. Пускай с небольшими подсказками, но в общем сам.
Это гут. Если у него есть интерес к этому, то обучение будет продуктивным. Алгоритмы он рисовал или писал на АлгЯзе?
Записан

"There are things known and there are things unknown, and in between are the doors..." (Jim Morrison)
LazarusLong
Ирландский доброволец
Проректор
*****

Карма: +181/-7
Offline Offline

Пол: Мужской
Награды:
А может я тоже хочу себе награду?
Сообщений: 6134


Ukrainian by birth, Irish by the grace of God


WWW
« Ответ #19 : Январь 30, 2008, 08:53:33 »


Алгоритмы он рисовал или писал на АлгЯзе?
Нет, мы блок схемы использовали.
Записан

Когда ему нужно - он русский, когда нужно - украинец, а когда ему ни хрена не нужно - он ирландец.

"...Он любил говорить факин щит
Когда что-то не так ему
Принимал он свой самый ирландский вид
И кидался трубкой в жену..."
Страниц: [1] 2  Все   Вверх
  Печать  
 
Перейти в:  

Penguins Counter Powered by MySQL Powered by PHP Powered by SMF 1.1.8 | SMF © 2006-2008, Simple Machines LLC Valid XHTML 1.0! Valid CSS! Internetmap
Страница сгенерирована за 0.207 секунд. Запросов: 34.