LINUX.ORG.RU
ФорумTalks

Подход к обучении программирования. Почему начинают с низу вверх?


0

0

начала мучать документацию Apple. Введение в core data. То есть самое начала.

Рассказывают об абстрактной программе для контроля работников. И сразу в чистом ООП. Говоря о сохранении в фаил сразу говорят об автоматической сериализации дерева и тд.

Возникла мысль: почему все курсы программирования, что я видел, начинают изучение снизу (для примера: как писать в фаил по байтам), а не с верху (ООП в чистом виде). По моему разумнее было бы начинать учить человека в более привычной ему среде: среде объектов, а не байтов.

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

★★★★

>>начала

В комнату вошел мальчик, похожий на девочку, похожую на мальчика.

gkrellm
()

> начинать учить человека в более привычной ему среде

Ты берешься судить обо всех человеках разом, кому что привычнее?

Terrens
()
Ответ на: комментарий от wfrr

Многим людям знание программирования не помешало бы для самообразования, а не для работы. ну и для мелких задач

серъезная работы нужно конечно понимаю всего

Да, и еще как-то преподаватель мне говорил (да и я сам ощутил это, помогая учить другим С++) что после модульного ООП учится сложнее, чем наоборот

namezys ★★★★
() автор топика
Ответ на: комментарий от Terrens

Объект это первичная единица информации создания. Точнее образ, а не объект. И еще связи между образами

namezys ★★★★
() автор топика
Ответ на: комментарий от namezys

>Многим людям знание программирования не помешало бы для самообразования, а не для работы. ну и для мелких задач

зачем?

>серъезная работы нужно конечно понимаю всего

это на тебя так документация эппла подействовала?

RedPossum ★★★★★
()
Ответ на: комментарий от namezys

Всегда можно столкнуть ученика с задачей, когда он сам придет к ООП.

madcore ★★★★★
()
Ответ на: комментарий от RedPossum

> зачем?

а зачем программисту учить историю?

ЗЫ: хотя бы макросы писать

> это на тебя так документация эппла подействовала?

нет. это мой бзик :)

namezys ★★★★
() автор топика
Ответ на: комментарий от Terrens

Нет. Обычно я беседую когда трезвый :)

namezys ★★★★
() автор топика
Ответ на: комментарий от namezys

Многим людям знание программирования не помешало бы для самообразования, а не для работы. ну и для мелких задач

Достаточно заний логики, и все.

wfrr ★★☆
()
Ответ на: комментарий от namezys

>а зачем программисту учить историю?

холиварить же.

на всяких информатиках у экономистов/бурильщиков/ слесарей-сантехников/etc есть программирование в делфях или vb и там им показывают как писать макросы.

RedPossum ★★★★★
()
Ответ на: комментарий от namezys

>а зачем программисту учить историю?

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

Deleted
()
Ответ на: комментарий от wfrr

отстранился, посмотрел на себя со стороны сторонника ФП: ну почему эти люди не могут понять элементарные математические правила

namezys ★★★★
() автор топика
Ответ на: комментарий от RedPossum

Не. Не это...

Общаясь с ГСМ, я заметил, что многим было бы интересно понять, что там и как там в противоположном лагере. Чтоб могли бы хотя бы понять идеи

namezys ★★★★
() автор топика
Ответ на: комментарий от Deleted

А не задача ли это тех писателя и коректора?

namezys ★★★★
() автор топика
Ответ на: комментарий от Deleted

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

Гон, думаю. От посольства какой страны? Майкрософт, простите, большинство посольств купит вместе с их странами.

А "писать неприятное письмо" из-за ошибки в какой-то приблуде могут додуматься только какие-нибудь шизо-нацмены, типа корейцев или прибалтов.

gods-little-toy ★★★
()
Ответ на: комментарий от namezys

Писать макросы можно и без знания ООП. Насколько помню там он как раз и не используется.
А вообще не все задачи красиво "ложатся" на теорию ООП. Намного проще многие из них описат с помощью функционального подхода.

trex6 ★★★★★
()
Ответ на: комментарий от namezys

вот уж раз на раз не приходится. у меня нет знакомых ГСМ'щиц, которым не пофиг.

RedPossum ★★★★★
()

Ruby? У Руби очень низкий "порог вхождения". Уже через пару часов инструктажа люди могут писать разные программки.

Насчет обучения с низов. Ну потому, наверное, что когда тебя учат делать что-то комплексное, объясняют принципы и детали, из которых оно состоит.

smh ★★★
()
Ответ на: комментарий от gods-little-toy

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

сходи по ссылке, я выше указал.. там приличный резонанс полулился из-за тайваня.

Deleted
()

Разные книги учат по-разному.

Sphinx ★★☆☆
()
Ответ на: комментарий от namezys

> Объект это первичная единица информации создания. Точнее образ, а не объект. И еще связи между образами

Скорее, ассоциации - первичная единица, а не объекты.

mv ★★★★★
()
Ответ на: комментарий от Deleted

К сожалению, это не только в Microsoft. В Pidgin команда /buzz пишет "сплетничает о вас", а не "привлекает внимание". Куда там баг отправлять?

Xenius ★★★★★
()

Учить ООП.

Во-первых, ruby; а во-вторых, процедурный подход дают первым только от закостенелости мышления. В современном мире начинать надо с ООП.

Camel ★★★★★
()

Как по мне - так вообще, прикладникам сразу высокоуровненвые языки программирования. И формоклепалки к ним интуитивные, что бы быдлокодили, да примитивно автоматизировали все для себя.

А вот программистам - надо все с самого начала, на то они и программисты, что в этой области должны знать все.

Siado ★★★★★
()
Ответ на: комментарий от Deleted

хехе от рубина до алкоголика одна буква 8)

wfrr ★★☆
()

> Возникла мысль: почему все курсы программирования, что я видел, начинают изучение снизу (для примера: как писать в фаил по байтам), а не с верху (ООП в чистом виде).

Нет понятия "сверху" и "снизу", потому что это не вертикаль. Есть различные парадигмы: процедурная, объектно-ориентированная, функциональная и т. д. Каждая из них имеет своё применение.

> По моему разумнее было бы начинать учить человека в более привычной ему среде: среде объектов, а не байтов.

По-моему начинать надо с ФП. На очень многие вещи открываются глаза.

Relan ★★★★★
()

Потому что университеты должны выпускать первоклассных учёных, а не третьесортных программистов (с) Дейкстра

Yoda_The_Master
()
Ответ на: комментарий от Relan

>Нет понятия "сверху" и "снизу", потому что это не вертикаль.

Все верно. Здесь понятие "Вдоль".

Siado ★★★★★
()

>Возникла мысль: почему все курсы программирования, что я видел, начинают изучение снизу (для примера: как писать в фаил по байтам), а не с верху (ООП в чистом виде). По моему разумнее было бы начинать учить человека в более привычной ему среде: среде объектов, а не байтов.

Снизу - это хотя бы с перфокарт.

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

И начинают с байтов и битов, потому что компьютер работает именно с ними, а не с "объектами".

>ЗЫ: Одному психологу


Психологи не нужны.

Alex_A_V ★★
()
Ответ на: комментарий от Alex_A_V

Психологи не нужны.

нужны психиатры

Снизу - это хотя бы с перфокарт.

ненене.. перфокарты - это всего-лишь способ ввода информации.

drull ★☆☆☆
()
Ответ на: комментарий от madcore

С какого!

>>В современном мире начинать надо с ООП.

>И на основе какого языка?


Пожалуй Ruby, 100% объектно-ориентированный в терминах Smalltalk, без наследия процедурных атавизмов (как Python), с большим количеством синтаксического сахара. Это не значит, что на Ruby нужно остановиться, или первым делом изучить его в мельчайших подробностях, а потом идти дальше, но начать именно с него.

Camel ★★★★★
()
Ответ на: С какого! от Camel

> 100% объектно-ориентированный в терминах Smalltalk, без наследия процедурных атавизмов (как Python), с большим количеством синтаксического сахара.

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

Hjorn
()
Ответ на: комментарий от Hjorn

> Ну научат его руби, а суровая реальность столкнет с С++.

Какая потеря!.. Раньше даже специально на программистов не учили, и ничё, отрасль жила и бурно развивалась.

mv ★★★★★
()

>По моему разумнее было бы начинать учить человека в более привычной ему среде: среде объектов, а не байтов.

Потому что блаблабла не усваивается. Я мульоны книг прочитал, а ничего из них не помню. Усваивать материал можно от простых вещей, попробовав их "на пальцах", переходить к сложным и абстрактным

Karapuz ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.