Привет ребята!
Вот о чем хочу Вас спросить - каждый из Вас когда то пришел в этот прекрасный мир под названием Linux, и, безусловно, каждый (ну или почти каждый) сталкивался с задачей написания какой либо программы/скрипта и т.п.
Не думаю, что все обретшие чудо Linux - сразу могли это делать, (я имею ввиду писать программы и программки), так вот - хотелось бы услышать с чего и как Вы это начинали? какие книги читали, какие сайты посещали, какие форумы засоряли бесконечными вопросами типа "а как то а как сё?" и тому подобную информацию. Т.е. мне бы хотелось, чтобы Вы поделились опытом со мной (да, думаю, это будет интересно не только мне, но и куче других пользователей).
Мне интересны любые отклики, как гневные "RTFM!" так и более дружелюбное и приятное общение.
Хочу сказать немного о себе в рамках данного вопроса -во-первых, пожалуйста не думайте, что я полный чайник и мне хочется враз и всему научится - нет, это не так. Кое что я умею, (это конечно просто капли из бесконечного океана знаний), но тем не менее я обладаю зачаточными знаниями в Делфи, Mysql и PHP, достаточными для того, чтобы зарабатывать на жизнь, но.. я влюбился в Linux , а там , как известно без С никуда. т.е. мои дальнейшие шаги должны касатся приобретения знаний в этом области.
Да и вобще - не люблю застой, и именно поэтому постоянно пытаюсь уйти от ненависной винды,- сначала ASP потом замучившись с постоянными непонятками абсолютно новой ОС и отсутсвием неких библиотек/файлов и т.п. требовавшихся разным программам, что я пытался ставить из исходников - я попробовал логичность и стойность FreeBSD - система портов меня просто поразила, но.. хотелось чего то еще, и вот - Gentoo - думаю это то что я искал, и, т.к. я уже определился - нужно наконец-то браться за программирование в новой среде, ибо как я не мыслю жизни в застое , так и не знаю как жить без программирования, т.к. тогда это просто тупое юзание компа, что я жутко не люблю и не очень понимаю.
Вот что меня натолкнуло на создание этого топика. надеюсь это будет интересно еще линуксоидам (как гуру так и начинающим, и самым начинающим - вроде меня).
Вобщем - жду Ваших советов и мыслей - с чего начать.
P.S. KDevelop уже поставил :)
очень помогает книга
Самый первый скрипт, мне помогла написать книга, к сожлению сейчас я ей найти не смог. Это была книга общего характера о том что такое линукс и с чем его едят. Потом, когда узнал команду gcc -o и научился программировать на С всё пошло легче
bash
сам я новичёк как и ты. Скрипты начел писать почти сразу как подсел на Линукс. Набирай man bash и вперёд.
Стал дружить с гуглом. Почти всё там нахожу чё надо. На сишку тебе будет трудно перепрыгнуть после Делфи. Посебе знаю. Немного подругому пишеться :-)
_________________
ПЕЙ ПИВО ВСЕГДА И ВЕЗДЕ.
Re: bash
ну это понятно, но выбор то не велик :)
ясно. а вот насчет С - может помните, какую литературу использовали в качестве учебной?
что то специфическое для линукса или классику типа ричи, кернигана?
Success is simple. Do what's right, the right way, at the right time.
Конечно
Конечно классику, специфическую литературу без нее не поймешь, а писать простые приложения можно не зная особенных функций юниксовых систем. В программировании на С главное научиться писать красивый правильный код. А для примеров особых функций не потребуется, printf он везде printf, scanf тоже.
Потом уже освоишь особенности программирования в линуксе.
PS А про делфи. А представляете каково писать на паскале после 4х лет изучения С?
сперва
сперва "Программирование под Linux Профессиональный подход" Марк Митчел, Джеффри, Оулдем Алекс Самюэдь (О'Рейли), потом "Взаимодействие процессов" Уильям Стивенс, а таже "Фундаментальные алгоритмы на С++" Роберт Седжвик, и справочник по С++ (stl)
Или вот это на
Или вот это на языке оригинала:
http://alexkbs.livejournal.com/172340.html
Соберетесь покупать стукните, можно в складчину купить.
Согласен.
Согласен. Изучение Линукса лучше всего начинать с bash. Полистайте на досуге: http://gazette.lrn.ru/rus/articles/abs-guide/index.html
Согласен
Полностью согласен с предыдущим постом.
Так же советую заглянуть на http://ru.wikibooks.org/wiki/LOR-FAQ-Development
Я тоже начал с
Я тоже начал с bash. Потом Python. Ну, C... Assembler - отдельный разговор. На самом деле, кажется, я понял, что все равно на чем кодить по большому счету.
Кстати, кодить понравилось в vim, а не kdevelop'е каком-нить. 7-й вим особенно приятен
Ну конечно есть
Ну конечно есть навыки, которые не меняются от языка. И таких навыков больше. Но какие-то языки позволяют ракрыться полностью, а какие-то нет. С позволяет делать и контролировать почти все, что угодно. Но как следствие, к этому надо относиться осторожно, внимательно.
Есть языки менее требовательные, паскаль например. Но как я ругался, пока писал на нем учебные программы, очень будный язык, не дает развернуться.
Мне тоже нравится!
Начинал конечно с bash, мучал perl и php. Потом написал скриатик в Python. Сейчас изучаю с/c++.
Из книг думаю пойдет все, что не заточено чисто под win ( win32, MFC или что там еще ).
Потом google и очень позновательны man 2, 3
Может быть нескольео страниц в man, с одни и темже названием ( например инфа к системной роге stat, или одноименная ф-ция ). Задавая цыфру перед названием страници, выбираешь из какого раздела тебе нужна страница. Ключ -a покажет по очереди все страницы с таким названием, а -k покажет названия страниц, в которых встречается данное слово.
Пропищи также в USE="doc". Правда немного нервирует, то, что для некоторыж библиотек кроме описания API и примеров ничего больще нет, но и в это тоже можно разобраться.
_________________
Linux
...because life is too short for reboots
Изучение
Изучение программирования я начал на вильнюсовском бэйсике под ОС Демос. А сейчас используюю... C, C++, Perl, PHP, Bash, etc, для решения своих задач.
Рекомендую изучать в первую очередь C и C++, из всех книг по данному вопросу принято считать обязательными две:
1. Денис Ричи и Брайн Керниган "Язык С", превосходная книга, лёгкая для чтения, действительно объясняющая многие вопрос, такие как почему C++ а не ++C.
2. Бьярн Страустрап "Язык С++" 3-е издание, книга от создателя C++, нудная, тяжелая для чтения, но если купишь её и осилишь, то ни за что не пожалеешь.
P.S. Что получится в результате:
C++ - C
?
Это собственно
Это собственно то, с чего я начинал:
1. Керниган, Ричи "Язык программирования Си" - классика, обязательно к прочтению!
2. Теренс Чан "Системное программирование на С++ в UNIX" - вещь, бумажный вариант можно купить только у букинистов, но есть отсканеный (по нему и учился), если дадите место куда выложить, залью.
"системное программирование на С++
Вышлите, пожалуйсто. Крутая книга, читал, но в цифровиде под рукой будет. Пожалуйсто, залейте на
, заранее благодарен.
PS. Желательно, как можно сильнее сжать(rar,gz,bz2)
А можно
А можно еще?
Действительно
Действительно сильный прогресс в программировании на с/с++ у меня был, когда я решил модифицировать некоторые программы для своих нужд. В Gentoo получить исходники просто. Труднее в них разобраться. Причём это не абстрактные примеры из книг, а то, что тебе действительно любопытно и написано, часто, высокопрофессионально.
Толстые книги по программированию, по-моему мнению, для фанатов программирования как такового и испольльзую их только в качестве справочника. Google тоже не помешает.
Как это не забавно, но я начинал с tcsh. По большому счёту существенной разницы в плане функциональности по сравнению с bash нет. Не забудте заглянуть на gnu.org Там, как это не удивительно, много хорошей документации. in english правда.
Удачи!
Спасибо, ребята.
Прежде всего - спасибо всем кто откликнулся и поделился опытом. лично для меня это было интересно. по крайней мере я немного определился в целях, задачах и приоритетах, а именно:
1) нужна идея какой нибудь программы, дабы на практике усваивать приобретенные по книгам знания. я выбрал программку для расчета биоритмов человека.
естественно выполнять упражнения из книг и сохранять их :)
2) сначала буду разбиратся с консольным С (если можно так сказать), а потом уже буду приступать к Qt и графическим добавкам.
почему не GTK?
по нескольким причинам:
3) и паралельно, так скажем - в рабочем порядке, буду разбираться с bash - я так понял это неимоверная просто вещь..
а) насколько я понял Qt получше задокументирован, чем GTK
б) на нем написанно кде, а именно кде я и пользуюсь (почему не гном - отдельный разговор, не здесь об этом писать) - соответсвенно будущие приложения будут ориентированны именно на кде.
вот такой план.
теперь отвечу на сообщения, с некоторыми комментариями и новыми наводящими вопросами.
еще раз спасибо всем!
это уже нашел, скачал - сижу пытаюсь читать.
может кто подскажет где скачать? пусть в библиотеке моей будет до лучших времен..
это пока что мне не светит.. и именно из за -
а вот за это - отдельное спасибо! :)
ЭТО ПРОСТО ЧУДО , А НЕ САЙТ! СТОЛЬКО ПОЛЕЗНОГО! СПАСИБО!
а нет ли где полного варианта , пригодно для распечатки? по указанной там ссылке - не качается что-то.. :(
я так понимаю - это все были бумажные вариатны? т.к. я не нашел где это можно скачать.
P.S. может на форуме создать что-то типа раздела "Программирование/Скрипты" или что то подобное? все таки вещь нужная, важная и полезная имхо?
и туду писать об этом, там можно будет меняться ссылками на книги (внимание администрация, я не говорю о незаконных ссылках и копирайтах, из за которых у форума могут быть проблемы, все такое обсуждается иначе :)) и интересные сайты по этой теме.
Удачи всем!
Success is simple. Do what's right, the right way, at the right time.
На
www.linuxshop.ru
Неплохая подборка по мейкам яккам и бизонам. Для си начать читать про библиотеку глибс. Особое внимание на процессы,сигналы, каналы и все такое. После прочтения становится ясно как оно все работает, и чего делать. Куча рабочих примеров.
Справочников по си си++ в нете валом. В той же библиотеке Машкова.
У каждой приличной гуевой либы есть своя тузла для визуал проектирования.
designer - для qt
glade (или glade2)для gtk
wxglade для wxgtk
Все как у людей. Кидаешь контрол плоучаеш код. Тараканы тоже везде свои. Ну а для правки - отладки имхо емакс+gdb (некоторые советуют вим, впрочем это уже холивар).
Есть еще eclipse. Молодежь хвалит. Поставил сегодня на пробу. Тормозит - вилы. Фишек пока не нашел :)
Перед
Перед изучением QT хорошо бы вникнуть хотя бы в основы ООП, например изучить С++. Могу посоветовать Г. Шилдт "Самоучитель С++", хорошая понятная книга, с примерами и упражнениями. Для беглого изучения и понятия основ самое то.
На мой взгляд
На мой взгляд очень достойная книга Андрея Робачевского "ОС UNIX", рассматриваются почти все аспекты System V