Здравствуйте, 0xDEADBEEF, Вы писали:
>>> Если же использовать C++-style строки, то придется обьяснить что такое обьекты и шаблоны ПК>>Это не совсем так. Новичку совершенно все равно, что запоминать: string или std::string.
DEA>...Если рассмотреть строчку "std::string s2 = 0.25;" Сразу возникнет вопрос "а почему это не сработало". DEA>Тут хошь не хошь, а придется обьяснять про обьекты и конструктора...
Э-э-э... если у Вас возникает — что тут еще можно сказать?
DEA>И на эти вопросы придется хоть как-то отвечать — т.к. ответ "тебе еще рано" обладает мерзкой тенденцией отвлекать от текущей задачи — то есть написания "кульного приложения".
Вот-вот: основная задача "дельфиста" — "написать кульное приложение"!
Здравствуйте, 0xDEADBEEF, Вы писали:
DEA>>>Так что, при всей моей любви к C/C++, и прохладном отношении к Паскалю, я бы выбрал DEA>>>Delphi/Kylix... Dog>>Странный вывод. При всём том, что вы тут написали, ему прямая дорога в C++. DEA>Это так кажется. DEA>А на самом деле все упирается в... строки (как ни странно). DEA>Для того чтобы использовать строки с C++, в случае C-style строк придется обьяснить что такое массивы. А это лучше обьяснять на немного других примерах. Если же использовать C++-style строки, то придется обьяснить что такое обьекты и шаблоны — хотя бы в общих чертах. А также, чем отличается хранения обьектов на стеке и на freestore. Это, опять-таки лучше обьяснять на других примерах.
Простите, зачем все это? У вас, простите, дельфистов, более и аргументов нет, кроме как "строки"? Этому аргументу уже сто лет в обед и он давно, как минимум, не актуален. Если уж очень хочется — милости просим использовать BSTR с сокрытием внутренней реализации — будет то же самое и вопросов никаких не возникнет.
В то же время тривиальная задачка "написать алгоритм разворота строки" при ее "лобовом" решении на том же Борланде (последних — о старых C++ исключительно положительное мнение) рождает из "непрограммиста" того самого "дельфиста", которого все так ругают...
DEA>И еще один аспект проблемы. Диагностики компилятора. Борландовский паскаль по умолчанию настраивается на выдачу только одной ошибки и стопорит компиляцию. Что для новичка есть несомненный плюс.
И в чем же тут "плюс"?
DEA>Сишные же компиляторы любят обругать настолько длинно и витиевато, что у новичка ум за разум зайдет.
Для этого всегда есть справочная система — у Борланда тоже свои заморочки есть аля class procedure(...); Хотя для начала лучше не вдаваться ни в ту, ни в другую, так как попутно придется учиться и пользоваться справочной системой — не думаю что с этого можно и стоит начинать...
DEA>Я уж не говорю про диагностику в случае какого-нибудь косяка в шаблонах... В оcобенности если использовать boost
А за шаблоны для начала и браться смысла нет — все же развитое абстрактное мышление тут очень не помешает...
Dog>>И не надо колечить ребёнка уродцами борланда, особенно вторым DEA>Вам хочется начать holy war? DEA>Если да, то вы выиграли — можете заказывать бюст на родине.
Здравствуйте, bestix, Вы писали:
B>Собственно сабж. Сам программист, вот думаю сына начать обучать. С какого языка посоветуете?
UNIX shell (может шутка, а может и нет) И вообще UNIX, со своей файловой системой и пайпами. UNIX был создан 35 лет назад, т.е. когда программирование было в глубоком детстве, и выжил до сих пор. Значит UNIX — это вещь по-детски естественная.
Если ребенок обладает пытливым умом, если он любопытен от природы, то грех не начать с самого начала, и сделать небольшой такой 2-х часовой экскурс в цифровую электронику.
1. Логические элементы AND, OR и NOT, а также триггеры как элементы памяти.
2. Накатать схему простого сумматора, скажем 4-х битного.
3. Часы и калькулятор, в общих чертах.
4. Подвести к идее программируемого калькулятора и тактов.
5. Вот теперь уже компьютер, в самых общих чертах: процессор, память, шина, итд.
6. Продемонстрировать пару инструкций на псевдо-ассемблере и показать как транслируются алгебраические выражения.
7. В заключении вы говорите ребенку: теперь можешь все это забыть. Берешь книгу по языку X, берешь среду программирования X, и вперед с песней.
Я своему часто задаю провокационные вопросы. Типа, смотрит веб-страничку, а я спрашиваю: знаешь как это сделано? И показываю HTML. Видит флешку, показываю флеш редактор, итд. В надежде на то, что сам клюнет на что-то конкретное.
Сложно, конечно. А меня самого никто ни на что не подталкивал. Все было как-то естественно: Ассемблер, Фортран, Паскаль, Си, и понесло...
Здравствуйте, bestix, Вы писали: B>Собственно сабж. Сам программист, вот думаю сына начать обучать. С какого языка посоветуете?
Ни в коем случае не с VB и прочих RADостей. Вся эта бодяга становится самоочевидной для человека, знакомого с тем, как это всё работает. Учить надо базовым вещам, на которых можно прочувствовать теорию программирования. На мой взгляд, это 2 направления: ASM -> C -> C++ чтобы понять как работает машина и LISP, Prolog, Haskell чтобы показать, что программирование может иметь под собой глубокую теорию. Это для взрослых дяденек, всю жизнь писавших на Си, кажется, что Пролог сложен, дети усваивают такие концепции с лёгкостью, потом поздно будет. Главное — никогда не заставлять сына, а заинтересовать его(легко сказать, но трудно сделать!). Дальше вам останется только отвечать на шквал его вопросов . Таким образом, ваша задача будет состоять в том, чтобы интересно рассказать о программировании и указать связь между всеми изучаемыми прелестями во избежание образования каши в голове.
Здравствуйте, sylph., Вы писали:
S>Наверное, английский. S>Программистом он может и не станет, но ин. яз. ему точно пригодится.
Тогда уж китайский. Как раз, пока вырастет, мы все в (Новосибирской/Московской/Нужное вставить) провинции КНР жить будем
Здравствуйте, bestix, Вы писали:
B>Доброе время суток! B>Собственно сабж. Сам программист, вот думаю сына начать обучать. С какого языка посоветуете? B>С уважением.
Можно так: сначала Фортран-77 (проще некуда).
Как покажется мало, смотрим Фортран-90. Далее можно заняться С++.
Как вариант, можно вглянуть на Squeak Smalltalk.
Здравствуйте, bestix, Вы писали:
B>Доброе время суток! B>Собственно сабж. Сам программист, вот думаю сына начать обучать. С какого языка посоветуете?
Logo
Здравствуйте, bestix, Вы писали:
B>Доброе время суток! B>Собственно сабж. Сам программист, вот думаю сына начать обучать. С какого языка посоветуете? B>С уважением.
Можно попробовать GameMaker — основы программирования + наглядно и интересно
Здравствуйте, bestix, Вы писали:
B>Доброе время суток! B>Собственно сабж. Сам программист, вот думаю сына начать обучать. С какого языка посоветуете? B>С уважением.
Если оптимист — английский
если пессимист — китайский
Здравствуйте, Ban001, Вы писали:
B>Здравствуйте, bestix, Вы писали:
B>>Доброе время суток! B>>Собственно сабж. Сам программист, вот думаю сына начать обучать. С какого языка посоветуете? B>>С уважением.
B>Если оптимист — английский B>если пессимист — китайский
Если реалист — армейский...
Здравствуйте, VladD2, Вы писали:
VD>Здравствуйте, Negationist, Вы писали:
B>>>Если оптимист — английский B>>>если пессимист — китайский N>>Если реалист — армейский...
VD>Если реализст, то учить нужно конечно автомат калашникова. Ну, или на худой конец узи.
Здравствуйте, bestix, Вы писали:
B>Доброе время суток! B>Собственно сабж. Сам программист, вот думаю сына начать обучать. С какого языка посоветуете? B>С уважением.
с английского.
чтоб потом не было проблем с чтением литературы — а если будет читать литературу, то и проблем с программированием не будет.