LINUX.ORG.RU

Книги от работодателя

 


1

1

Нашел вакансию по с++ Рекомендуемая литература

Брюс Эккель - Философия C++; Кент Бек - Экстремальное программирование; Мартин Фаулер - Рефакторинг; Роберт Мартин - Чистый Код; Гамма Э., Хелм Р., Джонсон Р., Влиссидес Дж. - Приёмы объектно-ориентированного проектирования. Паттерны проектирования; Алан Купер - Психбольница в руках пациентов.

Стоит ли их читать или чего можете посоветовать иное

Ещё можно прочесть труд Бертрана Мейера «Объектно-ориентированное конструирование программных систем» - все концепции контрактно-ориентированного программирования с иллюстрациями на языке программирования Eiffel.

iZEN ★★★★★
()

Читать не стоит, стоит избегать! Особенно чистый код. А тех, кто ссылается на эти книги, считать глупыми сектантами. Особенно на чистый код!

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

Цель то у тебя какая?

Брюс Эккель - Философия C++;

По Жабе мужик хорошую книгу написал, должна и по плюсам быть толковой.

Кент Бек - Экстремальное программирование

Я бы не читал.

Алан Купер - Психбольница в руках пациентов.

Читал бы. Но это уже для опытных и больше про управление.

urxvt ★★★★★
()

Про «Чистый код» почитай критику, поржошь :) Мартин пеарит квадратно-гнездовой подход, который решает не везде (во многих приложениях ничего: там чем меньше прослоек, тем лучше, а потому код должен быть конкретен). Банда четырех — абстракционистскую акробатиу с птичьими именами («паттерны»). В С++ нет философии («Дизайн и эволюция» помогут понять почему получилось то что получилось, а так стандарт и Мейерс полезнее). В общем, игнорируй маркетинговый булшыт. Алгоритмы и структуры переживут всю эту пургу.

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

Это все подпорки для тех, кто кодит не приходя в сознание :) Примерно как «мойте руки, перед и зад». Чувство меры трудно формализовать, поэтому его расписывают как «не больше стольки-то методов в классе», «один класс, одна функция», потом придумывают аббервиатурки типа SOLID, в которых один кэп, а хватило бы KISS, если бы все люди одинаково достигали простоты решений. Но... сложные вещи просто не решаются, а вместо лапши из кода теперь винегреты из паттернов.

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

Почитать можешь, если есть время. Но обязательно учитывай исторический контекст «когда это появилось», потом читай критику обязательно, чтоб не воспринимать эти книжки как «святое писание» — обычно именно так это подают «одепты бестпрактисов». Но это все договорняк, над которым смеются люди, создававшие компутер саенс. Погугли как Степанов, создатель STL, стебал одептов ООП. Поймешь, чего стоит этот их SOLIDол. Это все «snake oil». Одепты «бестпрактисов» не создают бестпрактисов :) Они каргокультизмом в основном занимаются.

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

Привет thesis, нет я просто залез на вакансии а тут требования по этим книжкам почитал, по этому спрашиваю стоит ли?

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

Спасибо за внятный ответ, то есть стоит читать не кого попала а тех кто имеет авторитет как Мейер, Страуструпа, Степанов и других авторов

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

Согласен, только разве есть внятный книги по С++ на русском(перевод иногда такой ужас что я безграмотный отдыхаю), может все же английский лучше будет

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

Скорее всего под «этими книгами» имеются в виду понимание принципов структурирования кода, принципов ООП, соблюдение гайдлайнов и стайлов проекта и «современных лучших практик разработки» — возможно, на стороне работодателя есть дятел, который прочитал именно эти книги и считает себя дофига специалистом на все времена :) А С++ претендуя на вакансию нужно просто знать (он к ООП не сводится уже давно и к наворачиванию абстракций тоже — щас скорее в нем накопилась критическая масса подводных камней, т.е. надо знать где в нем происходит UB, т.е. где программист сталкивается с границами языка, и какие костыли придумали в новых версиях стандарта для затыкания этих дыр в дизайне языка: например, make_shared — экономит выделение памяти, помогает избежать утечки... фигакс, утечка уже не происходит, но вроде как экономия памяти осталась, дальше модный костыль std::launder про который можно заявить что создатели считают что если вы про него не знаете, возможно вам и не нужно про него знать) :) Когда просят рассказать про С++ обязательно спроси «вам про какой стандарт?» Разница между С++98, С++11, С++14, С++17 и грядущий С++20 — платиновые вопросы про С++. Все эти пирамиды исторических костылей создают богатое поле для «экспертов», гордящихся «зоотерическими знаниями» о превозмогании дыр в дизайне теперь уже типичного «языка разработанного комитетом».

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

Блин slackwarrior спасибо большое все описал теперь хоть буду знать на что опор делать и изучении с++

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

Вот сюда загляните.

От себя порекомендую нетленку Майерса и Саттера.

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

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

Насчёт Майерса и Свитера согласен это классика, но разве Эккель программист великий, а остальные книги в основном от Джавы, так зачем они в с++ нужны, нет что-ли с с++ кодом?

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

Извини по интересуюсь а «совершенно код» книжка получше будет чем чистый код

Все это уже устарело, ищи книжки где написано «новый, улучшенный, совершенно чистый код с добавлением серебра».

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

Ну там типа загон про «общие принципы», претендующие на универсальность :) Просто с джавой при этом многословие и простыни импортов. А квадратно-гнездовое соблюдение принципа «не повторения кода» приводит к тому что десяток пустых методов вызывает друг друга, а где происходит «работа алгоритмов» — искать глазами уныло. Еще идолопоклонники обожают нечитабельные VERY_LONG_VERY_OBVIOUS_NAME_FOR_CONSTANT, объявляют константы для того что никогда не может измениться и т.д. А если взять какой-нибудь сэндбокс в облаке зарезанный по памяти и процессорному времени — вся эта абстракционистская шелуха летит в помойку. Минимум прослоек, код только по делу :) В эмбеде та же фигня. И никакой универсальности не получается.

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

Ну смотри. О чем эта книга? И кто автор? :)

У автора в загашнике как программиста — Visual Basic. Ну ок. Хотя для кого-то довольно сомнительное достижение. Чувак из майкрософт. «Гуд инаф софтвер» (с) «Ембрейс, экстенд & экстингвиш» (обнять, расширить, потушить) и прочие сомнительные бизнес-практики. Они нас учат хорошему? Ну... продавать они умеют. Для них это хорошо. А ты продавать учиться хочешь?

Аннотация: «Эй, ребята, у вас тут полно обозленных клиентов. Вам есть что им ответить»

О чем это? Это про что? Это для чего? Для важных переговоров? Это мало связано с задачами программистов. Программист может выступать как технический консультант или эксперт, но это... ползучее перекладываение ответственности («делегирование») специально обученными менеджерами по сути ихних обязанностей.

Далее.

«Как и разработка лекарственных препаратов, разработка ПО совсем не похожа на строительство завода. Завод – физический актив, который принадлежит компании, а работников завода, как правило, легко заменить другими. Неосязаемые, но невероятно сложные паттерны мыслей, составляющие программное обеспечение, обладают ценностьютолько вместе с написавшим код программистом. Ниодна компания не может себепозволить относиться к программистамтак же, как к заводу. Программисты требуют постоянного внимания и поддержки, причем гораздо большей, чем любой завод.» (с) Тут кэп перемешан со странными утверждениями. Акынство — признак воды. Очевидное невероятное не добавляет новых знаний, оно очевидно. А если вся книга из кэпа состоит? А про завод... При мне несколько ойтишных менеджеров пытались рассуждать про завод. Ничего они не знают про завод. И этот не знает. Невозможно «просто» заменить хорошего инженера. Программисты не что-то особенное.

Такие книги бывает прикольно читать, если они резонируют с неким опытом. Но нужно все время стряхивать с ушей. Т.к. дядя консультант и бизнес-гура, а гуруют обычно о чем? Об успешном успехе. Вспоминая бейсик — может быть главным успехом дяди как консультанта является... торговля книгами про успешный успех.

«Продайте мне эту ручку» — это не то чем занимаются программисты.

Дядя говорит «Я занимался изобретением и разработкой программных продуктов двадцать пять лет.» (с)

Ну, разница между «программой» и «программным продуктом» (ТМ) это как... между кефиром и «кефирным продуктом». Осторожно, маркетинговый булшыт :)

«Долгие годы проблема запутанного программного обеспечения не давала мне покоя, пока, наконец, в 1992 году я не оставил программирование, чтобы полностью посвятить себя компаниям-разработчикам, помогая им делать их программные продукты приятнее и проще в применении.» (С) Это мне напоминает одну «школу архитекторов» внутри одной международной компании, которая походила на секту. (Каждая компания, если выживает и выходит на IPO, дорастает до такого размера, что в ней начинают плодиться тусовки по интересам, создаваемые гиперактивными имитаторами бурной деятельности). Меня туда собеседвал один ихний гура. Мы с ним резко не сошлись во мнениях, т.к. я спалил его на «боевом НЛП» сектантов, объяснив ему на пальцах что вижу чем он занимается вместо собеседования (ни одного вопроса про архитектуры) и эти прыжки веры (а почему ты хочешь? и «угадай какой ответ я задумал?») и игры в «купи слона» мне не нужны. Это методы обработки клиента цыганкой... или сектантом. Их «коллег» поэтому щас называют «инфоцыганами». Я потом погуглил про ихнего «гуру»: «Я оставил производство когда мой ресурсный пул достиг 50 человек, чтоб посвятить себя их развитию. В итоге я руковожу школой архитекторов на 20%». Т.е. он не только не архитектор (где посмотреть архитектуры? Почему он на собесе не про архитектуры вообще разговаривал ни разу?) — а банальный кадровик, т.к. занимается подбором персонала («пул ресурсов») и «на 20% руководит школой» (т.е. школа вообще на отвали). А в «школе» той они барыжили «секретной книжкой по архитектуре», которую я нагуглил за 15 минут и бесплатно скачал.

Разница в том что они говорят и как это звучит в свете известных о них фактах (их делах). Чувак из майкрософт запилил бейсик. А потом «ушел с производства и консультировал». Не умеешь сам, учи других :) Ну ок.

Опять же. Что эта книга такое? Сборник бизнес-баек? Это не забота программистов торговать софтом, как бы менеджерам не хотелось и это «делегировать». Пусть и зарплату тогда делегируют :)

Рациональные зерна можно и в таких книгах искать. Только не забывай стряхивать с ушей и если на заборе написно «Виктор Цой», за забором может быть не то что ты ожидаешь :) Критическое мышление (книги по его развитию) — вот это работодатели редко советуют. Т.к. им тоже будет труднее тебе приседать на уши.

Мне «Мифический человекомесяц» Брукса зашел больше. Т.к. сосредотачивается на организации процесса разработки и не грузит этой продаванской фигней.

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

Когда просят рассказать про С++ обязательно спроси «вам про какой стандарт?»

Так, а когда полотенце под ноги кинут - что делать?

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

Но у меня Z-problem, а цель проста, есть вакансия, к ней критерии, книгам даны, вопрос а зачем имено эти книги, почему не Прата почему не Лафоре почему не Липпман, почему не Страуструп. Но почему именно Эккель и дальше по списку по язык Джавад, если вакансия на с++

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

Спасибо, хоть резон и понятие появилось, особенно по книги «Мифический человекомесяц» Теперь хоть еë изучу чем их предложение

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

Алан Купер - Психбольница в руках пациентов

Хорошая книга, которая даёт понимание, что такое нормальный человеческий интерфейс, а не интерфейс, созданный программистами.

alex1101
()

Стоит ли их читать

Это хорошие книжки. Стоит ли их читать тебе, или нет, можешь знать только ты.

вопрос а зачем имено эти книги

Это книги которые обязан прочитать любой архитектор, или хотя бы сеньор. Не только С++, а вообще. Возможно работодатель намекает, что ты должен соответствовать. Но если это вакансия для джуна, то работодатель сноб или идиот (или оба два).

no-such-file ★★★★★
()
Последнее исправление: no-such-file (всего исправлений: 1)
Ответ на: комментарий от no-such-file

Не спорю требования по опыту не каких, что и настораживает

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

Хорошо а другие книги по Даной теми интересно есть и чем они плохи?

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

Заинтриговали, пошел смотреть про «Чистый код». Увидел пример с простыми числами, теперь не могу развидеть. Вы сделали мой день!

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

По бестпрактисам можно тоже приготовить отличное спагетти :) только из бестпрактисов. Тут https://dev.to/codemouse92/clean-dry-solid-spaghetti-1lgm еще стебутся над квадратно-гнездовым применением DRY, SOLID и TDD.

slackwarrior ★★★★★
()
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)