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

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

19
Как кодировать быстрее (без ущерба для качества) [закрыто]
Я был профессиональным программистом в течение нескольких лет. Комментарии к моему коду в целом были одинаковыми: пишет отличный код, хорошо протестирован, но может быть быстрее . Так как мне стать более быстрым программистом, не жертвуя качеством? Ради этого вопроса я собираюсь ограничить область действия C #, так как это в …

7
Связь между C #, .NET, ASP, ASP.NET и т. Д. [Закрыто]
Мне действительно неясно, в чем разница между C #, C # .NET и тем же для ASP и других языков .NET. Насколько я понимаю, .NET - это библиотека / фреймворк ... вещей. Я думаю, что они, по сути, имеют доступ к данным Windows, таким как элементы формы и т. Д., …
143 c#  .net  asp.net 

14
Откуда взялась эта концепция «отдавать предпочтение композиции перед наследованием»?
В последние несколько месяцев, мантра «композиция благосклонности вместо наследования», кажется, возникла из ниоткуда и стала почти своего рода мемом в сообществе программистов. И каждый раз, когда я вижу это, я немного озадачен. Это как кто-то сказал: «Скорее тренируйся, чем молотки». По моему опыту, состав и наследование - это два разных …

8
«модуль импорта» и «функция импорта модуля»
Я всегда использовал этот метод: from sys import argv и использовать argvтолько с argv . Но есть соглашение об использовании этого: import sys и используя argv sys.argv Второй метод делает код самостоятельно документированным, и я (действительно) придерживаюсь его. Но причина, по которой я предпочитаю первый метод, заключается в том, что …
143 python 

14
Простой способ надежного определения кода в тексте?
GMail имеет эту функцию, где он будет предупреждать вас, если вы попытаетесь отправить электронное письмо, которое, по его мнению, может иметь вложение. Поскольку GMail обнаружил строку see the attachedв электронном письме, но фактического вложения не было, он предупреждает меня с помощью диалогового окна OK / Отмена, когда я нажимаю кнопку …

17
Стандарт кодирования для ясности: прокомментировать каждую строку кода?
Я работал в магазинах, которые производят жизненно важное программное обеспечение, и я имел дело с правилами комментирования, которые должны были сделать код читабельным и потенциально спасти жизни. Однако, по моему опыту, требование превращаться в смертельно опасную рутину, чтобы быть убранным из контрольного списка, не помогает мне сосредоточиться на написании понятного …

30
Как стать «более быстрым» программистом?
Моя последняя оценка работы включала только одно слабое место: своевременность. Я уже знаю о некоторых вещах, которые я могу сделать, чтобы улучшить это, но я ищу еще кое-что. У кого-нибудь есть советы или рекомендации о том, что они делают, чтобы увеличить скорость своей продукции, не жертвуя ее качеством? Как вы …

2
Git разветвление и маркировка лучшие практики
В настоящее время я учусь использовать Git, читая Pro Git . Прямо сейчас я изучаю ветвление и теги. У меня вопрос, когда я должен использовать ветку и когда я должен использовать тег? Например, скажем, я создаю ветку для версии 1.1 проекта. Когда я закончу и выпустлю эту версию, я должен …

10
Должны ли мы определить типы для всего?
Недавно у меня возникла проблема с читабельностью моего кода. У меня была функция, которая выполняла операцию и возвращала строку, представляющую идентификатор этой операции, для дальнейшего использования (немного похоже на OpenFile в Windows, возвращающий дескриптор). Пользователь будет использовать этот идентификатор позже, чтобы начать операцию и контролировать ее завершение. Идентификатор должен был …
141 type-systems 

21
Как вы сохраняете фокус, когда определенный аспект программирования занимает более 10 секунд? [закрыто]
Мне очень трудно сосредоточиться на том, что я делаю (в программировании), когда что-то (компиляция, время запуска и т. Д.) Занимает больше, чем несколько секунд. Неожиданно кажется, что порог составляет около 10 секунд (и я вспоминаю чтение об исследовании, в котором говорилось то же самое, хотя я не могу его сейчас …

18
Есть ли оправдание коротким именам переменных?
Это стало большим разочарованием из-за кодовой базы, в которой я сейчас работаю; многие из наших имен переменных короткие и неописательные. Я единственный разработчик, оставшийся в проекте, и нет документации о том, что делает большинство из них, поэтому мне приходится тратить дополнительное время на отслеживание того, что они представляют. Например, я …

9
Поддержка сотен настраиваемых веток поверх главной ветки
В настоящее время у нас есть одна основная ветвь для нашего PHP-приложения в общем хранилище. У нас более 500 клиентов, которые являются подписчиками нашего программного обеспечения, большинство из которых имеют некоторые настройки для различных целей, каждый в отдельном филиале. К настройке может относиться другое имя текстового поля, совершенно новая функция …

8
Являются ли плохие методы программирования типичными для индустрии программного обеспечения? [закрыто]
Я только начал свою первую работу в качестве разработчика программного обеспечения более месяца назад. Все, что я узнал об ООП, ТВЕРДОМ , СУХОМ , ЯГНИ, шаблонах проектирования, SRP и т. Д., Можно выбросить из окна. Они используют C # .NET Webforms и делают почти все внутри Code Behind с очень …

1
Модуль против пакета?
Всякий раз, когда я это делал, from 'x' import 'y'мне было интересно, какой из них считается «модулем», а какой «пакетом», и почему это не наоборот?
140 python  packages  modules 

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

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