Подтвердить что ты не робот

Разработка в качестве программиста

Я изучаю С++ уже три месяца и за это время создал несколько приложений для своей компании. Я считаю себя довольно комфортно с С++/MFC и STL, однако я не просто хочу быть программистом OK, я хочу быть хорошим программистом. У меня есть несколько книг о лучших практиках, но мне было интересно, может ли кто-нибудь предлагать материалы для чтения, которые помогли им и любые дисциплины, которые следует поощрять?

Спасибо!

4b9b3361

Ответ 4

3 месяца в С++, и вам уже удобно с ним? Sheesh, я уже более года изучаю С# и занимаюсь многочисленными курсами Microsoft, и мне это не нравится.

Как говорится, вы услышите Code Complete, брошенный как очень хорошая книга. Сейчас я читаю его.

Ответ 6

Разработка крупномасштабного программного обеспечения на С++ от John Lakos дает рекомендации по методам проектирования, которые сделают ваш С++ более удобным. Это довольно здорово, но вы можете погрузиться и по-прежнему получать некоторые преимущества.

Ответ 7

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

  • Threading. Этот вариант не очень востребован, если вы используете MFC, но во многих других областях он незаменим. Механизму API-интерфейсов с резьбой легко подбирать, но изучение всех угловых случаев требует много времени и практики.

  • Завершения, Map-Reduce и другие lisp -подобные методы. Узнайте, что они собой представляют, почему они не поддерживаются на С++ и как имитируются на С++ (функторы и многие другие случаи объектов с обратным вызовом). Для этого у меня действительно есть книга: "Структура и интерпретация компьютерных программ".

  • Командная строка. Это дает вам представление о том, когда вы не кодируете свои собственные программы. Командная строка - это командная строка Unix. Я не знаю о последних экспериментах MS в этом, но cmd.exe ужасен. Получите Cygwin и начните экспериментировать.

  • Языки скриптов. Это дает вам представление о том, когда не программа на С++. Мой любимый Perl, но многие люди говорят Python, Ruby и еще много чего. Эй, изучите XSLT, если вы так склонны!

Я уверен, что я оставил другие области. Я отмечу это как Community Wiki - не стесняйтесь добавлять.

Ответ 9

Я прочитал несколько (не полных, но некоторых частей) книг по рудинам на VB.net, они неплохие, но если вы хотите быть профессионалом и иметь время... Вы можете опробовать форумы MSDN, помочь другим людям и обсудить с ними сложные и сложные проблемы, я думаю, что это лучший способ.

Ответ 10

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

Я бы советовал Lua, Scheme и Python. но почти все остальное. (самый отличный от C, лучший)

Ответ 11

Josuttis и Vandevoorde - Шаблоны: Полное руководство

Ответ 12

Как я вижу, никто не упомянул блестящие книги Брюса Эккеля "Думая на С++". ИМХО, это одна из лучших книг, с которой можно начать разработку на С++. С моей точки зрения, первый том более полезен, а второй, но оба они заслуживают внимания. http://www.amazon.com/Thinking-C-Introduction-Standard-One/dp/0139798099/ref=pd_bbs_sr_1?ie=UTF8&s= книги & QID = 1227890306 & ср = 8-1

Ответ 13

Я много людей могу предложить более современные, современные книги. Но я по-прежнему рекомендую "Аннотированное справочное руководство по С++" Маргарет А. Эллис и Бьярн Страуструп.

ARM был опубликован еще в 90-х. Это несколько устарело в отношении шаблонов. STL (очевидно) отсутствует. (Хотя сайт на sgi.com отлично справляется с STL!)

Тем не менее, ARM является грязной дешевой (используется). (Доставка превысит стоимость книги.) Отношение сигнал/шум остается за пределами шкалы. Это очень хорошо прикопать к грязным областям С++, объясняя, что было сделано и почему.

Я все еще использую его как ссылку. Я оцениваю его там K & R.

Ответ 14

Dietel/Dietel "Как программировать С++"... У меня все еще есть эта книга на моем столе (10 лет). Время от времени я перечитываю главу. Я бы определенно получил код Complete, как другие предложили. Infact прочитал это первым.

Ответ 15

Чтобы лучше понять ориентацию объектов, проведите некоторое время в Smalltalk. Squeak - бесплатная загрузка. Затем читайте "Образцы программного обеспечения" Ричарда П. Габриэля, после чего его объекты сработали.

Ответ 16

Мышление в С++ - Брюс Экель Symfonia С++ Standard - Jerzy Grębosz

Ответ 17

Если вы ничего не делаете, программа.

Когда вы не делаете этого, читайте о программировании, и когда что-то поражает вас как интересное, переходите к реализации чего-то с этим знанием. Я обнаружил, что это единственный способ действительно установить принципы.

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

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

Ответ 18

Вы можете проверить библиотеку Boost и ряд книг, написанных об этом. Хотя это, возможно, и не то, что вы имели в виду, IMO, библиотеки Boost являются примерами хорошо продуманных современных библиотек С++, которые используют особенности языка в значительной степени, как они должны использоваться для создания среди наиболее эффективных решений для их проблемной области. Конечно, есть такие необычные библиотеки, как препроцессор и MPL, которые заставляют вас задаться вопросом, будете ли вы когда-нибудь использовать их, но все они неплохие. По собственному опыту изучение библиотеки и ее литературы дало мне представление о том, как эффективно использовать С++.

Boost Вне стандартной библиотеки С++: введение в Boost