Рубрики
Без рубрики

Вещи, которые все разработчики должны учиться в колледже

Забудь

Автор оригинала: FreeCodeCamp Community Member.

Забудьте о «линиях кода»

Источник

Как разработчик, вы услышите много сумасшедших, невероятных теорий о том, какие «строки кода» означают. Верьте никто из них. Линии кода – это смешная метрика для базовых решений. В очень редких случаях это говорит вам о чем-то, во всех остальных случаях он ничего не говорит. Использование строк кода для принятия решений похоже на качество книги по количеству страниц.

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

  • Код должен быть последовательным
  • Код должен быть чувствительным к себе
  • Код должен быть хорошо документирован
  • Код должен использовать стабильные современные функции
  • Код не должен быть излишне сложен
  • Код не должен быть нефигированием (не пишите намеренно медленным кодом)

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

Нет «хороших» или «плохого» языков

Кроме PHP, просто шутите

Я вижу, как люди говорят такие вещи, как это, все время:

|

|

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

Не поймите меня неправильно, существуют определенно различия между языками. Всего, что есть очень мало «непригодных» языков (хотя есть много устаревших/мертвых языков). Каждый язык приносит свой уникальный набор компромиссов. В этой связи языки похожи на инструменты на панели инструментов. Отвертка может сделать то, что не может сделать молоток, но вы когда-нибудь говорили, что отвертка лучше, чем молоток?

Очевидно, что молоток лучше

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

Вот основные аспекты (заказанные), что я считаю, что я считаю, должен диктовать свой выбор языка (это это покемона статистика)

  • Плотность доступных онлайн-ресурсов (плотность стоги)
  • Скорость развития (VORE VOLE)
  • Ошибка Поналшена (Eyeek)
  • Качество и широта упаковки Ecosystem (YEA NPM, он говорит, что качество)
  • Характеристики производительности (больше точек)
  • Храчайно (извините Cobol)

Есть также некоторые сильные муфты, которые вышли из ваших рук. Если вы работаете в науке Data, вы реально надо использовать Python, R или Scala (возможно Java). Если это проект хобби, используйте все, что сделает вас счастливым. У меня есть только одно не договорное правило. Я отказываюсь использовать языки, у которых нет большинства проблем, которые я столкнусь с непосредственно решаемым на StackoverFlow. Это не то, что я не могу решить это, это просто не стоит того времени.

Чтение кода других людей сложно

Источник

Чтение других народов кода сложно. Роберт С. Мартин говорит об этом в «Чистом коде»:

Действительно, соотношение времени, потраченное на чтение по сравнению с письмом, более 10 к 1. Мы постоянно читаем старый код как часть усилий, чтобы написать новый код… [следовательно,] облегчать прочитать, облегчает запись.

Долгое время я предположил, что я просто всасывался на чтении других народов. Со временем я понял, что это что-то почти каждый программист борется на ежедневной основе. Чтение кода других людей почти чувствует себя как чтение иностранного языка. Даже если вам удобно с выбором языка программирования писателя, вам все равно приходится настроить различные стили и выбор архитектуры. Это также предполагает, что автор написал последовательный и надежный код, который можно поразить или пропустить. Это действительно сложно преодолеть. Есть несколько вещей, которые я нашел, помогал много.

Обзор других народов улучшит свои навыки чтения кода. За последние два года я рассмотрел довольно много Github Pr’s. С каждым PR я чувствую себя немного более удобным, читая другие народы. Github Pr особенно велик по этим причинам

  • Можно практиковать в любое время, просто найдите проект с открытым исходным кодом, который вы хотите, чтобы вы хотите внести свой вклад.
  • Практикуйте чтение в определенном контексте (функция вождения или ошибка PR).
  • Внимание к деталям требуется, что заставит вас оценить каждую строку.

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

Вы никогда не будете писать “идеальный” код

Источник

Я был разработчиком «Lone Wolf» за 4 года, прежде чем я начал работать над командой. Большую часть времени я только что имел это предположение, что каждый программист в отрасли написал идеальный код. Я полагал, что это было просто вопрос времени и усилий, прежде чем я также написал «идеальный» код. Это то, что я чувствовал, что очень беспокоился. Однажды я присоединился к команде, это быстро стало ясно, что никто не писал «идеальный» код. Но код, идущий в систему, был почти всегда «идеальным», что дает? Ответ, код отзывы.

Я работаю с командой действительно блестящих инженеров. Это некоторые из наиболее компетентных, уверенно, которые могут купить деньги, которые могут купить деньги. Каждый член нашей команды (включая меня) будет иметь полную вздутиеющую панику-атаку, если кто-то когда-нибудь предложил совершить опровержение кода. Даже если вы думаете, что вы следующий Билл Гейтс, вы будете ошибаться. Я даже не говорю логические ошибки, я говорю опечатки, недостающие персонажи. Вещи, которые ваш мозг настроится, и никогда не заберут. Вещи, которые вам нужен другой набор глаз.

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

Когда я проверяю чужой код, я просто поиск по Google каждый выбор, который они делают и посмотрите, отличается ли он от сильного популярного мнения. Часто раз, глядя на ту же проблему с «начинающими разумами», может поймать вещи, которые человек никогда не вернулся и посмотрел.

Работа программистом не означает 8 часов программирования в день

Это очень распространенный вопрос, но люди никогда не дают четкого ответа.

Очень немногие люди пишут код более 4 часов в день

Люди, которые не согласны с этим, являются либо исключением из правила или работы в компаниях, которые должны относиться к ним лучше. Программирование – это психическое осушение, интенсивная задача. Это совершенно неразумно ожидать, что кто-нибудь будет писать код в течение 8 часов в день, 5 дней в неделю. Будут редкие случаи, когда вам нужно встретить крайний срок или потянуть немного дополнительных для растяжения, но эти мало и далеко друг от друга. Когда я говорю «редко», я имею в виду почти никогда. Не терпите рабочее место, которое злоупотребляет вас и заставляет вас работать сверхурочно из-за плохого планирования/недостаточности.

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

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

Заключение

Это несколько вещей, которые я желаю, чтобы они преподавали в университете вместо чистой теории. В процессе написания этого я придумал тонну других предметов, но это придется прийти в следующем посте!