Вопросы с тегом «programming-practices»

Практика программирования - это общепринятые или не очень распространенные практики при разработке программного обеспечения. Они могут включать в себя такие вещи, как Agile Development, Kanban, сочетания клавиш и т. Д.

4
Внутренняя среда и среда разработки программного обеспечения [закрыто]
Закрыто. Этот вопрос не по теме . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он соответствовал теме разработки программного обеспечения стека Exchange. Закрыто 5 лет назад . В отрасли проводится различие между средой «внутренней разработки», в которой разработчики программного обеспечения пишут код, который …

7
Лучший способ разбить подавляющий код на управляемые куски?
Я постоянно поражаюсь большими проектами, когда они достигают определенного уровня сложности. Как только я достигаю определенной точки в проекте, мой прогресс замедляется, и я обнаруживаю, что постоянно повторяю свои шаги и разбираюсь со всеми видами путаницы. Я очень хорошо справился с рефакторингом из-за моей слабости. И я всегда стараюсь разложить …

5
Что случилось с унифицированной файловой моделью Алана Купера?
В течение долгого времени Алан Купер (в 3 версиях своей книги «О лице») продвигал «унифицированную файловую модель», чтобы, помимо прочего, обойтись без того, что он называет самым идиотским окном сообщений, когда-либо изобретенным - тем, которое выскакивает, когда нажимаете кнопку закрытия в приложении или форме, говоря "Вы хотите отменить свои изменения?" …

5
Когда начинать писать обработку исключений, ведение журнала
Когда вы начнете писать код обработки исключений? Когда вы начнете писать заявления о ведении журнала. В целях проработки этого вопроса, давайте предположим, что мы на платформе .NET с журналированием log4net, но не стесняйтесь отвечать в общем виде. Решение: проект Windows Forms. Проекты: пользовательский интерфейс, BusinessRules, DataHandlers Итак, вы собираетесь писать …

8
Всегда ли строки C заканчиваются нулем или это зависит от платформы?
Сейчас я работаю со встроенными системами и выясняю способы реализации строк в микропроцессоре без операционной системы. Пока что я просто использую идею использования NULL-концевых символьных указателей и обрабатываю их как строки, где NULL обозначает конец. Я знаю, что это довольно часто, но всегда ли вы можете рассчитывать на это? Причина, …

6
Что считается наилучшей практикой для печати использования / справки (--help)?
Когда я пишу инструменты для CLI UNIX, как мне заставить программу распечатывать справку и / или использование? Я обычно использую fprintf(stderr, "help text here");, но есть несколько проблем с этим. Во-первых, я не уверен, стоит ли мне пользоваться stderr. Это нормально, или я должен использовать stdout? Как вы можете себе …

6
Значения по умолчанию - это добро или зло?
Вопрос о значениях по умолчанию в целом - значения функций возврата по умолчанию, значения параметров по умолчанию, логика по умолчанию для случаев, когда чего-то не хватает, логика по умолчанию для обработки исключений, логика по умолчанию для обработки краевых условий и т. Д. Долгое время я считал значения по умолчанию «чистым …

5
В каких условиях (если таковые имеются) целесообразно запрашивать два сервера и использовать только самый быстрый ответ?
Я спросил, что теперь является вопросом, удаленным сообществом, на SO о том, почему кто-то использует javascript Promise.race, и пользователь с высокими репутациями прокомментировал это: Если у вас есть две службы, которые вычисляют какое-то значение, вы можете запрашивать их обе параллельно и использовать, какое значение всегда возвращается первым, вместо того, чтобы …


4
Это плохая практика, чтобы повторно использовать параметры метода?
Есть моменты, когда мне нужно изменить значение, переданное в метод изнутри самого метода. Примером может служить очистка строки, такой как этот метод, здесь: void SanitizeName(string Name) { Name = Name.ToUpper(); //now do something here with name } Это чисто безвредно, поскольку Nameаргумент не передается по ссылке. Однако, если по какой-либо …

2
Haskell пути к проблеме 3n + 1
Вот простая проблема программирования от SPOJ: http://www.spoj.com/problems/PROBTRES/ . По сути, вас просят вывести самый большой цикл Коллатца для чисел от i до j. (Цикл Коллатца с числом $ n $ - это число шагов, которые в итоге получатся от $ n $ до 1.) Я искал способ Haskell для решения …

3
Разве плохо обращаться к элементам массива доступа через арифметику указателей вместо оператора []?
Я только начал учиться программировать на C, и чтобы улучшить мое понимание указателей и массивов, я попытался ссылаться на элементы массива, не создавая вообще никакого указателя: for(k1 = 0; k1 < ROW; k1++){ for(k2 = 0; k2 < COLUMN; k2++){ array[k1][k2] = k1*COLUMN + k2 + 1; printf("[%d][%d] = %d\n", …

3
Подходит для постановки известных проблем непосредственно в программном обеспечении?
Я взял на себя обслуживание приложения для Android, и есть несколько остаточных проблем, которые я более или менее исправил, но все еще есть проблемы из-за разных версий ОС Android. Например, при отправке веб-запроса с помощью класса MediaPlayer пользовательские заголовки HTTP удаляются ОС перед отправкой запроса, но только на Android 4.X …

8
Написание программного обеспечения легче, чем чтение и понимание с нуля? [закрыто]
В настоящее время этот вопрос не очень подходит для нашего формата вопросов и ответов. Мы ожидаем, что ответы будут подтверждены фактами, ссылками или опытом, но этот вопрос, скорее всего, вызовет дебаты, споры, опрос или расширенное обсуждение. Если вы считаете, что этот вопрос можно улучшить и, возможно, вновь открыть, обратитесь за …

4
Как я могу избежать ползучести в сольном проекте?
Итак, у меня есть программа, над которой я работал в 2011 году и до 2012 года, но последний выпуск был в декабре 2011 года . Я активно работал над этим, но функция creep заманила его уродливую голову, и теперь он заполнен тоннами незаконченных функций. Плохая часть заключается в том, что, …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.