Способ поймать до современных методов программирования

Контейнеры STL должны быть в состоянии скопировать объекты, которые Вы храните в них и разработаны, чтобы ожидать, что оригинал и копия будут эквивалентны. автоматические объекты указателя имеют совершенно другой контракт, посредством чего копирование создает передачу права собственности. Это означает, что контейнеры auto_ptr покажут странное поведение, в зависимости от использования.

существует подробное описание того, что может пойти не так, как надо в Эффективном STL (Scott Meyers) объект 8 и также not-so-detailed описание в Эффективном C++ (Scott Meyers) объект 13.

12
задан Damion Lee 30 April 2012 в 09:35
поделиться

8 ответов

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

Большинство программистов пишут свое мнение, свое мнение и так далее. Вы можете МНОГОЕ узнать, просто читая, что делают другие, и отфильтровывая то, что вам нравится или кажется интересным, а что нет. Книги полезны, но с 23-летним опытом и просто желанием быть в курсе ... Я бы рекомендовал блоги ...

Некоторые блоги, которые я читал:

Stackoverflow - тоже отличный ресурс. Не только для поиска ответов на свои проблемы, но и для чтения ответов на другие проблемы . Серьезно, я Я обнаружил, что в последнее время много раз цитирую какой-то ответ из stackoverflow ... или применяю кое-что, что я здесь видел.

Как бы то ни было, быть в курсе текущих тенденций (таких как TDD или Aspect Oriented Programming) - это как быть в курсе самого мира. Вы встаете утром и читаете газету, может быть, только заголовки, а затем что-нибудь конкретное, около 5 или 10 минут. Затем вы читаете статьи, которые кажетесь вам интересными, но в некоторой степени осознаёте самые важные происходящие события. Это то же самое, но эти блоги (и некоторые другие) - ваша газета в мире программирования.

быть в курсе текущих тенденций (таких как TDD или аспектно-ориентированное программирование) - все равно что быть в курсе самого мира. Вы встаете утром и читаете газету, может быть, только заголовки, а затем что-нибудь конкретное, около 5 или 10 минут. Затем вы читаете статьи, которые кажетесь вам интересными, но в некоторой степени осознаёте самое важное, что происходит. Это то же самое, но эти блоги (и некоторые другие) - ваша газета в мире программирования.

быть в курсе текущих тенденций (таких как TDD или аспектно-ориентированное программирование) - все равно что быть в курсе самого мира. Вы встаете утром и читаете газету, может быть, только заголовки, а затем что-нибудь конкретное, около 5 или 10 минут. Затем вы читаете статьи, которые кажетесь вам интересными, но в некоторой степени осознаёте самые важные происходящие события. Это то же самое, но эти блоги (и некоторые другие) - ваша газета в мире программирования.

13
ответ дан 2 December 2019 в 03:54
поделиться

Прочтите новые книги по программированию, например, Прагматичный программист . В этой книге рассказывается о программировании с использованием современных инструментов, идиомах, методах и т. Д.

The Pragmatic Programmer

11
ответ дан 2 December 2019 в 03:54
поделиться

Многие «новые» концепции на самом деле не новы. Например, большинство «современных» языковых функций унаследованы от ранних функциональных языков. Такие методы, как TDD и Agile, - это просто систематизация вещей, которые делались в течение долгого времени, возможно, не в мейнстриме. Да и сами по себе их не сложно понять.

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

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

Для языковых вещей это, вероятно, проще, потому что вы можно вернуться, например, к Lisp и найдите концепции, объясненные в терминах того, что было знакомо в 60-х годах и раньше! (конечно, вы также можете найти более свежие статьи).

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

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

4
ответ дан 2 December 2019 в 03:54
поделиться

Если все, что вам нужно, - это идти в ногу со временем, вам следует читать блоги разработчиков. Я не собираюсь давать вам обычный список блогов, потому что не думаю, что стоит полагаться на 4-7 блоггеров для получения всей вашей информации.

Раньше я объединял всех блоггеров в Google Reader и мое чтение список вырос до более чем 400 блогов. Это определенно не поможет.

Лучше посещайте такие сайты, как codebix.com, dzone.com, чтобы получить последние статьи и небольшую помощь сообщества в выборе лучших статей;).

2
ответ дан 2 December 2019 в 03:54
поделиться

Вам понадобится альтернативный подход к темам. Я нашел серию "Heads on ..." одновременно занимательной и технически обоснованной.

Взгляните на Heads on Java: http://oreilly.com/catalog/9780596009205

4
ответ дан 2 December 2019 в 03:54
поделиться

Лично я многому научился, просмотрев лекции и технические переговоры, опубликованные в Google. У них есть масса контента о программной инженерии. Очевидно, что просмотр видео - это совсем другой процесс обучения, чем чтение, но большинство людей очень умны и талантливы ораторы.

http://www.youtube.com/GoogleDevelopers

http://www.youtube.com/GoogleTechTalks

2
ответ дан 2 December 2019 в 03:54
поделиться
1
ответ дан 2 December 2019 в 03:54
поделиться

Похоже, ваши логические навыки программирования в порядке. Мне кажется, что лучший способ обновить свои навыки - это взять копию C # (Express бесплатен) или java (я парень .net) и преобразовать одно из ваших старых приложений, тогда вы находят реальные проблемы и смогут их решить (с помощью SO), используя «современные» методы.

Удачи.

1
ответ дан 2 December 2019 в 03:54
поделиться