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

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

1
Какие технические детали должен учитывать программист веб-приложения, прежде чем делать сайт общедоступным?
Что нужно учесть программисту, реализующему технические детали веб-приложения, перед тем как сделать сайт общедоступным? Если Jeff Atwood можно забыть о HttpOnly печенье , сайтмепов , и запрос подделки межсайтовых все в том же месте , какая важная вещь я мог бы забыть, а? Я думаю об этом с точки зрения ...

11
Какой алгоритм хеширования лучше всего подходит для уникальности и скорости?
Какой алгоритм хеширования лучше всего подходит для уникальности и скорости? Примеры (хороших) применений включают хеш-словари. Я знаю, что есть такие вещи, как SHA-256 и тому подобное, но эти алгоритмы предназначены для обеспечения безопасности , что обычно означает, что они медленнее, чем алгоритмы, которые менее уникальны . Я хочу, чтобы алгоритм ...
1388 algorithms  hashing 

9
Откуда пришло понятие «только одно возвращение»?
Я часто общаюсь с программистами, которые говорят: « Не помещайте несколько операторов return в один и тот же метод». Когда я прошу их рассказать мне причины, все, что я получаю, это « Стандарт кодирования говорит об этом » или « Это сбивает с толку ». Когда они показывают мне решения ...

30
Я заканчиваю со степенью информатики, но я не чувствую, что я знаю, как программировать
Я заканчиваю со степенью информатики, но я вижу сайты, такие как Stack Overflow, и поисковые системы, такие как Google, и не знаю, где бы я даже начал писать что-то подобное. В течение одного лета у меня была возможность работать разработчиком для iPhone, но я чувствовал, что в основном склеиваю библиотеки, ...
1050 education 

30
Какая самая эффективная вещь, которую вы сделали, чтобы улучшить свои навыки программирования?
Оглядываясь назад на мою карьеру и жизнь программиста, я смог улучшить свои навыки программирования множеством разных способов: чтение кода, написание кода, чтение книг, прослушивание подкастов, просмотр скринкастов и многое другое. Мой вопрос: что вы сделали наиболее эффективно, что улучшило ваши навыки программирования? Что бы вы порекомендовали другим, которые хотят улучшить? ...

28
Мой босс решил добавить поле «человек виноват» в каждый отчет об ошибке. Как я могу убедить его, что это плохая идея?
В одном из последних шагов «WTF» мой босс решил, что добавление поля «Person To Blame» в наш шаблон отслеживания ошибок увеличит ответственность (хотя у нас уже есть способ привязать ошибки к функциям / историям). Мои аргументы о том, что это снизит моральный дух, увеличит количество указаний пальцем и не будут ...

17
Как ответить, когда вас просят оценить?
Нас, программистов, постоянно спрашивают: «Сколько времени это займет?» И вы знаете, ситуация почти всегда так: Требования неясны. Никто не сделал глубокий анализ всех последствий. Новая функция, вероятно, нарушит некоторые предположения, которые вы сделали в своем коде, и вы сразу же начнете думать обо всех вещах, которые вам, возможно, придется реорганизовать. ...


1
Является ли использование «utf8 = ✓» более предпочтительным, чем «utf8 = true»?
Недавно я видел несколько URI, содержащих параметр запроса "utf8 = ✓". Мое первое впечатление (после размышлений «ммм, выглядит круто») состояло в том, что это можно использовать для обнаружения нарушенной кодировки символов. Итак, это лучший способ решить потенциальные проблемы с кодировкой символов, или это просто разработчик, который развлекается с хакером?

13
Значит синглтоны плохие, тогда что?
В последнее время было много дискуссий о проблемах с использованием (и чрезмерным использованием) Singletons. Я был одним из тех людей в начале моей карьеры тоже. Теперь я вижу, в чем проблема, и все же есть много случаев, когда я не вижу хорошей альтернативы, и не многие из дискуссий по борьбе ...

2
Во что встроено программное обеспечение Mars Curiosity Rover?
Марс Curiosity марсоход успешно приземлился, и один из промо - видео «7 минут ужаса» хвастается там быть 500000 строк кода. Это сложная проблема, без сомнения. Но это много кода, конечно, за этим стоит довольно большое программирование. Кто-нибудь знает что-нибудь об этом проекте? Я могу только представить, что это какой-то встроенный ...

6
Плюсы и минусы реакции Facebook против веб-компонентов (полимер)
Каковы основные преимущества React от Facebook перед предстоящей спецификацией веб-компонентов и наоборот (или, может быть, сравнение между яблоками и яблоками было бы более значительным по сравнению с библиотекой Google Polymer )? Согласно этому докладу об ЕС и домашней странице React, основными преимуществами React являются: Разъединение и увеличение сцепления с использованием ...
521 javascript  html 

30
Почему ИТ-индустрия не может реализовать крупные, безошибочные проекты так быстро, как в других отраслях?
Посмотрев серию MegaStructures от National Geographic , я был удивлен, насколько быстро завершаются крупные проекты. После того, как предварительные работы (дизайн, спецификации и т. Д.) Выполнены на бумаге, сама реализация огромных проектов занимает всего несколько лет, а иногда и несколько месяцев . Например, Airbus A380 «официально запущен 19 декабря 2000 ...

19
Я унаследовал 200 000 строк кода для спагетти - что теперь?
Я надеюсь, что это не слишком общий вопрос; Я мог бы действительно использовать некоторые опытные советы. Я недавно работаю в качестве единственного «Инженера SW» в довольно небольшом магазине ученых, которые провели последние 10-20 лет, собирая обширную базу кода. (Он был написан практически на устаревшем языке: G2 - подумайте на Паскале ...

21
Преодоление медленного решения проблем из-за увеличения знаний о том, что может пойти не так [закрыто]
Это беспокоило меня в течение некоторого времени, и я очень ценю вклад других профессионалов. Краткая справка: я начал программировать, когда мои родители купили мне мой первый компьютер в 1988 году (в 14 лет, сейчас мне 39 лет). Я прошел несколько других карьерных путей, прежде чем окончательно стать профессиональным программистом в ...
450 experience  effort 

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