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

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

8
Що таке термін для дійсно ВЕЛИЧОГО коду збору даних? [зачинено]
Іноді, коли ми перевіряємо історію фіксації програмного забезпечення, ми можемо побачити, що є кілька комітетів, які дійсно є ВЕЛИКИми - вони можуть змінювати 10 або 20 файлів із сотнями змінених рядків вихідного коду (дельта). Я пам’ятаю, що є такий вживаний термін для такого великого прихильності, але я не можу точно …

8
Страх випустити проект хобі - як подолати? [зачинено]
Я не знаю, чи це питання суворо пов'язане з розробкою програмного забезпечення, але все ж спробую: Як і багато програмістів, я люблю працювати над хобі-проектами. Іноді, здавалося б, хороші ідеї виявляються не такими хорошими, тому я кидаю проект. Але іноді з проекту виходить щось корисне. Отже, я міг би звільнити …

19
Що ви говорите в огляді коду, коли інша людина створила надто складне рішення? [зачинено]
Днями я переглянув код, який хтось із моєї команди написав. Рішення було не повністю функціональним, і дизайн був надто складним - це означає, що зберігалася непотрібна інформація, вбудовані непотрібні функції, і в основному код мав безліч зайвих складностей, таких як позолочення, і він намагався вирішити проблеми, які не існують. У …

8
Чи використовую я ланцюжок методів, я повторно використовую об'єкт чи створюю його?
При використанні методу ланцюга типу: var car = new Car().OfBrand(Brand.Ford).OfModel(12345).PaintedIn(Color.Silver).Create(); можуть бути два підходи: Використовуйте повторно той самий об’єкт, як цей: public Car PaintedIn(Color color) { this.Color = color; return this; } Створюйте новий тип типу Carна кожному кроці, наприклад: public Car PaintedIn(Color color) { var car = new Car(this); …

4
Чому модель введення залежності не була включена до групи банди з чотирьох?
Чому модель введення залежності не була включена в групу з чотирьох ? Чи був GOF раніше широко поширеним автоматизованим тестуванням? Чи в даний час введення залежності вважається основною схемою?

11
Чи справді потрібен "C" у MVC?
Я розумію роль моделі та подання у моделі Model-View-Controller, але мені важко зрозуміти, чому потрібен контролер. Припустимо, ми створюємо шахову програму, використовуючи підхід MVC; стан ігор повинен бути моделлю, а графічний інтерфейс - переглядом. Що саме в цьому випадку є контролером? Це просто окремий клас, який має всі функції, які …

2
Емпіричні докази популярності Git та Mercurial
Це 2012 рік! Меркуріал і Гіт все ще сильні. Я розумію компроміси обох. Я також розумію, що кожен має певні уподобання до того чи іншого. Це добре. Я шукаю інформацію про рівень використання обох. Наприклад, на stackoverflow.com , пошук Git отримує 12000 звернень, Mercurial отримує 3000. Google Trends говорить, що …
37 git  mercurial 

11
Як люди, які роблять TDD, справляються із втратою роботи, коли роблять капітальний рефакторинг
Якийсь час я намагався навчитися писати одиничні тести для свого коду. Спочатку я почав робити справжній TDD, де я б не писав жодного коду, поки спочатку не написав невдалий тест. Однак нещодавно у мене виникла терниста проблема, вирішити яку було багато коду. Провівши пару тижнів, пишучи тести, а потім зашифрувавшись, …
37 tdd  refactoring 

6
Чи "Mapper" є дійсним дизайнерським малюнком чи це варіація "Фабричного" шаблону?
Поширений зразок, який я бачу, - це відомий як Mapperшаблон (не плутати з ним DataMapper- це щось інше цілком), який бере в якості аргументу якесь «сире» джерело даних (наприклад, ADO.NET DataReaderабо DataSet) і відображає поля на властивості на об'єкті бізнесу / домену. Приклад: class PersonMapper { public Person Map(DataSet ds) …

16
Чи боляче вивчати шматочки багатьох мов програмування?
Я розпочав свою кар’єру програмування з BASIC, у 9 класі. Я трохи навчився БАЗА, написавши прості програми для додавання, віднімання та друку. Потім я пішов до університету і взяв комп'ютерну інформацію та інженерію систем. На першому курсі мене навчали С, і я добре володію ним. Далі я вивчив C ++ …
37 php  c++  c  basic 

8
Який прийнятий стиль використання ключового слова `this` на Java?
Я походжу з таких мов, як Python або Javascript (та інших, які менш об'єктно орієнтовані), і я намагаюся вдосконалити свої робочі знання щодо Java, які я знаю лише поверхнево. Чи вважається поганою практикою завжди додавати thisдо поточних атрибутів екземпляра? Мені більш природно мені писати ... private String foo; public void …

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

9
Як дитині ваші дитячі кроки в TDD?
Сьогодні ми тренували TDD і виявили наступний момент непорозуміння. Завдання полягає у введенні «1,2» повернення суми чисел, що дорівнює 3. Що я написав (на C #): numbers = input.Split(','); return int.Parse(numbers[0]) + int.Parse(numbers[1]); //task said we have two numbers and input is correct Але інші хлопці вважали за краще це …
37 testing  tdd 

17
Чи можете ви насправді створити високоякісний код, якщо вам не вистачає сну? [зачинено]
Я чув про програмістів, що кодують два дні без сну і пиття кави та Red Bull . Також у фільмах, таких як "Соціальна мережа" , на сцені вони показують, що Марк Цукерберг програмував 36 годин. Також я десь читав, що у таких компаніях, як Facebook, Google, чотирикутник тощо, вони можуть …

11
Чи застарілі заняття / методи застарілі?
Я використовував для створення багатьох абстрактних класів / методів. Потім я почав використовувати інтерфейси. Зараз я не впевнений, чи інтерфейси не роблять абстрактні класи застарілими. Вам потрібен повністю абстрактний клас? Створіть замість цього інтерфейс. Вам потрібен абстрактний клас з деякою реалізацією в ньому? Створіть інтерфейс, створіть клас. Успадкуйте клас, реалізуйте …

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