LINUX.ORG.RU

<<Университетский>> краткий курс программирования

 ,


0

1

Инженер по специальности, программированием ранее не увлекался, в ВУЗе знаний по этой теме дали очень мало.

Начал сейчас кодить простые вещи на python (аналитически описал геометрию и пытаюсь оптимизировать параметры для получения нужного результата) и почитываю краем глаза Development. Теперь стало интересно.

Учиться чисто по книжке не умею, мне нужно найти задачу, для решения которой нужно учить что-то новое и тогда процесс идёт легко.

В общем, ищу книжку по основам программирования – алгоритмы, работа с памятью, работа с процессором, принципы ООП, принципы ФП, etc. Язык, наверно, лучше английский, так будет проще изучать, чем держать в голове и термин и его перевод.

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

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

XMs ★★★★★ ()

Выбрать питон. Хотеть книгу по работе с памятью, по алгоритмам, по ООП, по ФП, по работе с процессором, да ещё на английском. Вопрошать об этом на Лоре.

Далеко пойдете, молодой человек.

anonymous ()

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

anonymous ()

книжку по основам программирования

В качестве обзора можешь глянуть https://www.amazon.com/Computer-Science-Distilled-Computational-Problems/dp/0... Она также есть в русском переводе.

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

no-such-file ★★★★★ ()
Последнее исправление: no-such-file (всего исправлений: 2)

Если нет предрассудков к Паскалю, посоветую Столярова - " Программирование: введение в профессию"

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

Курсера - бесполезный хлам. Никаких плюсов относительно хорошей книги. Только время лишнее болтовня на видео занимает.

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

nand2tetris хорош, но нет никакого смысла ограничивать себя «свободными» книгами, когда есть бесплатные. Man libgen.

anonymous ()

Через один язык ООП и ФП не освоишь. Тут надо C++ и Haskell. Какой-то ultimate книги в природе не существует, так что придется читать много и про всё.

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

А. С. Пушкин - «Сказки для детей».

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

Парняга уже выбрал Питон, расслабься.

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

Выбрать питон.

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

Разве я написал, что буду кодить на python всю жизнь? Сейчас решаю задачу на нём для обеспечения совместимости с одной софтиной.

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

Спасибо. Надеюсь, хватит терпения на столь большую книгу, да ещё и в трёх томах.

the_real_kinik ()
Ответ на: комментарий от no-such-file

Довольно кратко всё написано. Нашёл на рутрекере бесплатно. Начну, пожалуй, с неё, а затем перейду к Столярову для более подробной информации.

the_real_kinik ()

Чтобы научиться программировать, внезапно, надо программировать. Книжка вторична, благо гугл лучшая книжка.

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

Ты сам попросил :)

Кстати, в старых книгах, зачастую, основы даются подробнее и более простым языком. Так что благодарю за ссылку. Чтива набралось на несколько месяцев теперь.

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

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

the_real_kinik ()

Не умеешь по книжкам учиться - бросай сразу. Хотя ты выбрал python, может там норма по примерам с SO кодить :3

perl5_guy ★★★★★ ()

Макконнелл - Совершенный код

NoobeR ★★★★ ()

Для начала научись угловые скобки от кавычек отличать, потом подходи. Твой уровень максимум — ПТУ. На универ пока не замахивайся. Всё.

anonymous ()

Нафиг Кнута, нафиг SICP. Это талмуды для тех у кого слишком много времени, или кто хочет глубоко копать CS.

Если нужен академический подход, но для практика, то глянь HtDP. Курсеровский Programming Languages - хорошее введение в ФП и ООП. По алгоритмам полно книг, скорее всего хватит самой тонкой для твоих запросов.

anonymous ()

Учиться чисто по книжке не умею, мне нужно найти задачу, для решения которой нужно учить что-то новое и тогда процесс идёт легко.

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

В общем, ищу книжку по основам программирования – алгоритмы, работа с памятью, работа с процессором, принципы ООП, принципы ФП, etc.

Это дофига книг, а не одна книга. И если нет ни образования, ни практического опыта, можно в этом море информации утонуть, так и не приступив к практической части. Низкоуровневое/системное и прикладное программирование - это как два разных мира, слабо друг с другом взаимодействующие (если только речь не о примитивном эмбеддед). Практичнее сразу выбрать конкретную область и забыть про другие.

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

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

Так и должно быть. Почитай книжки Столярова для начала, на ЛОРе ссылки выкладывались. А Python как первый язык - не очень хорошая идея.

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

начала научись угловые скобки от кавычек отличать, потом подходи

Это же шаблон, лошара.

no-such-file ★★★★★ ()

Учиться чисто по книжке не умею, мне нужно найти задачу, для решения которой нужно учить что-то новое и тогда процесс идёт легко.

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

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

А какой смысл сразу закапываться в ООП? Там довольно серьёзная теория стоит, ς-calculus, лучше с чего-то проще начать, с лямбдочек, например.

:DDDDDD

BRITASZKA ()

По алгоритмам и ооп у Роберта Седжвика были толстенные книги. И на Курсере были отличные курсы от него же.

По работе с памятью и работе с процессором были на Курсере и на Удачити отличные курсы по CUDA. И книги тоже есть. CUDA, потому что в ней приходится с памятью и с процессором гораздо плотнее работать и все низкоуровневые нюансы оказываются видны как на ладони.

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

Чтобы научиться программировать, внезапно, надо программировать

не поспоришь

Книжка вторична, благо гугл лучшая книжка.

зачем быдлокодеров плодишь? парень все правильно делает

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

Быдлокодер это обязательная ступень становления программистом. Именно на ней надо читать книжки. В противном случае получаются теоретики.

peregrine ★★★★★ ()

Первичный набор это SICP - это примерно как сияющий град на холме.
Там написано, как это должно работать.
Потом Crack the code Interview.
Там написано, как происходит на самом деле.
Это для общего развития.
Потом основные алгоритмы и струкутры данных.
Это как основные законы физики, на которых работает много чего. И, возможно, этого тебе хватит на 90% своих вопросов. Остальные 10% ещё надо хотя бы попробовать понять, не то что решить.

TomBOY ★★ ()

Завтра ищешь в интернете книжку Dive into python. Ничего, если ничего не поймешь. Затем идешь на python.org и изучаешь стандартную библиотеку от корки до корки. Потом зубришь, именно, блин, вызубриваешь конвенцию по написанию питоньего кода - PEP8, чтобы от зубов отскакивало. Когда напишешь свой первый генератор статических сайтов, по пути изучив верстку на html+css, скачиваешь и изучаешь любой питоний асинхронный вебсервер, рекомендую Starlette. Как переделаешь генератор статических страниц, чтобы выдавала по крайней мере 5 тысяч страниц в секунду, можешь идти дальше - тебя ждет увлекательный мир хайлоада. Apache Hadoop, сверхбыстрые асинхронные key-value хранилища, MapReduce. Зависть мамкиных борщивиков / просто неудачников или сисярп/джава-рабов не заставит себя ждать, и уже через пол года ты будешь получать такие суммы, что любая девочка будет течь при одном упоминании твоей зарплаты.

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