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

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

2
Оптимізація комбінаторів та хвостових викликів Y
Визначення комбінатора Y у F # є let rec y f x = f (y f) x f розраховує мати в якості першого аргументу деяке продовження для рекурсивних підпроблем. Використовуючи yf як продовження, ми бачимо, що f буде застосовуватися до послідовних викликів у міру розвитку let y f x = …

5
Чому сучасні бібліотеки не використовують OOP
Я програміст на рівні початківців C ++, але поняття мови я досить добре розумію. Коли я почав вивчати зовнішні бібліотеки C ++, як-от SDL, OpenGL (можливо, ще щось), на моє велике здивування я виявив, що вони взагалі не використовують поняття C ++. Наприклад, ні SDL, ні OpenGL не використовують класи …

7
Чи справді гарні файли заголовків? [зачинено]
Закрито . Це питання ґрунтується на думці . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб на нього можна було відповісти фактами та цитатами, відредагувавши цю публікацію . Закрито 4 роки тому . Я вважаю файли заголовків корисними під час перегляду вихідних файлів C ++, оскільки вони …
20 c++ 

4
Чому розмір купи фіксується на спільних машинах?
Хто-небудь може мені пояснити, чому JVM (я не перевіряв занадто багато, але я ніколи не бачив жодного, який би не робив це так) потрібно працювати на фіксованому розмірі купи? Я знаю, що це легше реалізувати на простому суміжному купі, але зараз JVM Sun вже більше десяти років, тому я б …
20 java 

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

7
Чи існує протилежне значення терміну "Backporting"?
Як я розумію, термін "Backporting" використовується для опису виправлення, яке застосовується у майбутній версії, яка також переноситься на попередню версію. Визначення Вікіпедії таке: Бекпортування - це дія прийняти певну модифікацію програмного забезпечення (виправлення) та застосувати її до більш старої версії програмного забезпечення, ніж вона була створена спочатку. Він є частиною …

4
Яка потреба у «відкритті» в API REST, коли клієнти недостатньо розвинені, щоб скористатися ним?
Різні переговори, які я переглянув, і підручники, які я сканував на REST, схоже, підкреслюють щось, що називається "відкриття". На моє обмежене розуміння, термін, схоже, означає, що клієнт повинен мати можливість перейти http://URL- і автоматично отримати список речей, які він може зробити. Що я маю проблеми з розумінням - це те, …
20 rest  api  hateoas 

1
Чому бібліотека C використовує макроси та функції з однойменною назвою?
Я читаю "Стандартну бібліотеку С" П. Дж. Плаугера, яка справді цікава. У книзі пояснено не тільки, як користуватися бібліотекою, але і як вона реалізована. Я закінчив читати ctype.hрозділ, і в заголовку функції оголошуються як макроси І функції. Наприклад int isdigit(int); але також #define isdigit(c) (_Ctype[(int)(c)] & _DI) Я не розумію, …
20 c  naming  functions  macros 

3
Чи має Clojure продовження / супроводи / тощо?
Я почав програмувати з Python, і мене дуже збентежили такі поняття, як супроводи та закриття. Тепер я думаю, що знаю їх на якомусь поверхневому рівні, але я ніколи не відчував цього "просвітницького" моменту, тому вирішу вчитися Клуджуре. Я купив книгу Стюарта Хэллоуей, і це добре, але коли я подивився на …

13
Чому операційні системи роблять матеріали низького рівня в C та C ++? Чому б не просто C ++?
На сторінці Wikipedia для Windows зазначено, що Windows написано в Асамблеї для завантажувача і перемикача завдань, а C і C ++ для підпрограм ядра. IIRC, ви можете викликати функції C ++ з extern "C"'d блоку. Я можу отримати використання C для функцій ядра, тому чисті програми C можуть використовувати їх …

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

1
Дерева рішень проти нейронних мереж
Я реалізую структуру машинного навчання, щоб спробувати передбачити шахрайство у таких фінансових системах, як банки тощо. Це означає, що існує багато різних даних, які можуть бути використані для навчання моделі, наприклад. номер картки, назва власника картки, сума, країна тощо ... У мене виникають проблеми вирішити, яка структура є найкращою для …

5
У чому полягає асоціація, агрегація та склад?
Я пережив багато теорій про те, що таке інкапсуляція та три методики її здійснення, які є асоціація, агрегація та склад. Я знайшов : Інкапсуляція Інкапсуляція - це техніка зробити поля в класі приватними та забезпечити доступ до полів відкритими методами. Якщо поле оголошено приватним, до нього не може отримати доступ …

3
Тестування одиниць C ++: Що перевірити?
TL; DR Писати хороші, корисні тести важко і має високу вартість на C ++. Чи можете ви досвідчені розробники поділитися вашим обґрунтуванням того, що і коли тестувати? Довга історія Раніше я робив тестові розробки, вся моя команда, але нас це не спрацювало. У нас є багато тестів, але вони, здається, …

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

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