Розробка програмного забезпечення

Питання та відповіді для професіоналів, науковців та студентів, які працюють у життєвому циклі розвитку систем

8
Чи слід записувати помилку, яку я виявив і виправляв?
Я припускаю, що це звичайна ситуація: я перевіряю якийсь код, виявляю помилку, виправляю її та здійснюю виправлення помилок у сховищі. Якщо припустити, що багато людей працюють над цим проектом, я повинен спершу створити звіт про помилку, призначити його собі та посилатися на нього у повідомленні про виконання (наприклад, "Виправити помилку …

13
Було б поганою ідеєю періодично запускати формати коду у сховищі?
Я думаю створити роботу cron, яка перевіряє код, запускає на ньому формати форматів, і якщо щось змінилося, здійснює зміни та відштовхує їх назад. Більшість проектів, які використовують автоформати, ставлять їх у гачок, але якщо робити це автоматично кожні кілька годин, це зніме тягар для кожного розробника для встановлення гака. Я …

3
Чи слід включати папку Nuget PACKAGE в контроль версій?
Я хотів би знати У проект C # або VB.NET слід включити папку PACKAGE (папку пакетів самородок, створену для кореня мого проекту, що містить файли nupkg та інший вміст) до нашого сховища джерела управління (наприклад, Git).

8
Визначення питань: Чи слід "ISomething" перейменувати на "Щось"? [зачинено]
Глава дядька Боба про імена в Чистому кодексі рекомендує уникати кодування імен, головним чином щодо угорських позначень. Він також конкретно згадує про видалення Iпрефікса з інтерфейсів, але не показує прикладів цього. Припустимо наступне: Використання інтерфейсу полягає в основному для досягнення простежуваності шляхом введення залежності У багатьох випадках це призводить до …

5
Чи є гарною практикою оголошувати змінні екземпляра як None у класі в Python?
Розглянемо наступний клас: class Person: def __init__(self, name, age): self.name = name self.age = age Мої колеги, як правило, визначають це так: class Person: name = None age = None def __init__(self, name, age): self.name = name self.age = age Основна причина цього полягає в тому, що їх вибір редактора …
68 python 

17
Що я можу зробити для розробників, які не можуть вивчити Git? [зачинено]
Контекст Моя команда з 8 інженерів зараз переходить до Git (з Subversion) для наступної нашої великої справи. У нас є кілька «досвідчених» інженерів, яким важко підібрати Git. Мені задають ті самі тривіальні запитання, незважаючи на те, що я надав посібники користувача, навчальні заходи та сесії на дошці. У нас було …
68 git  gitflow 

7
Чому існують приватні статичні методи?
Я просто хотів прояснити питання, яке у мене є. Який сенс мати приватний статичний метод на відміну від звичайного методу з приватною видимістю? Я б подумав, що перевага статичного методу полягає в тому, що його можна викликати без екземпляра класу, але оскільки його приватний є навіть сенс статичним? Єдина причина, …

7
Написання тестів за існуючим кодом
Припустимо, одна мала порівняно велику програму (скажімо, 900k SLOC у C #), всі коментували / документували ретельно, добре організовано та працювали добре. Вся база коду була написана одним старшим розробником, який більше не працює з компанією. Весь код перевіряється таким, як є, і IoC використовується протягом усього періоду - за …

3
Це правильне використання методу скидання Mockito?
У моєму тестовому класі у мене є приватний метод, який конструює об'єкт, що часто використовується Bar. BarКонструктор викликає someMethod()метод в моєму знущалися об'єкта: private @Mock Foo mockedObject; // My mocked object ... private Bar getBar() { Bar result = new Bar(mockedObject); // this calls mockedObject.someMethod() } У деяких моїх методах …
68 java  mocking 

5
Навіщо зберігати функцію всередині словника python?
Я початківець пітон, і я просто навчився техніці, що включає словники та функції. Синтаксис простий і здається, що це банальна річ, але мої відчуття пітону поколюються. Щось підказує мені, що це глибока і дуже пітонічна концепція, і я не зовсім розумію її значення. Чи може хтось поставити ім’я цій техніці …

4
Як функціональні мови обробляють випадкові числа?
Що я маю на увазі з цього приводу, що майже в кожному підручнику, який я читав про функціональні мови, є те, що одна з найважливіших речей щодо функцій - це те, що якщо ви двічі викличете функцію з тими ж параметрами, ви завжди будете мати такий же результат. Як на …

14
Ім'я цього антипатрійця? Поля як локальні змінні [закрито]
У деякому коді, який я рецензую, я бачу речі, які є моральним еквівалентом наступного: public class Foo { private Bar bar; public MethodA() { bar = new Bar(); bar.A(); bar = null; } public MethodB() { bar = new Bar(); bar.B(); bar = null; } } Поле barтут логічно є …

7
Чи є альтернативи з відкритим кодом для Bitbucket, Github, Kiln та подібних інструментів для перегляду та управління DVCS? [зачинено]
Мені відомо кілька інструментів / сервісів, які забезпечують перегляд та управління DVCS, такі як Bitbucket , Github , Kiln , SCM-Manager та Rhodecode . Однак я розглядаю випадок використання, який є таким: Будь-який вихідний код повинен міститись на внутрішніх серверах роботодавців. Рішення повинно бути відкритим. Він повинен забезпечити досвід Bitbucket …

9
Чи слід використовувати Git для документації та управління проектами? Чи повинен бути код в окремому сховищі?
Я запускаю сховище Git для групового проекту. Чи має сенс зберігати документи в тому самому сховищі Git як код - схоже, це суперечить природі потоку редагування git. Ось короткий опис моїх питань: Чи буде стиль редагування Git заплутаним, якщо і код, і документи перевіряються в одному сховищі ? Досвід з …

22
Що ви робите, коли стикаєтеся з ідіотським питанням інтерв'ю? [зачинено]
Я брав інтерв'ю з "занадто гордим моїми навичками java", що переглядають людину. Він запитав мене: " Які твої знання в класах Java IO .. скажи .. хеш-карти? " Він попросив мене написати фрагмент коду Java на папері - інстанціювати клас та викликати один із методів екземпляра. Коли я закінчив, він …
68 interview 

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.