если никакого опыта в програмировании вообще нет, я бы советовал начинать сначало с pascal, как наиболее наглядный, чтобы научиться алгоритмически мыслить, потом бы посоветовал бы изучить основы assembler, чтобы понимать как это вообще все устроено (прогрммы, циклы, линковщики, компиляторы, чем хороши "интелектуальные" компиляторы, и т.д.), и только потом я бы перебирался бы к C/C++, Perl, Python, ... т.к. в противном случае получится обычный кодер
з.ы. это мое мнение и я не утверждаю что это идеальный вариант обучения, хотя попытался более ли менее, скорее все-таки менее, обосновать свою точку зрения... с таким же успехом можно научиться писать программы сразу на языках типа Си...
Проверил одного человека, вообще ни капли не шарящего в программирование. Сначала попытался поучить его питону - ничего не толком вышло, со схемой же наоборот - человек довольно быстро усвоил основы. Нужно ещё пооэксперементировать конечно, чтобы делать какие-то выводы, но и один человек это уже небольшой показатель.
а самом деле почитал отзывы и свое сообщение Я понял:
Вопрос был поставлен неправильно.
О Себе - Паскаль знаю, но скверно. Обработать порты не смогу... С,С++ - пытался изучать, но под Винды. Потом поставил Линуху, и загорелся желанием под неё писать.
PHP+mySql - начинаю изучать.
Питон - не имел дел и доков.
Perl - не доходил руками, но читал руководство.
Я знаю что есть qt, gcc и еще всякие компиляторы. Я хочу, что бы мне посоветовали на каком языке писать и где инфу достать. Вот например - qt ставил, там в комплекте екзамплы шли. Я так понял, что на нем пишут с пользовательским интерфейсом.
Вообще - Я не могу понять как делаються проги, которые с графическим окном?
У меня стоит - radhat подобная Линуха, вод под неё бы мне и писать научиться. З.Ы. Что бы можно было с графическим окном, а не мучаться, как на Паскале 7.0 - рамки рисовать.
высказывание и впрямь в стиле маленького зеленого нерусского паренька по имени Йода (тяжко читать как тяжкО)
тут уже неоднократно советовали SICP, в сети есть перевод на русский, замечательная книга, лучше с нее начать изучать программирование вообще, а языки дело наживное (синтаксис нового языка изучается за три-четыре часа, еще пару недель на стандартные библиотеки и примеры использования :)
Что имеется в виду? Работа с сетью? Так это отдельный вопрос, не сильно связанный с языком программирования.
> С,С++ - пытался изучать, но под Винды. Потом поставил Линуху, и загорелся желанием под неё писать.
Написание под разные ОС различается использованием разных API - в разных системах придётся подключать разные библиотеки и вызывать разные функции из них. Хотя, какие-то задачи можно решить с помощью стандартных библиотек C/C++, тогда код будет переносимым.
> Питон - не имел дел и доков.
Дел - понятно. А доки должны быть в дистрибутиве.
> Я знаю что есть qt, gcc и еще всякие компиляторы. Я хочу, что бы мне посоветовали на каком языке писать и где инфу достать. Вот например - qt ставил, там в комплекте екзамплы шли. Я так понял, что на нем пишут с пользовательским интерфейсом.
QT - библиотека на C++, позволяет создавать графические интерфейсы и имеет кучу других возможностей. Используя её можно создавать переносимый код, который будет компилироваться и работать под Windows и Linux.
> Вообще - Я не могу понять как делаються проги, которые с графическим окном?
Либо с помощью низкоуровневых API (WinAPI в Windows, иксового API в UNIX), либо с помощью библиотек типа той же QT. Изучайте доки и примеры.
>тут уже неоднократно советовали SICP, в сети есть перевод на русский, >замечательная книга, лучше с нее начать изучать программирование вообще, а >языки дело наживное (синтаксис нового языка изучается за три-четыре часа, еще >пару недель на стандартные библиотеки и примеры использования :)
Неа. IMHO начинать надо с ДМ. Сам сейчас изучаю :) Сначала основы всех её разделов, а затем отдельные разделы более подробно. Только потом всякие SICP и т.п. Далее конкретные языки и технологии, с помощью которых преобретаются начальные навыки кодирования, которые потом закрепляются на работе. Только так, а иначе лучше сразу сменить проф. ориентацию, ну или застрелиться на худой конец (лучше второе).
Исключительно ИМХО: Как я понял, речь идет о программировании ПОД ЛИНУКС. В этом случае решительно не понимаю при чем тут Qt, и прикрученные к нему OpenGL классы. А как же процессы, потоки, IPC и пр.. :-( И вообще, проги надо сперва писать для консоли, а уж потом, когда основные глюки отЛАЖены, кнопочки да рюшечки прикручивать.
У автора в голове каша из модных названий. Я уже написал что сначала надо делать, но видимо не доходит. Если так уж хочется быть безмозглым кодером, надо хотябы основы asm'а знать и ОС, под которую собираешься "кодить".
> решительно не понимаю при чем тут Qt, и прикрученные к нему OpenGL классы
это просто был ответ на вопрос из серии "хочу все знать", неужели вы считаете что нельзя одновременно сочетать изучение основ (ДМ, SICP), изучение системных вызовов ОС и программирование ГУЯ, так ведь гораздо веселее, переключаешься на разные задачи, мозги гибче работают. Хотя в данном случае есть вероятность, что так и не научишся толком ничему, но это уже от человека зависит
Я придерживаюсь такого мнения, что учиться _абстрактно_ программированию - только время терять. Всегда должна быть цель (пусть и не совсем реальная по-началу). Но цель должна человека манить. Выбери то, что тебе жутко хочется увидеть в своём линуксе и действуй. Язык не имеет большого значения. Сделаешь задумку на одном языке, попробуй на другом. Только не берись за всё сразу. И обязательно читать учебники, переписывать задумку с новыми знаниями.
Заметь те. Я не прошу ВАС описать как написать игру под ЛИНУХ.
Я прошу сказать - какие бывают библиотеки, надстройки и т.д над С или С++ (по крайней мере я знаю, что наэтом все держиться). Насчет - флеша, пхп, и персла - Я не говорю, так как....
> Хочу уметь программить 3д, что бы создавать игры.
Хм... наконец мы определились с целью. Тогда мне непонято, в чем вообще проблема, OpenGL - он везде OpenGL, что под линухом, что под виндой. Простейшие ОпенГЛ проги одинакого хорошо компилятся и на той и на другой системе. Еще для игр есть SDL
Тогда разбирайся в следующих библиотеках: OpenGL (прежде всего) OpenAL (для звука) Для изучения OpenGL советую достать книгу Ф. Хилла "OpenGL: программирование компьютерной графики" (Computer graphics programming using OpenGL)