Программная инженерия

Q & A для профессионалов, преподавателей и студентов, работающих в жизненном цикле разработки систем

8
Ведение кода: сохранение плохого паттерна при расширении нового кода для обеспечения согласованности или нет?
Я должен расширить существующий модуль проекта. Мне не нравится, как это было сделано (задействовано много анти-шаблонов, например, скопированный / вставленный код). Я не хочу выполнять полный рефакторинг по многим причинам. Нужно ли мне: создавать новые методы, используя существующее соглашение, даже если я чувствую это неправильно, чтобы избежать путаницы для следующего …

9
Почему указатели не рекомендуются при кодировании на C ++?
Я где-то читал, что при использовании C ++ рекомендуется не использовать указатели. Почему указатели такие плохие идеи, когда вы используете C ++. Для программистов C, которые привыкли использовать указатели, что является лучшей альтернативой и подходом в C ++?
45 c++  c  pointers 

12
Преднамеренные опечатки, чтобы избежать зарезервированных слов
Я часто вижу код, который включает преднамеренные опечатки общих слов, которые, к лучшему или худшему, стали зарезервированными словами: klassили clazzдля класса :Class clazz = ThisClass.class kountдля подсчета в SQL:count(*) AS kount Лично я считаю, что это снижает читабельность. В моей собственной практике я не нашел слишком много случаев, когда нельзя …

3
Что такое символ в Ruby?
Я совершенно новичок в мире Ruby, и меня немного смущает концепция символов. В чем разница между символами и переменными? Почему бы просто не использовать переменные? Благодарю.
45 ruby 

1
Есть ли каноническая книга по Agile?
Как сольный разработчик, я думаю, что я использую Agile-подобный процесс, но я хотел бы сравнить то, что я делаю, с настоящим Agile и посмотреть, смогу ли я улучшить свой собственный процесс. Существует ли книга, которая является стандартом де-факто для описания лучших практик, методологий и другой полезной информации по Agile? Что …
45 agile  books 


10
Быть либеральным в том, что вы принимаете ... или нет?
[Отказ от ответственности: этот вопрос субъективен, но я бы предпочел получать ответы, подкрепленные фактами и / или размышлениями] Я думаю, что все знают о принципе робастности , обычно описываемом законом Постеля: Будьте консервативны в том, что вы посылаете; быть либеральным в том, что вы принимаете. Я согласен, что для разработки …
45 design 

26
Самый умопомрачительный язык программирования? [закрыто]
С достаточно общим языком программирования, который вы найдете наиболее галлюциногенными? Я слушал много программных подкастов и потратил некоторое время на изучение некоторых новых языков, которые считаются предстоящими и важными. Я не обязательно говорю о BrainFuck , но какой язык вы бы назвали языком, который бросает вызов общим парадигмам программирования? Что …

20
Как вы отслеживаете ошибки в ваших личных проектах? [закрыто]
Я пытаюсь решить, нужно ли мне пересмотреть процесс отслеживания дефектов для моих домашних проектов. Последние несколько лет я действительно отслеживаю дефекты, используя TODOтеги в коде, и отслеживаю их в определенном виде (я использую Eclipse, у которого есть приличная система тегов). К сожалению, я начинаю задаваться вопросом, является ли эта система …

11
Каковы аргументы против или для размещения логики приложения на уровне базы данных? [закрыто]
Большинство разработчиков программного обеспечения хотят сохранить логику приложения на уровне приложений, и, вероятно, для нас естественно держать ее здесь. Разработчики баз данных, похоже, хотят поместить логику приложения на уровень базы данных, как триггеры и хранимые процедуры. Лично я предпочел бы хранить как можно больше на уровне приложений, чтобы упростить отладку …

2
Роль против контроля доступа на основе разрешений
Я пытаюсь понять присущий компромисс между ролями и разрешениями, когда дело доходит до контроля доступа (авторизации). Давайте начнем с данного: в нашей системе Разрешение будет детализированной единицей доступа (« Редактировать ресурс X », « Доступ к странице панели инструментов » и т. Д.). Роль будет набор разрешений 1+. Пользователь может …

8
Существуют ли законные причины для возврата объектов-исключений вместо их выброса?
Этот вопрос предназначен для применения к любому языку программирования ОО, который поддерживает обработку исключений; Я использую C # только в иллюстративных целях. Исключения обычно предназначены для возникновения, когда возникает проблема, что код не может быть обработан немедленно, а затем для перехвата в catchпредложении в другом месте (обычно это кадр внешнего …

8
Одинаково ли среднее количество ошибок на лок для разных языков программирования? [закрыто]
Мне сказали, что среднее количество ошибок / дефектов на строку кода является «постоянным» для разных языков программирования. 10 KLOC в Ruby будут иметь столько же ошибок, сколько 10 KLOC в c ++. Аргумент обычно используется для поощрения использования выразительных языков (например, python / ruby ​​вместо c ++ / assembly), поскольку …

3
Заявления об авторских правах в исходном коде [закрыто]
С тех пор, как я начал программировать, я видел заголовок в верхней части большинства файлов кода, указывающий на какое-то авторское право: например, /* Copyright (c) 1998 Innotech */ или /* Copyright (c) 1998-2008 Innotech */ Концептуально я понимаю ... в зависимости от ваших потребностей / потребностей это примерно переводится где-то …

7
Переменные приведения типов в PHP, какова практическая причина для этого?
PHP, как большинство из нас знает, имеет слабую типизацию . Для тех, кто этого не делает, PHP.net говорит: PHP не требует (или не поддерживает) явного определения типа в объявлении переменной; тип переменной определяется контекстом, в котором используется переменная. Нравится вам это или нет, PHP на лету перебрасывает переменные. Итак, следующий …

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