Можно ли научиться программированию самостоятельно,по книгам? (подскажите самый легкий язык которому можно научиться и полезную литер)

Модератор: Модераторы разделов

Аватара пользователя
ety
Сообщения: 358
ОС: Linux

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение ety »

и? все равно остается не ясным нового это на приносит кроме встроенных list-ов, и жоских извращений с ними для экстракции разряда.

хотя было бы интересно посмотреть как с этим компилятор справляется :)
Образование - это вовсе не то, чему человека учили, а то, чему он научился.
-----
Время, необходимое на компиляцию пакета обратно пропорционально его полезности и важности его наличия в системе.
Спасибо сказали:
Аватара пользователя
diesel
Бывший модератор
Сообщения: 5989
ОС: OS X, openSuSE, ROSA, Debian

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение diesel »

праздник продолжается :)

не надоело по второму кругу?
Спасибо сказали:
Аватара пользователя
0xFF
Сообщения: 267
ОС: Gentoo

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение 0xFF »

вставлю свои 5 ИМХО )
....тяжёлое детство началось... лет в ~9, посмотрел "Хакеры"... начал очень тянуться к компам, а своего тогда не было... но в надежде на подарок на Новый Год не стал терять время, взял у своего дядьки книгу Assembler for ZX80 (это такие процы были у Spectrum'ов), потом купил книгу по C++... читал захлёбываясь, писал коды на бумажке :)... подарили Денди, а компа так и не было... На работе у предков поставили 486'й, ходил к ним, в Doom 2 гамал... попутно изучая на компьютерных курсах в ближайшем <Доме Творчества> бэйсик (q) и пытаясь изобразить трёхмерную графику (вдохновил авиасимулятор F15). Написал вывод зелёных линий в 3Д, правда было куча непонятных глюков, но нарисованная такими линиями взлётная полоса и движение камеры относительно неё на этих самых ККурсах была оценена на 3 из 5-ти баллов, ибо не поверили, что сам написал... или просто завидовали...:).... тогда ещё не прогал на Си, не знал где компиль взять, а бэйсик был частью ДОСа.... и наконец... уже в 15 лет дядька мой приобрёл P166, и так как проживание в квартире было совместно, некоторое время юзал VC6++ и ассемблер, попутно обслуживая дядькины косяки в Win... потом в школе начали учить Паскаль... мне он так и не прижился, итоговую работу по информатике по переводу из одной системы счисления в другую писал на asm'е под TASM'ом. В 20 лет наконец-то появился свой комп, пришёл Линукс с Линуксцентра, и ТОЛЬКО ТОГДА я вкусил весь кайф от творческой самореализации в программировании под Линуксом)

...собственно ИМХО такое, что начинать надо с простого, но актуального языка типа C - для понимания программирования в общем и решения каких-то собственных небольших прикладных задачь, и с PHP - для программирования WEB.... далее прикоснуться к C++ и попробовать понять его АбСтРаКцИоНиЗм. Если получится, значит вы можете в програмировании мыслить абстракциями, а это тянет на готовность к вашему участию в серьёзных проектах...
...второе ИМХО о том, что выбор языка зависит от конкретно поставленной задачи, но если вы поймёте C а уж, тем паче, вкусите C++, то проблем с освоением других языков не будет.
...третье ИМХО, что с Паскаля уж точно не надо начинать учиться, т.к. язык морально устарел, алгоритмы больше понятны на C... а главное стиль C более чётко объясняет вообще принцип работы компьютера... и самое главное, что изучив этот относительно простой язык можно начинать воплощать в жизнь реальные задачи.
...четвёртое ИМХО это что именно в Линуксе нужно обучаться программированию и в IDE KDevelop, ибо удобно для новичка, куча всякой инфы, а главное - открытые исходные коды, откуда можно подчерпнуть много интересного :)
...и пятое ИМХО.... Software от Microsoft - АЦТОЙ, Hardware - РУЛИТ :)
Спасибо сказали:
Аватара пользователя
ety
Сообщения: 358
ОС: Linux

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение ety »

0xFF, рэспект!

мде, у человека было трудно детство, а я тут о применении бэйска, паскаля и питона в реальном мире думаю - зажрался совсем. как грится, жуй что дают :)
Образование - это вовсе не то, чему человека учили, а то, чему он научился.
-----
Время, необходимое на компиляцию пакета обратно пропорционально его полезности и важности его наличия в системе.
Спасибо сказали:
Аватара пользователя
edoc_modnar
Бывший модератор
Сообщения: 1638
Статус: Форум больше не посещаю

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение edoc_modnar »

(diesel @ Oct 23 2006, в 20:16) писал(а):праздник продолжается

Продолжается, но уже не смешно. Напротив, появляется навязчивое желание стукнуть кое-кого по дурной башке (:
So long, and thanks for all the fish.
Douglas Adams, The Hitchhiker's Guide to the Galaxy
Спасибо сказали:
Аватара пользователя
polachok
Бывший модератор
Сообщения: 2199
Статус: главный форумный маргинал
ОС: gnu/linux

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение polachok »

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

Код: Выделить всё

#!/usr/bin/zsh
var=100000
while [ $var -le 1000000 ]
do
    if [ $((${var[1]}+${var[2]}+${var[3]})) -eq $((${var[4]}+${var[5]}+${var[6]})) ]
    then
        echo lucky: $var
    fi
    ((var++))
done
И немедленно выпил.
Спасибо сказали:
Аватара пользователя
elide
Бывший модератор
Сообщения: 2421
Статус: Übermensch
ОС: лялих

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение elide »

ety
остается не ясным нового это на приносит кроме встроенных list-ов, и жоских извращений с ними для экстракции разряда
все это приносит одну очень удобную возможность - возможность менее чем за минуту написать программу, которая работает _правильно_, а не как твоя (:

polachok
а где же билетик №010010 ? (:
и зачем

Код: Выделить всё

if [ $((${var[1]}+${var[2]}+${var[3]})) -eq $((${var[4]}+${var[5]}+${var[6]})) ]
    then
        echo lucky: $var
    fi
если можно

Код: Выделить всё

[ $((${var[1]}+${var[2]}+${var[3]})) -eq $((${var[4]}+${var[5]}+${var[6]})) ] &&  echo lucky: $var
слава роботам!
Спасибо сказали:
Аватара пользователя
Ballantre
Сообщения: 114
ОС: Linux

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение Ballantre »

Господа, мы опять сбились на сравнения достоинств разных языков. Всех, кроме одного, ради которого, собственно, и была затеяна вся эта тема: а какой же язык лучше для обучения? На самом деле, это серьезный вопрос.
Давайте попробуем отрешиться от собственного профессионализма. Да, возможно, сейчас мы работаем на каких-то конкретных языках, наилучшим образом отвечающих поставленным перед нами задачам. Но на чем мы сами учились? И каким же образом нам эта учеба помогла или помешала?
Я сам сначала учил Паскаль. Сейчас пишу на С++. Конечно, главное в обучении - правильно выстроенный системный подход к программированию. С этим, надеюсь, никто спорить не будет. Мы свалились на С/С++ против Паскаля. Ну так в чем же их плюсы. Давайте говорить по делу.
Паскаль - язык очень четко структурированный. Очень жесткая типизация. Быстрое освоение. Но, я не знаю, является ли это таким четким плюсом. Ведь четко построенный путь решения далеко не всегда является самым оптимальным или элегантным ( для многих это тоже немаловажно ). Но и к плюсам это тоже можно отнести. Плюс, конечно, работа с графикой.
Про чистый С мне говорить несколько сложно. Просто сразу стал писать на С++. Теперь уже даже "Hello world" не мвслю без классов :D . Это гипербола, конечно. Скажу по поводу С++, что на нем можно писать несравненно элегантнее, чем на Паскале. А ведь при обучении это немаловажно, так как может являться дополнительным стимулом к дальнейшему совершенствованию. Для многих будет интересно покопаться с указателями уже на начальном этапе разработки своих приложений. Но и оторопь новичка может взять, например, при фразе "массив указателей на функции". Хотя это, как раз, очень просто.
Еще очень важна имеющаяся литература. Сейчас хорошие книжки достать уже несложно, а вот раньше это было иногла затруднительно. Я, вот, почти возненавидел Паскаль в свое время из-за одного такого гения.
Так что давайте говорить конструктивно.
И в конце-концов, почему С/С++ и Паскаль. Почему не С/С++ и Java? :P
Я двадцать лет знал его и всегда ненавидел, и всегда восхищался, и всегда по-рабски боялся его.
Спасибо сказали:
Аватара пользователя
edoc_modnar
Бывший модератор
Сообщения: 1638
Статус: Форум больше не посещаю

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение edoc_modnar »

polachok
Слабо то же самое сделать на bash? (:
So long, and thanks for all the fish.
Douglas Adams, The Hitchhiker's Guide to the Galaxy
Спасибо сказали:
Аватара пользователя
ety
Сообщения: 358
ОС: Linux

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение ety »

Почему не С/С++ и Java? :P

потому что Яву не учат в наших школах и вузах, потому-что Яву парактически не за что ругать, она действительно добавляет стоящие вещи, и заменяет сумашедшие множественное наследование интерфэйсами. из трабла лишь отсутствие нормальной на мой взгляд имплементации:
1) принудительный garbage collection, и убрали доступ к низко-уровневым конструкциям
2) практическое отсуствие компилеров
3) она не юзает стандартную библиотеку сишки, а изобретает велосипед.

Cишка хороша для маленьких, одно-направленных проектов, вроде системных утилит, ныне даже ядра начали писать на C++, уже видел где-то туториал, как писать и отлаживать ядро Linux непосредственно на C++.
Образование - это вовсе не то, чему человека учили, а то, чему он научился.
-----
Время, необходимое на компиляцию пакета обратно пропорционально его полезности и важности его наличия в системе.
Спасибо сказали:
Аватара пользователя
elide
Бывший модератор
Сообщения: 2421
Статус: Übermensch
ОС: лялих

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение elide »

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


она не юзает стандартную библиотеку сишки, а изобретает велосипед
только не мой мозг!!! нет!!!
ты не поверишь, но вообще ни один язык кроме C не использует его стандартную библиотеку (:
все эти толпы идиотов изобретают велосипеды, ты только подумай!!! т.е. вот натурально, сидят несколько сотен тысяч человек во всем мире, и вместо того, чтобы использовать стандартную библиотеку C используют другие стандартные библиотеки, просто потому, что они пишут на других языках!!!!!
т.е. эти идиоты думают, что если они пишут на smalltalk или на каком-нибудь erlang, то и использовать надо стандартные библиотеки смолтолка и эрланга!!! вот ведь неполноценные личности какие....
слава роботам!
Спасибо сказали:
Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение serzh-z »

Черт,.. какую тут снова скуку развели... Увы. B) Снова все остались при своих точках зрения. Снова все отстаивают своё. Такое ощущение, что никто ничему новому не научился и остался прежним, как в топике N, как в топике N-1, и даже как в топике N-50.
Никогда бы, на месте автора, не стал задавать подобного вопроса на форуме, который напрямую не связан с программированием... <_<
Спасибо сказали:
Аватара пользователя
ety
Сообщения: 358
ОС: Linux

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение ety »

elide писал(а):
23.10.2006 22:24
ты не поверишь, но вообще ни один язык кроме C не использует его стандартную библиотеку (:

не в этом дело, с ней просто сложно работать отдельно от реализации сан и линковать ее к сишным либам - как мне заюзать из нее нативный zlib с его хэдерами?

Никогда бы, на месте автора, не стал задавать подобного вопроса на форуме, который напрямую не связан с программированием...

на форумах не решают вопросов, а выявляют проблемы и создают проблемы ;)

вообще прикрепите голосование - пусть все дружно за паскаль проголосуют, а то автора без его знания ни однин нормальный совковый кодер уважать не будет.
Образование - это вовсе не то, чему человека учили, а то, чему он научился.
-----
Время, необходимое на компиляцию пакета обратно пропорционально его полезности и важности его наличия в системе.
Спасибо сказали:
Аватара пользователя
Ballantre
Сообщения: 114
ОС: Linux

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение Ballantre »

ety, по поводу изучения Java в школе: так далеко не во всех школах и С учат. Тем более, что человек хочет научиться программировать, а этому не в школе и не на курсах учатся. Только самостоятельно. А уж по количеству литературы Java, пожалуй, никому не уступит.
Я двадцать лет знал его и всегда ненавидел, и всегда восхищался, и всегда по-рабски боялся его.
Спасибо сказали:
Аватара пользователя
ety
Сообщения: 358
ОС: Linux

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение ety »

Ballantre писал(а):
23.10.2006 22:35
ety, по поводу изучения Java в школе: так далеко не во всех школах и С учат. Тем более, что человек хочет научиться программировать, а этому не в школе и не на курсах учатся. Только самостоятельно. А уж по количеству литературы Java, пожалуй, никому не уступит.

в классической яве отсутствуют нормальные поинтеры, так что допустим трюк с генерацией x86 кода в буфер и прыжка туда не прокатит :)
Образование - это вовсе не то, чему человека учили, а то, чему он научился.
-----
Время, необходимое на компиляцию пакета обратно пропорционально его полезности и важности его наличия в системе.
Спасибо сказали:
Аватара пользователя
Ballantre
Сообщения: 114
ОС: Linux

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение Ballantre »

serzh-z, дело в том,что на форуме, напрямую связанном с программированием результат подобного вопроса был бы точно тем же, поверь мне. Здесь главное, что из этого спора смог почерпнуть для себя автор темы. Хотя, конечно, его достижения в этом вопросе были бы лучше, если бы участники дискуссии говорили бы не только сами с собой, но и изредка друг с другом.
Я двадцать лет знал его и всегда ненавидел, и всегда восхищался, и всегда по-рабски боялся его.
Спасибо сказали:
Аватара пользователя
edoc_modnar
Бывший модератор
Сообщения: 1638
Статус: Форум больше не посещаю

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение edoc_modnar »

Ballantre
Не-а. На RSDN живо начали бы рекомендовать вижуалбасики, сишарпы и дельфи.
So long, and thanks for all the fish.
Douglas Adams, The Hitchhiker's Guide to the Galaxy
Спасибо сказали:
Аватара пользователя
Ballantre
Сообщения: 114
ОС: Linux

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение Ballantre »

Ну да, было бы больше предложений, т.е. больше крика.
Я двадцать лет знал его и всегда ненавидел, и всегда восхищался, и всегда по-рабски боялся его.
Спасибо сказали:
Аватара пользователя
0xFF
Сообщения: 267
ОС: Gentoo

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение 0xFF »

но и на сишке сее отлично прокатывает

Код: Выделить всё

main() {
    for(int i = 0; i < 999; i++)
        for(int j = 0; j < 999; j++)
            if(i%10+i/10+i/100 == j%10+j/10+j/100)
                printf("%03d%03d\n", i, j);
}

Кстати о птичках:

Код: Выделить всё

main() {
    int i, j;
    for(i = 0; i < 999; i++)
        for(j = 0; j < 999; j++)
            if(i%10+(i/10)%10+i/100 == j%10+(j/10)%10+j/100)
                printf("%03d%03d\n", i, j);
}

Если о Сишке без плюсов, то переменную должно определить до for, и для правильного решения никаких pow(...) не надо :)

Использование для таких задачь чего-нить тяжёлого или интерпретируемого лишено смысла... разумеется ИМХО :)
Спасибо сказали:
Аватара пользователя
elide
Бывший модератор
Сообщения: 2421
Статус: Übermensch
ОС: лялих

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение elide »

Использование для таких задачь чего-нить тяжёлого или интерпретируемого лишено смысла... разумеется ИМХО
хм... сколько ты потратил на написание, компиляцию и запуск данной программы? (даже если предположить, что она работает правильно. что на самом деле не так. (: )
слава роботам!
Спасибо сказали:
Аватара пользователя
ety
Сообщения: 358
ОС: Linux

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение ety »

0xFF писал(а):
23.10.2006 23:05
но и на сишке сее отлично прокатывает

Код: Выделить всё

main() {
    for(int i = 0; i < 999; i++)
        for(int j = 0; j < 999; j++)
            if(i%10+i/10+i/100 == j%10+j/10+j/100)
                printf("%03d%03d\n", i, j);
}

Кстати о птичках:

Код: Выделить всё

main() {
    int i, j;
    for(i = 0; i < 999; i++)
        for(j = 0; j < 999; j++)
            if(i%10+(i/10)%10+i/100 == j%10+(j/10)%10+j/100)
                printf("%03d%03d\n", i, j);
}

Если о Сишке без плюсов, то переменную должно определить до for, и для правильного решения никаких pow(...) не надо :)

Использование для таких задачь чего-нить тяжёлого или интерпретируемого лишено смысла... разумеется ИМХО :)

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

что на самом деле не так. (: )

так что-ли?

Код: Выделить всё

main() {
    int i, j;
    for(i = 0; (j = i) < 1000000; i++)
        if(j%10+(j/=10)%10+(j/=10)%10 == (j/=10)%10 + (j/=10)%10 + j%10)
            printf("%06d\n", i);
}
Образование - это вовсе не то, чему человека учили, а то, чему он научился.
-----
Время, необходимое на компиляцию пакета обратно пропорционально его полезности и важности его наличия в системе.
Спасибо сказали:
Аватара пользователя
elide
Бывший модератор
Сообщения: 2421
Статус: Übermensch
ОС: лялих

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение elide »

пример показателен в том плане, что он просто до безобразия примитивен, но вот уже 2 сишника не могут его правильно решить (:

ety все равно не правильно....
разве 989997 - счастливый? а где счастливый 989989?

и вообще, может не надо перебирать безумно все варианты, а подумать минуту?
слава роботам!
Спасибо сказали:
Аватара пользователя
Ballantre
Сообщения: 114
ОС: Linux

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение Ballantre »

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

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение ety »

Ballantre писал(а):
23.10.2006 23:21
Привязались все к счастливым билетикам. Давайте, лучше каждый будет писать маршрутизатор на своем любимом языке программирования, а потом выставлять его здесь на всеобщее обозрение. Авось, люди делом займутся.

это не показательно - на zsh его не напишешь, как и на дельфи, точнее на последнем сам программирующий контингент не представляет как его писать :P
Образование - это вовсе не то, чему человека учили, а то, чему он научился.
-----
Время, необходимое на компиляцию пакета обратно пропорционально его полезности и важности его наличия в системе.
Спасибо сказали:
Аватара пользователя
elide
Бывший модератор
Сообщения: 2421
Статус: Übermensch
ОС: лялих

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение elide »

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

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение Ballantre »

Так тем интереснее. Часть людей углубится в его создание, а другая часть отправится изучать языки, на которых можно покуситься на такую великую вещь. Оцените, люди либо получат дополнительную практику, либо изучат новые, доселе неизвестные языки программирования. Можно сказать, 2 в 1.
Я двадцать лет знал его и всегда ненавидел, и всегда восхищался, и всегда по-рабски боялся его.
Спасибо сказали:
Аватара пользователя
0xFF
Сообщения: 267
ОС: Gentoo

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение 0xFF »

elide писал(а):
23.10.2006 23:10
Использование для таких задачь чего-нить тяжёлого или интерпретируемого лишено смысла... разумеется ИМХО
хм... сколько ты потратил на написание, компиляцию и запуск данной программы?

1 сек. на запуск KDevelop + 3 на создание "Привет Мир!* проекта на Си под лицензией GPL + 2 на копирование кода из форума + 7 сек. на обдумывание правильного решения + 5 на дебаг кода + 4 на создание automake'ом и его друзьями стандартнокомпиллируемого исходника + 0.1 собственно компилляция. Каждая следующая компилляция занимает 0.1 секунды.
22.1, учитывая, что идея решения стыренная :)
Спасибо сказали:
Аватара пользователя
elide
Бывший модератор
Сообщения: 2421
Статус: Übermensch
ОС: лялих

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение elide »

ну тогда ясно, почему она нихрена не работает (:
это я могу себе позволить тратить 5 секунд на дебаг. потому как ruby.
а вот у вас на С за 5 секунд не получается отдебажить... не получается....
слава роботам!
Спасибо сказали:
Аватара пользователя
0xFF
Сообщения: 267
ОС: Gentoo

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение 0xFF »

elide писал(а):
23.10.2006 23:10
(даже если предположить, что она работает правильно. что на самом деле не так. (: )

... хм, а где ошибка? 010010 вроде выводит :)
Спасибо сказали:
Аватара пользователя
elide
Бывший модератор
Сообщения: 2421
Статус: Übermensch
ОС: лялих

Re: Можно ли научиться программированию самостоятельно,по книгам?

Сообщение elide »

ну... там кроме 010010 еще более 55 тысяч билетиков (:
слава роботам!
Спасибо сказали: