LINUX.ORG.RU

Книги для кодера

 ,


2

4

Здравствуйте, уважаемые форумчане. Снова я пришел к вам за советом.

Какую литературу стоит читать тому, кто собирается покорять прекрасный мир программирования?

Стоит ли начать на примере какого-либо ЯПа или сначала теории набраться в вакууме?



Последнее исправление: KrasnoGlazik (всего исправлений: 1)

Ответ на: комментарий от fluorite

В книге ещё же про вентили и булеву логику

Таненбаума, Structured Computer Organization.

Begemoth ★★★★★
()
Ответ на: комментарий от fornlr

PHP - это язык из раннего палеозоя, сейчас только JavaScript.

Begemoth ★★★★★
()
Ответ на: комментарий от maked0n

выучить как-нибудь С (Керниган и Ритчи)

Лучше SICP для начала, пофиг, что на практике Scheme применять не будет, но основные концепции там есть. Плюс рассматривается вопрос компиляции программ, в абстрактный, но низкоуровневый язык.

Begemoth ★★★★★
()

Этюды для программиста - выбираешь понравившийся и пытаешься реализовать (сначала урезанную версию, потом полную) на том ЯП который тебе нравится.

Ну или (если знаешь английский) топаешь сюда и решаешь задачки: https://www.codingame.com/

Для начала тоже будет не плохо (но тут не будет комплексных задач, только алгоритмы по факту).

Norgat ★★★★★
()

Грэхем, Кнут, Паташник - Конкретная математика. Основание информатики

anonymous
()
Ответ на: комментарий от Unununij

Как то недавно задумался про SICP, точней про его авторов. Оба евреи, кстати. Абельсон — вообще в CS не особо заметная фигура. Сассман — покрупней. Самым значительным, что он сделал — это, видимо язык коннивер. Но «сделал» тут не совсем подходит, это урезанная версия Планнера Хьюитта с добавлением J-оператора Ландина. Если покапаться так вот в его работах, я думаю, там мало чего найдешь, нет у него никаких оригинальных открытий в сфере CS. Абельсон — вообще серая мышь, как я уже сказал.

И, вот возникает вопрос: а какого хрена классические учебники по программированию не пишут реальные патриархи программирования?

Есть правда учебник Мински. Но это единственное исключение, которое я знаю. Да и то, он не по программированию, а по вычислительным моделям.

onceagain2017
()

арнольд роббинс linux программирование в примерах

особенно там хорошь раздел библиографии в конце почти каждой главы -

anonymous
()
Ответ на: комментарий от onceagain2017

вроде это Сасманн в начале 80ых что то интересное в задаче трёх тел обнаружил вместе с коллегами

anonymous
()
Ответ на: комментарий от anonymous

как управлять рабами.

например.

anonymous
()
Ответ на: комментарий от KrasnoGlazik

Пока обучаюсь каким-никаким азам по youtube

Introduction to Computer Science эмайтишные послушай. Но лекции лекциями, книжки книжками, а без единой строчки кода это балласт в голове. Пиши. Много пиши. Криво, косо, но пиши. Вот прям возникла мысль «а хорошо бы, чтоб вот это тут-то делалось само» — сел, набыдлокодил. Потом исправил, что-то понял, чему-то научился. Никто не читает «бипедальность для чайников» прежде чем научиться ходить. Тупо ходят. Спотыкаются, плюхаются на жопу, поднимаются и снова идут.

massimus ★★★
()

Овладей инструментом, а потом при желании гугли алгоритмы и прочую дребедень, но самое важное, практика и ещё раз практика. Заведи github и складируй там свои, маленькие, но гордые! програмульки и напоминалки и всё такое прочее =) p.s. про Autotools во второй книге пропусти мимо ушей.

Dron ★★★★★
()
Ответ на: комментарий от Harald

А что бы это отвращения не вызывало. Хорошего знания как писать Makefile хватит с головой. Ну можно сказать что я не осилил... да это так =) Ну блин, да там всё как бы клёво и продуманно, но вот не знаю у меня прям неприятие автотулзы от того и желания осваивать NULL. Может быть я не прав, но как по мне сейчас для него эти дебри лишние. Это я к тому что бы глаза не разбегались у него и было что-то вроде такого:

  • один компилятор - gcc
  • одна платформа - gnu/linux
  • одна система сборки - make
  • один отладчик - gdb
  • один редактор - geany

Тоесть стабильная среда на которой можно без гемороя обучаться и писать код, а уже когда захочется большего он сам узнает про 100500систем сборок/1005000редакторов и IDE про особенности платформ и как на них выполнять сборку брррр. Пусть будет что-то одно, но актуальное всегда и железно работающее, а там... сам будет уже холиварить и срать в комментариях как правильно нужно кросскомпилировать из под linux для windows через mingw =)

Dron ★★★★★
()
Последнее исправление: Dron (всего исправлений: 1)
Ответ на: комментарий от BceM_IIpuBeT

Ему хватит, не кипишуй, ты ещё ози позови пошокайте тут и по лалкайте =)

Dron ★★★★★
()

а что конкретно хочешь покорять? какую область? веб/десктоп/мобилы/микрухи?

bvn13 ★★★★★
()
Ответ на: комментарий от KrasnoGlazik

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

bvn13 ★★★★★
()
Ответ на: комментарий от bvn13

Года 2 назад как раз остановился на графическом калькуляторе на Java.

KrasnoGlazik
() автор топика

А как книжка поможет тебе разобраться в миллионах строк говнокода?

anonymous
()
Ответ на: комментарий от anonymous

Для начала нужно понять суть действия, а потом применять на практике. Или как истинный русский - сначала сделаю, потом прочитаю инструкцию?

KrasnoGlazik
() автор топика
Ответ на: комментарий от KrasnoGlazik

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

anonymous
()
Ответ на: комментарий от KrasnoGlazik

Или как истинный русский - сначала сделаю, потом прочитаю инструкцию?

Именно так. Теория, конечно, нужно, но скучно, а мотивирует практика и конкретные успехи.

anonymous
()
Ответ на: комментарий от anonymous

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

anonymous
()

Численные методы - Формалев Владимир Федорович, Ревизников Дмитрий Леонидович. И прочий матан. Книжки по ЯП - вторичны (сначала выбираешь ЯП, а потом книжку по нему, это всего лишь твой инструмент, не более того), любой балабол, который мне не верит, может попробовать смоделировать стрельбу из пушки, как в Angry Birds.

peregrine ★★★★★
()
Последнее исправление: peregrine (всего исправлений: 2)
Ответ на: комментарий от anonymous

Глупенький анонимус. Тебе баба не дает? Мне тебя жаль. Почти все кодеры, которых я знаю уже давно семейные люди, с женой, детьми и прочим геморроем, который так ценят молодежь и люди с ГСМ.

peregrine ★★★★★
()
Ответ на: комментарий от KrasnoGlazik

Не вздумай только учить матан, пока хороше не освоишь какой нить нормальный язык. Матан + теория категорий не нужны в 99.9% задач.

Int0l ★★
()
Последнее исправление: Int0l (всего исправлений: 1)

Какую литературу стоит читать тому, кто собирается покорять прекрасный мир программирования?

Сначала выбираешь область, в какой хочешь развиваться. Например, ты хочешь делать веб-проекты, а может Android-приложения, может ты хочешь делать игры, но игры могут быть и веб, и для Android, и для ПК. Извращенцы ещё для часов игры делают. А может ты просто хочешь софт прикладной писать, новый фотошоп, DAW, может браузер какой пилить :)

Как выберешь область, смотри какие имеются для неё инструменты. Выбирай себе инструмент, выбирай к нему книги, документации. И читай их, практикуйся.

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

P.S.: Если выберешь веб, то не вздумай изучать php и портить свою психику. А то потом придётся долго переучиваться на нормальный язык.

th3m3 ★★★★★
()
Ответ на: комментарий от th3m3

Сначала выбираешь область, в какой хочешь развиваться.

хочу писать «вирусные» игры и проги для магазина виндовз и продать их на миллионы, что читать?

anonymous
()
Ответ на: комментарий от anonymous

хочу писать «вирусные» игры и проги для магазина виндовз и продать их на миллионы, что читать?

Вероятно, нужно начать с книг по C#. И валить отсюдова!

th3m3 ★★★★★
()
Последнее исправление: th3m3 (всего исправлений: 1)
Ответ на: комментарий от anonymous

Совсем нет. У меня уже есть несколько идей, которые хочется реализовать. И это только мои идеи, дальше для практики планирую работать с заказами.

Но для того, чтобы что-то делать, нужно что-то знать.

KrasnoGlazik
() автор топика

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

Уважаемые, а как вы относитесь к языку с++? Знаю, что многие его не любят, но почему?

KrasnoGlazik
() автор топика
Ответ на: комментарий от JacobTwoTwo

А теоретикам будешь смеяться в лицо: пока мой код уже работает

Кек. Видимо индусы, с которыми мне приходится контактировать по удаленке мыслили так же как ты. Их код превращается в нечитаемое говно, которое они сами не в состоянии поддерживать, через пару тысяч строк.

Aswed ★★★★★
()
Ответ на: комментарий от Aswed

Это от недостатка практики. Код хардкорных теоретиков часто бывает нечитаемым говном с самого начала. Передавай привет Александреску.

JacobTwoTwo
()
Ответ на: комментарий от JacobTwoTwo

Передавай привет Александреску

Справедливо. Однако, если перед практикой почитать про чужие грабли, то путь по своим будет гораздо короче.

Aswed ★★★★★
()
Ответ на: комментарий от anonymous

Без понятия. Я не увлекаюсь технологиями мелкомягких.

th3m3 ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.