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

Вид: 8677|Ответ: 0

Почему ты не можешь обойтись без Stackoverflow?

[Скопировать ссылку]
Опубликовано 04.10.2016 9:30:55 | | | |
Как программист, если вы не слышали о Stackoverflow, лучше подумайте об этом. Одна из книг по программированию, которую программистам нужно читать чаще всего (на самом деле, её достаточно, чтобы оставить только для книг по программированию!). ):

(Главная страница, которую Джун сильно вставил, фото выше — пародийное изображение, некоторые пользователи этого раньше не понимали, особенно чтобы сказать)
Для тех программистов, которые ещё не читали книгу, пора купить книгу. Если вы всё ещё сомневаетесь, посмотрите эту статью, чтобы понять, почему вы не можете обойтись без StackOverflow.
Мудрость задавать вопросы
Когда вы задаёте технический вопрос, получаете ли вы полезный ответ, часто зависит от того, как вы задаёте и продолжите. —— Эрик С. Рэймонд
Иногда чёткое описание проблемы, особенно технической, не так просто, как кажется. Задавать вопросы всегда было наукой, но, к сожалению, многие этого не осознают или не уделяют этому достаточно внимания. Или некоторые спрашивающие вообще не просят о помощи. Поэтому мы найдём множество вопросов, на которые люди не могут или не хотят отвечать:
Проблема с Java regex?
Что такое время отклика SLA?
В чём разница между классами ATL и общим наследованием классов?
Чтобы избежать закрытия или изменений вышеуказанной проблемы, выложите фото здесь, чтобы испытать эту дерьмовую проблему:

Вы можете найти множество таких вопросов в неотвеченных вопросах на SegmentFault, так что многие явно не обладают мудростью или настроем задавать вопросы. Рэймонд и Рик Моэн написали классическое эссе о том, как задавать вопросы, «Умный путь» (http://www.catb.org/~esr/faqs/smart-questions.html#translations), которое было переведено на различные языки, широко распространено и доступно в китайском издании здесь. Stackoverflow и Segmentfalut также предлагают советы по вопросам:
Центр помощи > спрашивать
Как спросить
Как задать хороший вопрос?
Какие вопросы приветствуются?
На Stackoverflow слишком много классических вопросов, и мы можем научиться задавать вопросы и общаться с теми, кто отвечает. Когда вы привыкаете читать вопросы на stackoverflow, вы будете бессознательно имитировать их при задавании вопросов, тем самым избегая бессмысленных вопросов. Вот некоторые из самых важных вопросов, на которые стоит обратить внимание при задавании вопросов:
Задайте вопрос, на который поисковая система не даёт удовлетворительного ответа (Google как минимум четыре страницы назад).
Задавайте вопросы, которые не можете решить самостоятельно и которые уже много раз пробовали
Старайтесь описать проблему как можно яснее: хорошая типографика, код, подсказки об ошибках, картинки и так далее
Делайте свои вопросы полезными для других
Должен быть однозначный ответ на вопрос, и не должно быть слишком много субъективности
Различные схемы
Часто мы надеемся найти решение, но на Stackoverflow часто бывают неожиданные результаты. Вы можете увидеть разные решения задачи, включая даже их сравнения.
Предположим, теперь вы хотите узнать, как вызвать внешнюю команду в Python, например ls -l, чтобы напечатать статью под каталогом. Погуглите команду Python call system, и первая — связанный вопрос о stackoverflow: вызов внешней команды в Python. (http://stackoverflow.com/questio ... l-command-in-python) (Технические проблемы Google, по сути, связанные со stackoverflow, будут отображаться).
Затем под этим вопросом кто-то резюмирует несколько способов вызова внешних команд:
os.system()
os.popen()
subprocess.popen()
subprocess.call()
subprocess.run()
И каждый метод также вводится — вы можете выбрать подходящий, подходящий для вашей задачи. Другой пример — вопрос: как проверить, существует ли файл с помощью Python? (http://stackoverflow.com/questio ... exists-using-python), который описывает различные методы в Python для проверки наличия файла.
Использование инструментов
Существует множество мощных инструментов, которые могут помочь нам лучше изучать задачи: вы можете знать инструмент отладки gdb, возможно, знаете модуль мониторинга времени в Python, но не знаете инструментов, которых не знаете. Часто, когда мы впервые узнаём инструмент, чувствуем, что встречаемся слишком поздно. Однако инструменты, которые тебе нравятся, всегда так сложно найти.
На Stackoverflow в каждом ответе на вопрос или комментарии могут быть хорошие инструменты, и у вас всегда будет шанс найти лучшие, которые остались за линиями.
Вот список некоторых отличных инструментов, которые я нашёл:
TRUSS/STRACE: отслеживает системные вызовы и полученные сигналы при выполнении процесса, STRACE может отслеживать системные вызовы, сгенерированные процессом, включая параметры, возвращаемые значения и время выполнения. (Из вопроса: почему чтение строк из stdin в C++ гораздо медленнее, чем в Python?)
vprof: Визуальный инструмент, анализирующий характеристики программ на Python, такие как время выполнения, использование памяти и т.д. (Из вопроса: Как можно составить профиль Python?)
Regex 101: Онлайн-помощник по регулярным выражениям, который поможет вам понять значение регулярных выражений, отладить регулярные выражения и провести простые эксперименты. (Из выпуска: Изучение регулярных выражений)
Вот простой пример Regex 101:

Процесс мышления
Часто, когда мы сталкиваемся с проблемой, у нас нет возможности начать и мы не знаем, в каком направлении думать. Но с помощью stackoverflow мы легко можем найти конкретное решение, а иногда даже знать, что думают другие, когда сталкиваемся с этой проблемой.
Допустим, вы хотите использовать декоратора для выполнения задачи, добавляя строку до и после записи, возвращаемую функцией say ниже, и думаете о определении скажем вот так.
@makebold
@makeitalic
Обязательно скажу():
вернуться «Здравствуйте»
Каждый звонок, чтобы сказать «Привет», возвращает «Привет». Но как реализовать makebold и makeitalic — это проблема. На Stackoverflow есть крупные быки, которые напрямую скажут ответ и дадут ссылку на документацию декораторов. Но есть и Дэниелы, которые подробно расскажут о своём мышлении и понимании декораторов, чтобы вы могли глубоко понять механизм декорирования.
В ответ на вышеуказанный вопрос есть ответ, который набрал более 3 000 лайков и рассказывает, как решать проблему шаг за шагом. Прежде всего, расскажите, каковы характеристики функций в Python:
Функции — это объекты
Функция может быть назначена переменной
Функцию можно определить в другой функции
Одна функция может вернуть другую функцию
Вы можете передавать функции как параметры
Затем начинайте объяснять, что такое декоратор: это на самом деле инкапсулятор, который позволяет выполнять другой код до и после выполнения оригинальной функции без её изменений. Простой прототип декоратора реализуется вручную, затем вводится синтаксис декоратора на Python. Наконец, перечислены некоторые продвинутые применения декораторов, включая передачу параметров декораторам. Прочитайте полный ответ, вы точно глубже поймёте дизайнера и поймёте процесс понимания дизайнера. Таким образом, следуя этому пути мышления, вы сами сможете понять, как пользоваться декораторами.
Возможные слепые зоны
Если у вас нет вопросов, вы также можете время от времени заходить на stackoverflow, просматривать вопросы с большим числом голосов и смотреть, на что ответили другие. В этой обширной базе знаний вы, скорее всего, найдёте некоторые свои когнитивные слепые зоны и найдёте контент, которому раньше не обращали внимания.
Я нашёл несколько интересных вопросов, например:
Печатать в терминале с цветами на Python?
Что такое метакласс в Python?
Какой у вас самый продуктивный короткий путь с Вимом?
Я составил здесь список качественных вопросов по Python для частого обращения.
Жаль, что мы встретились слишком поздно
Итак, как найти StackOverflow, есть два совета:
Опишите задачу точно на английском языке
Погуглите
Если вы не первый, кто столкнулся с технической проблемой, скорее всего, вы найдёте такую же или похожую проблему на StackOverflow. Познакомьтесь скоро, влюбитесь в Stackoverflow с самого начала, и вы увидите, что жизнь так комфортна.





Предыдущий:VPN для пакетного подключения с Windows изменяет таблицу маршрутизации
Следующий:node.js модульный интерфейс
Отказ:
Всё программное обеспечение, программные материалы или статьи, публикуемые Code Farmer Network, предназначены исключительно для учебных и исследовательских целей; Вышеуказанный контент не должен использоваться в коммерческих или незаконных целях, иначе пользователи несут все последствия. Информация на этом сайте взята из Интернета, и споры по авторским правам не имеют отношения к этому сайту. Вы должны полностью удалить вышеуказанный контент с компьютера в течение 24 часов после загрузки. Если вам нравится программа, пожалуйста, поддержите подлинное программное обеспечение, купите регистрацию и получите лучшие подлинные услуги. Если есть нарушение, пожалуйста, свяжитесь с нами по электронной почте.

Mail To:help@itsvse.com