Спор "С чего надо начинать?". Что думаете?
Сегодня состоялся у меня спор, с одним моим однокурсником. (учусь на IT, первый курс)
Пишем в универе в Turbo C. Вобщем, пацанчик этот научился делать очень приличные графичпеские приложения, естессно юзая консольные средства (graphics.h и иже с ними). Я-же, никада этим не увлекался, мине ближе писать под винду (winapi, qt, ну или тот-же дотнет).
Этот парнишка мне каждый раз пытается доказать что то что ОН делает - это База, фундамент. Всё, в его речях, сводица к тому, что программер, пишущий софт используя технологии высокого уровня - на порядок ниже того который знает как нарисовать окно в консоли, и как там всё взаимодействует (т.е. надо начинать непосредственно с консольной графики, и мега-низкого уровня, и только потом браца за выскоий уровень). Соответственно последний более востребован, больше бабла рубит и ваще круче :). Первый-же, по его словам, получает деньги просто за набор текста... Я не спорю - знание низкого уровня, в какой-то степени нужно, но не настолько ведь! Или я ошибаюсь?
Ваши мнения, по этому поводу.
зы отмечу, что пацанчик этот не глупый, и очень неплохо всё схватывает ))
Все остальное субъективно, начать учить можно с любого уровня - зависит от конкретного человека, с того что ему больше нравится.
А если студент знает не только то, что требуют в ВУЗе, но и гораздо болше того, то честь ему и хвала, или как принято: "респект и уважуха". И дело даже не в языках программирования (ассемблер или ЯВУ) и не в других вспомогательных средствах, а в реальных знаниях - никогда не знаешь наверняка, какие знания могут пригодиться, поэтому советую учить все к чему лежит душа и не ограничиваться программой курса.
Из языков советую ознакомиться с русским;))
ЗЫ ("про пацанчика" ;-)
консоль - это консоль, интерфейс ОС, а graphics.h+graphics.lib - библиотека к Borland C/CPP, содержащая функции для работы с графикой и низким уровнем назвать это никак нельзя. (потому как програмит он всё таки на Ц, а не на асме).
Про востребованность программирования под DOS могу сказать, что востребовано оно только в узких кругах, где требуется скорость, надёжность, автономность и переносимость (неновые машины, встроенные системы). Большинство же софта (так. наз. ширпотреб) может писаться (и чаще всего пишется) на VB, Delphi, VCPP и всём таком, то есть максимально красиво\удобно с наименьшими затратами.
И порой сильно мешает, когда начинаешь рассматривать программирование как самостоятельную науку, а не заталкивание байтов в регистры и прыжки по адресному пространству. Например, при изучении функционального программирования. Почитайте Спольски. Он пишет, что для программиста важно понимать суть указателей и адресной арифметики и функционального программирования. Именно понимать, т. к. в жизни на чём только не придётся писать, если хочешь расти.
начинать надо с паскаля (или дельфи) что понять что такое програмирование. он прост для понимания и всё интуитивно понятно.
потом надо Assembler чтобы знать что откуда, когда, куда и зачем
потом уже по тому пути который больше нравится: есть хочется системного програмирования то С++, если всякие приложения или базы данных то Delphi.
WEB-програмирование это отдельная история
тут - возможна обратная ситуация. называется - "за деревьями не видно леса". оперирование байтами, битами, памятью и регистрами - убивает абстрактное мышление начисто :)
что касается языка, то мое ИМХО - лучше вообще изучать нечто не используемое на практике. какой нибудь LOGO... :) чтобы с самого начала учится принципам, а не заучивать реализацию конкретных ситуаций на конкретном языке.
Этой роли и отводит функциональное программирование Спольски. Сам я с "функционалкой", к сожалению, слишком поздно познакомился.
Это зависит от того, какую поставишь себе цель. Абстрактное мышление - алгоритм, а заталкивание байтов в регистры и прыжки - его реализация
начинать надо с паскаля (или дельфи) что понять что такое програмирование. он прост для понимания и всё интуитивно понятно.
потом надо Assembler чтобы знать что откуда, когда, куда и зачем
потом уже по тому пути который больше нравится: есть хочется системного програмирования то С++, если всякие приложения или базы данных то Delphi.
WEB-програмирование это отдельная история
+1 ) полностью согласен
ну и матчасть аналитическое мышление развивать
чтоб не сыпаться на элементарном
Какая графика, какие деньги? Начинайте с освоения языка и алгоритмики на нем. Проектирования структур данных. Вот тут то и закладываются основы. А уж всякие либы в том числе и GUI - это дело, дополнительное и изучается в порядке необходимости. Я уж не говорю что графические досовские либы уж точно не востребованны. А чтобы действительно в графике разбираться - надо в первую очередь математику знать, а не либу древнюю. )) Ато так и будет наколеночником. )