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

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






7
Як ви кодуєте алгебраїчні типи даних мовою C # - або Java?
Існують деякі проблеми, які легко вирішуються алгебраїчними типами даних, наприклад, тип списку може бути дуже коротко виражений як: data ConsList a = Empty | ConsCell a (ConsList a) consmap f Empty = Empty consmap f (ConsCell a b) = ConsCell (f a) (consmap f b) l = ConsCell 1 (ConsCell …

3
До чого відносяться DRY, KISS, SOLID тощо?
Чи щось на кшталт DRY - це модель дизайну, методологія чи щось середнє? Вони не мають конкретних реалізацій, які могли б бути неодмінно продемонстровані (навіть якщо ви можете легко продемонструвати випадок НЕ, використовуючи щось на зразок KISS ... див . Щоденний WTF для безлічі прикладів), а також вони повністю не …

3
Етимологія "Рядок"
Тож очевидно, що рядок речей - це послідовність речей, і тому послідовність символів / байтів / тощо. може також називатися рядком. Але хто перший назвав їх струнами? І коли? І в якому контексті таке, що воно застрягло? Я завжди цікавився цим.

4
Чи є виняткові випадки, коли ми можемо прийняти повторюваний код?
Я працюю над програмним проектом, де нам потрібно побудувати три API. Один для домашнього банківського каналу, один для агентського каналу та третій для мобільного каналу. API агентства є найповнішим, оскільки він має всі функціональні можливості. Потім трохи менший Home API, а потім мобільний API. Тут архітектори створили загальний рівень (міжканальні …
57 java  api  spring 


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

9
Чтеність та ремонтопридатність, особливий випадок написання вкладених викликів функцій
Мій стиль кодування для вкладених функцій викликів такий: var result_h1 = H1(b1); var result_h2 = H2(b2); var result_g1 = G1(result_h1, result_h2); var result_g2 = G2(c1); var a = F(result_g1, result_g2); Нещодавно я змінився у відділ, де дуже сильно використовується наступний стиль кодування: var a = F(G1(H1(b1), H2(b2)), G2(c1)); Результатом мого …

4
Чому тип має назву змінної у сучасних мовах програмування?
Чому так, що майже в усіх сучасних мовах програмування (Go, Rust, Kotlin, Swift, Scala, Nim, навіть остання версія Python) типи завжди приходять після імені змінної в декларації змінної, а не раніше? Чому x: int = 42і ні int x = 42? Чи останні не є більш читабельними, ніж перші? Це …

16
Як слід зберігати значення "невідомі" та "відсутні" у змінній, зберігаючи різницю між "невідомим" та "відсутнім"?
Вважайте це "академічним" питанням. Мені було цікаво про те, щоб час від часу уникати NULL, і це приклад, коли я не можу знайти задовільне рішення. Припустимо, що я зберігаю вимірювання там, де іноді відомо, що вимірювання неможливе (або відсутнє). Я хотів би зберегти це "порожнє" значення у змінній, уникаючи NULL. …

8
Як ми можемо бути впевнені, що нижні компоненти комп’ютерного програмування, такі як компілятори, асемблери, інструкції з машин тощо, є бездоганними?
Оскільки ми все більше і більше покладаємось на обчислення, включаючи дуже критичні завдання щоденного життя, мені було просто цікаво, як перевіряються ці життєво важливі компоненти. Більш технічно, як перевіряються компілятори та збирачі? (Я вважаю, що це стосується проблеми зупинки !!)

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