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

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

29
Почему степень информатики имеет значение для профессионального программиста? [закрыто]
У меня есть степень в области компьютерных наук. Это было здорово для открытия дверей, получения работы. Помогать мне в профессиональной области программирования на C # .NET (самой популярной платформе и языке в той области, где я работаю, если не во всех Соединенных Штатах на руках самой популярной ОС в мире) …

19
Имея дело с ужасными оценками
Недавний проект, над которым я работал, оказался сильно недооцененным архитектором. Оценка вышла как минимум на 500%. К сожалению, я был привлечен к проекту после того, как смета была подписана с заказчиком. Став старшим разработчиком, я быстро понял, что это функциональная и техническая спецификация. содержал некоторые огромные пробелы и неопределенности. В …

30
Нужно ли мне учиться в известном университете? [закрыто]
Будучи выпускником старшей школы в США, я скоро столкнусь с трудным решением через несколько месяцев: в какой колледж мне поступить? Стоит ли идти в Корнелл, Стэнфорд или Карнеги-Меллон (если, конечно, я поступлю), чтобы получить известную степень в области компьютерных наук, стажировки и связи с профессорами, взяв при этом огромный долг; …
63 education 

7
Как бороться со статическими служебными классами при разработке для тестируемости
Мы пытаемся спроектировать нашу систему так, чтобы она была тестируемой, и в большинстве случаев она была разработана с использованием TDD. В настоящее время мы пытаемся решить следующую проблему: В разных местах нам необходимо использовать статические вспомогательные методы, такие как ImageIO и URLEncoder (оба являются стандартными Java API) и различные другие …

4
какова цель стрел?
Я изучаю программирование на языке Haskell и пытаюсь понять концепции, сначала поняв, зачем они мне нужны. Я хотел бы знать цель стрелок в функциональных языках программирования. Какую проблему они решают? Я проверил http://en.wikibooks.org/wiki/Haskell/Understanding_arrows и http://www.cse.chalmers.se/~rjmh/afp-arrows.pdf . Все, что я понимаю, - это то, что они используются для описания графиков для …

10
Есть ли такая вещь, как наличие слишком большого количества частных функций / методов?
Я понимаю важность хорошо документированного кода. Но я также понимаю важность самодокументируемого кода. Чем проще визуально прочитать определенную функцию, тем быстрее мы можем двигаться во время обслуживания программного обеспечения. С учетом сказанного я люблю разделять большие функции на другие меньшие. Но я делаю это до такой степени, что класс может …

3
&& и || не логические, а условные операторы?
Меня немного смущает документация MSDN C #, в которой говорится, что &и |являются логическими операторами, &&а ||также условными операторами. Я продолжаю звонить &&, ||и !логические операторы, так что я не прав?

4
Что такое пул потоков?
Как реализовать пул потоков? Я читал в википедии слова «пул потоков», но до сих пор не могу понять, что нужно сделать, чтобы решить этот вопрос (возможно, потому, что я не совсем понял, что такое пул потоков в простых терминах). Может ли кто-нибудь объяснить мне простым языком, что такое поток потоков …

7
Достаточно ли использовать приемочные и интеграционные тесты вместо юнит-тестов?
Краткое введение в этот вопрос. Я использовал сейчас TDD и в последнее время BDD уже более года. Я использую такие приемы, как издевательство, чтобы писать свои тесты более эффективно. В последнее время я начал личный проект, чтобы написать небольшую программу управления капиталом для себя. Поскольку у меня не было устаревшего …

11
Почему хорошо разбить программу на несколько классов? [закрыто]
Я все еще учусь в средней школе (поступаю в 10-й класс), и мне еще предстоит пройти настоящий курс компьютерного обучения в школе. Все, что я до сих пор делал, это через книги. Эти книги научили меня таким понятиям, как наследование, но как помогает разделение программы на несколько классов? Книги никогда …

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

15
Есть ли причина не переходить непосредственно из клиентского Javascript в базу данных?
Возможное дублирование: написание веб-приложений «без сервера» Итак, допустим, я собираюсь создать клон Stack Exchange и решил использовать что-то вроде CouchDB в качестве своего внутреннего хранилища. Если я использую их встроенную аутентификацию и авторизацию на уровне базы данных, есть ли какая-либо причина не разрешать клиентскому Javascript писать напрямую на общедоступный сервер …

3
Почему мы должны помещать частных членов в заголовки?
Закрытые переменные - это способ скрыть сложность и детали реализации для пользователя класса. Это довольно приятная особенность. Но я не понимаю, почему в C ++ нам нужно поместить их в заголовок класса. Я вижу два досадных недостатка в этом: Загромождает заголовок от пользователя Вызывает перекомпиляцию всех клиентских библиотек при изменении …
62 c++  headers 

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

15
Как я могу убедить ковбойских программистов использовать контроль исходного кода?
ОБНОВЛЕНИЕ Я работаю в небольшой команде разработчиков, 4 парня. Все они использовали систему контроля версий. Большинство из них не могут выдержать контроль над исходным кодом и предпочитают не использовать его. Я твердо верю, что контроль источников является необходимой частью профессионального развития. Из-за нескольких проблем очень трудно убедить их использовать систему …

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