Здравствуйте, Pzz, Вы писали:
G>>Книги такие: G>>По языку C: G>>"Язык программирования Си" Кернигана и Ритчи — описание языка
Pzz>Си, всё же, очень далеко ушел от K&R — и сам язык, и общепринятые подходы, идеомы языка, стандартная библиотека...
Ну те книги по современному C и C++ страдают от фундаментального описания. Поэтому считаю, что начать надо именно с книг авторов самих языков.
G>>По языку С++: G>>Книги Страуструпа
Pzz>А C++ очень далеко ушел от Страуса...
Согласен, но мы же говорим про основны и фундамент, а не про современные веяния.
G>>И какие-нибудь прикладные книги, которые показывают где именно и как применяется язык С/С++, например: G>>"Занимательная электроника" Ревича
Pzz>А почему не Хоровиц и Хилл?
Не читал, не знаю
G>>По алгоритмам: G>>Книги Скены, Лафоре — маст хэв
Pzz>А почему не Дейкстра?
На мой взгляд, слишком академично. Семена и Лафоре соблюдают баланс между академичностью и практичностью.
G>>По ИБ и прикладной криптографии: G>>Книги Шнайера
Pzz>Это как начинать учить математику сразу с теории функций комплексных переменных, пропустив элементарную алгебру.
Шнайер это же как раз баланс между академичностью и практичностью.
G>>По линуксу (потому что именно на юниксовых операционках часто работают С-шные программы, всякие ардуины и прочие железячные ОС): G>>Внутреннее устройство Linux
Pzz>По линуху трудно. Книги устаревают быстрее, чем успеваешь их дочитать до конца. Лучше быть как-то погруженным в опенсорсное движение, но не могу подсказать алгоритм, как новичку без опыта туда погрузиться.
Я вроде как советовал фундаментальные вещи. Командная строка, POSIX, vim, tmux — это десятилетиями не меняется.
G>>Книги по VIM и TMUX как редактору и мультиплексору, где в принципе неплохо можно разрабатывать на C (будешь ли использовать VIM — это другой вопрос, но знать этот редактор должен любой айтишник, т.к. он по дефолту стоит на большинстве Линуксовых серверов, а работать с SSH лучше сразу учиться с TMUX)
Pzz>Чистая вкусовщина ИМХО.
Ну да, это моя вкусовщина, советую только из того, с чем сам работал. За 100% эффективность моих советов не ручаюсь, более того, уверен, что тс проигнорирует мои книги и пойдет своим путем, скорее всего хипстерским. Через 10 лет пусть тут отпишется.
Re[6]: Без чего бы вы не смогли сейчас выполнять свою работу
Здравствуйте, gyraboo, Вы писали:
Pzz>>Си, всё же, очень далеко ушел от K&R — и сам язык, и общепринятые подходы, идеомы языка, стандартная библиотека...
G>Ну те книги по современному C и C++ страдают от фундаментального описания. Поэтому считаю, что начать надо именно с книг авторов самих языков.
Тогда уж лучше с Go начинать. Язык современный, авторы плюс-минус те же.
Pzz>>А C++ очень далеко ушел от Страуса...
G>Согласен, но мы же говорим про основны и фундамент, а не про современные веяния.
Очень изменились идеоматические подходы к использованию.
Pzz>>А почему не Дейкстра?
G>На мой взгляд, слишком академично. Семена и Лафоре соблюдают баланс между академичностью и практичностью.
Ну не знаю. Дейкстра едок и остроумен, его интересно читать.
G>Шнайер это же как раз баланс между академичностью и практичностью.
Ну там просто проблематика сама слишком уж далека от начального уровня, как ее не излагай.
Pzz>>По линуху трудно. Книги устаревают быстрее, чем успеваешь их дочитать до конца. Лучше быть как-то погруженным в опенсорсное движение, но не могу подсказать алгоритм, как новичку без опыта туда погрузиться.
G>Я вроде как советовал фундаментальные вещи. Командная строка, POSIX, vim, tmux — это десятилетиями не меняется.
Я в UNIX со времен еще SCO и Interactive UNIX. Но вот tmux-ом как-то никогда не пользовался
Re[7]: Без чего бы вы не смогли сейчас выполнять свою работу
G>>"Язык программирования Си" Кернигана и Ритчи — описание языка
Pzz>Си, всё же, очень далеко ушел от K&R — и сам язык, и общепринятые подходы, идеомы языка, стандартная библиотека...
Вот я тоже так думаю. Для освежения знаний по Си взял книжку 2015 года издания (ссылка).
Её можно найти в epub, т.е. это не ч/б скан с OCR, а полноценный цветной e-book с подсветкой синтаксиса в примерах.
Re[7]: Без чего бы вы не смогли сейчас выполнять свою работу
Здравствуйте, Pzz, Вы писали:
G>>Я вроде как советовал фундаментальные вещи. Командная строка, POSIX, vim, tmux — это десятилетиями не меняется.
Pzz>Я в UNIX со времен еще SCO и Interactive UNIX. Но вот tmux-ом как-то никогда не пользовался
Предлагаю это срочно исправить. Tmux — прекрасный инструмент, не только в плане восстановления сессии или много-оконности ssh-терминала, но и даёт доп. фишки, например, удобный нечёткий поиск и вставку любого текста из терминала в текущую командную строку, кейс использования описан тут: https://rsdn.org/forum/unix/7771866?tree=tree
Здравствуйте, gyraboo, Вы писали:
G>Здравствуйте, Aqwa, Вы писали:
G>>>Есть хорошая цитата какого-то писателя: "Если можешь не писать, не пиши", т.е. если тебе натужно программировать, не программируй.
A>>cпасибо,возьму на заметку
G>Если по делу, то я полагаю, что книги — лучший источник знаний по программированию. Т.к. учат мыслить, глубоко прорабатывают материал. G>Если интересует именно С — это же низкоуровневое программирование, т.е. на этом языке разрабатывается системный софт — операционки, системные утилиты линукса, обработка сигналов и т.д. G>Книги такие: G>По языку C: G>"Язык программирования Си" Кернигана и Ритчи — описание языка
G>По языку С++: G>Книги Страуструпа
G>И какие-нибудь прикладные книги, которые показывают где именно и как применяется язык С/С++, например: G>"Занимательная электроника" Ревича
G>По алгоритмам: G>Книги Скены, Лафоре — маст хэв
G>По ИБ и прикладной криптографии: G>Книги Шнайера
G>По линуксу (потому что именно на юниксовых операционках часто работают С-шные программы, всякие ардуины и прочие железячные ОС): G>Внутреннее устройство Linux G>Командная строка Линукс G>Таненбаум "Операционные Системы" G>Книги по POSIX G>Книги по VIM и TMUX как редактору и мультиплексору, где в принципе неплохо можно разрабатывать на C (будешь ли использовать VIM — это другой вопрос, но знать этот редактор должен любой айтишник, т.к. он по дефолту стоит на большинстве Линуксовых серверов, а работать с SSH лучше сразу учиться с TMUX)
G>В общем начать можно с этих книг. Никакой институт тебе к сожалению нужный объем знаний не привьёт, в том числе и никакие курсы (во многих компаниях к выпускникам ИТ-курсов вообще питается недоверие на собесах), книги и только книги в первую очередь дадут фундаментальные знания.
G>Ноя вот лично считаю что на C/C++ тяжело заниматься именно творчеством, слишком много эти языки тащат системной специфики. Для творчества больше подходит например Lazarus, в нем на паскале можно быстро создавать программы. G>А если больше интересует творчество типа "стартапы", то тут нужно ориентироваться не на системного программиста на С, а на фулстэка, например на стэке фронт React/ бэкэнд Java. Java как язык наверное один из самых популярных в мире по хорошо оплачиваемой удаленке. Питон по популярности обгоняет Джаву, но я бы не советовал Питон, этот язык плохо подходит для разработки, он больше для интеграций с ИИ.
Годный совет , благодарю, нужно будет только найти хорошую книгу , переведенную на родной язык, большинство ,что я сёрчил чаще всего на англе
Re[2]: Без чего бы вы не смогли сейчас выполнять свою работу?
Здравствуйте, sergii.p, Вы писали:
SP>Здравствуйте, Aqwa, Вы писали:
A>>я бы хотел изучить язык с++, но я совсем не понимаю азов и с чего стоило бы начать
SP>без конкретного вопроса не будет конкретного ответа. Придумай задачу, опиши её здесь и тебе расскажут как её сделать на С++.
окей, обусловим , что я нуждаюсь в боте , который будет выполнять зацикленное действие , я пытался это сделать , но постоянно возникали проблемы , например с тем , что скорость объекта менялась по мере выполнения задачи , так что первая запись действий отваливалась , так как из-за скорости менялось и время , то есть объект , перемещаясь по траектории , терял ее , из за того что скорость сбивалась и сообственно он поворачивал не там, я попытался подключить библиотеку , которая бы использовала изображения на экране в кач-ве чекпойнта и ориентиров, но из за того что на объектах появлялись тени и со сменной дня и ночи менялась яркасть , эта параша не работала так как мне надо , у меня в моменте чет подгорело даже , и я чет думаю , даже если бы не было смены картинки , то при виде нее бот бы автоматом выполнял действие , связанное с появлением объекта , такое чувство что проще купить подобного бота, но я хочу все таки сделать его пока что сам , но идей нет , мне нужно доставить объект А в точку Б по заданной траектории , не придавая значения строгим таймингам , учитывая то , что картинка меняется , и скорость объекта переносящего хаотична. Если есть идеи я был бы неимоверно счастлив!Потому что я обратился даже к знакомому , который не плохо знаком с питоном и библиотеками скриптовыми для ботов , он помочь не смог
Re: Без чего бы вы не смогли сейчас выполнять свою работу?
Здравствуйте, Aqwa, Вы писали:
A>ЗДравствуйте , я не совсем уверен, правильный ли раздел я выбрал , но попытаюсь изложить вопрос наиболее понятным языком. Мне 17 и я решил связать свою жизнь с программированием
Если решил связать свою жизнь с программированием, то нужно думать не о языке программирования, а о базовых принципах программирования. Которые одинаковы для всех языков.
Для начинающих рекомендовал бы осиливать различные парадигмы программирования. Как минимум 2 — ООП и функциональное, желательно проникнуться все же декларативностью. И выбирать под это оптимальный язык, именно С++ для начинающих далеко не лучший выбор — покалечит психику скорее всего конкретно.
Также проникнуться базовыми алгоритмами крайне желательно.
Также крайне желательно максимально прокачать английский. Минимальный уровень — это свободное чтение технической документации, крайне желательно хоть как то, но быть в состоянии проходить собеседования на английском.
Говорю это как крайне помешанный на программировании в школьном возрасте провинциал в прошлом. Тогда мне блин подсказать некому было, с книжками тоже проблемы были, про интернет молчу.
Крайне бы сейчас рекомендовал бы всем начинающим начинать со Стендфорских курсов cs 106a cs 106b для начала, cs 107, для постановки мозгов, а далее уже специализация до всего до чего можешь дотянуться. Плюс базовые алгоритмы. Отдельно крайне желателен для нормальных новичков курс SICP, можешь книгу, есть до хрена непосредственно видеокурсов. Приличные ВУЗы вроде как даже российские это преподают, хоть и таких выпускников крайне мало. Плюс для закрепления подобные вводные курсы от других ведущих университетов. А далее можно как угодно углубляться куда угодно, хоть в сети, хоть в робототехнику, хоть в операционные системы, хоть в нейросети, математику, компьютерное зрение и все такое. Сначала максимум вширь, как поймешь что цепляет лучше — идешь вглубь.
Далее уже проникнешься, поймешь что у тебя идет хорошо, что нет, поймешь сам у себя сильные и слабые стороны. И сможешь уже думать о специализации и о языке. И даже если пойдешь за деньгами в 1С, из которого нет выхода, базовая подготовка поможет во первых достичь даже в 1С успеха, а во вторых при наличии кругозора в теории будет возможность сделать невозможное — слезть с 1С, в который влезал ради денег. Если ты из провинции, то у тебя все вакансии будут 1С в основном, от этого рекомендовал бы держаться подальше, хоть и соблазн велик. И из провинции лучше всеж если реально увлечен программированием и все такое — валить во всякие Москвы. Попадешь если в нормальную контору, которая будет по рукам бить первое время — далее уже твое будущее достаточно обеспеченное, в случае если сможешь себя хорошо проявить, а не тупо на расслабоне делать что тебе скажут. Если 17 лет — время есть еще и много. Главное мозги чтоб были, но тут от тебя мало зависит, они сразу либо есть, либо нет.
Re: Без чего бы вы не смогли сейчас выполнять свою работу?
Здравствуйте, Aqwa, Вы писали:
A>ЗДравствуйте , я не совсем уверен, правильный ли раздел я выбрал , но попытаюсь изложить вопрос наиболее понятным языком. Мне 17 и я решил связать свою жизнь с программированием, мне нравится возможность удаленной работы , творчества и того,что это связанно с технологиями, я бы хотел изучить язык с++, но я совсем не понимаю азов и с чего стоило бы начать,в интернете я искал курсы на английском и русском, но на английском языке частенько я не могу уловить информацию целиком в силу своих знаний.Русские же сайты мне ясны,но информация там не сильно что бы помогала мне писать код. Я бы хотел узнать , без чего бы вы не смогли сейчас выполнять свою работу,т.е. быть программистами, это поможет мне узнать ключевые навыки и начать их изучение, что,возможно,даст мне возможность лучше понять программирование.Если у вас есть иные советы, я бы был также рад их услышать,спасибо,если вдруг я забуду про форум, мой дискорд: aqwar , или же вы можете связаться со мной по почте stanislavmartuhin@gmail.com. Спасибо.
Погоди, а как ты сумел зарегистрироваться на этом форуме?
Почта же не работает?
Без чего было бы очень трудно работать:
— Без пальцев (без рук тем более)
— Без глаз
Re[2]: Без чего бы вы не смогли сейчас выполнять свою работу?
Здравствуйте, Aqwa, Вы писали:
A>я бы хотел изучить язык с++
Супер, С++ — лучший, даёт полную свободу действий! Не слушай никого, что С++ умирает и т.п. чушь.
Однако, азы программирования лучше изучать на чём-нибудь попроще, сейчас это наверное С#. Начни с него, думаю и образовательного материала в сети по нему на порядок больше.
Лучше, конечно, получить профильное высшее образование, там дадут хороший фундамент.
Да, поставь себе линукс, если ещё нет. Тру С++ — это кроссплатформ
Центр ИПсО Сил Специальных Операций
Re[2]: Без чего бы вы не смогли сейчас выполнять свою работу?
Здравствуйте, bnk, Вы писали:
bnk>Здравствуйте, Aqwa, Вы писали:
A>>ЗДравствуйте , я не совсем уверен, правильный ли раздел я выбрал , но попытаюсь изложить вопрос наиболее понятным языком. Мне 17 и я решил связать свою жизнь с программированием, мне нравится возможность удаленной работы , творчества и того,что это связанно с технологиями, я бы хотел изучить язык с++, но я совсем не понимаю азов и с чего стоило бы начать,в интернете я искал курсы на английском и русском, но на английском языке частенько я не могу уловить информацию целиком в силу своих знаний.Русские же сайты мне ясны,но информация там не сильно что бы помогала мне писать код. Я бы хотел узнать , без чего бы вы не смогли сейчас выполнять свою работу,т.е. быть программистами, это поможет мне узнать ключевые навыки и начать их изучение, что,возможно,даст мне возможность лучше понять программирование.Если у вас есть иные советы, я бы был также рад их услышать,спасибо,если вдруг я забуду про форум, мой дискорд: aqwar , или же вы можете связаться со мной по почте stanislavmartuhin@gmail.com. Спасибо.
bnk>Погоди, а как ты сумел зарегистрироваться на этом форуме? bnk>Почта же не работает?
bnk>Без чего было бы очень трудно работать: bnk>- Без пальцев (без рук тем более) bnk>- Без глаз
Ну,да, почта действительно не работала,я и сам не понял как аккаунт зарегистрировал
Re[3]: Без чего бы вы не смогли сейчас выполнять свою работу?
Здравствуйте, Нomunculus, Вы писали:
Н>Здравствуйте, tapatoon, Вы писали:
T>>сейчас это наверное С#.
Н>Нет, питон. На нем введение в реализацию алгоритмов и структуры данных сейчас изучают. Н>Вот он уж реально кросс.
Н>Правда тут надо сразу объяснять разницу между компилятором и интерпретатором
Разницу я к счастью знаю, я вродь говорил , что читал курсы по плюсам переведенные , там объясняются основы программирования , но не как писать код ,что мне и интересно,без них конечно никуда, но там их ну уж больно много, 90 к 10 по процентажу
Re[3]: Без чего бы вы не смогли сейчас выполнять свою работу?
Здравствуйте, Нomunculus, Вы писали:
Н>Здравствуйте, tapatoon, Вы писали:
T>>сейчас это наверное С#.
Н>Нет, питон. На нем введение в реализацию алгоритмов и структуры данных сейчас изучают. Н>Вот он уж реально кросс.
Н>Правда тут надо сразу объяснять разницу между компилятором и интерпретатором
а питон вообще не плох скорей всего, мне дядя советовал его как первый легкий язык.
Re[5]: Без чего бы вы не смогли сейчас выполнять свою работу
Здравствуйте, Aqwa, Вы писали:
A>Годный совет , благодарю, нужно будет только найти хорошую книгу , переведенную на родной язык, большинство ,что я сёрчил чаще всего на англе
программирование требует обязательного знания хотя-бы технического английского на уровне читаю и понимаю, учи язык.
Re[4]: Без чего бы вы не смогли сейчас выполнять свою работу?
Здравствуйте, Aqwa, Вы писали:
A>а питон вообще не плох скорей всего, мне дядя советовал его как первый легкий язык.
Лучше уж Go, питон это скриптовый язык, который пихают куда попало непонятно почему. В питоне нет строгой типизации, это интерпретируемый язык поэтому отлаживаться сложнее. Да и синтаксис с отступами это ересь. А в гошке компилятор не даст сделать откровенной фигни, подскажет, где ошибка.