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

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

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

5
Критика монади IO розглядається як державна монада, що діє на світ
IOМонада в Haskell часто пояснюється як державної монади , де держава є світ. Таким чином, значення IO aмонади типу розглядається як щось подібне worldState -> (a, worldState). Деякий час тому я прочитав статтю (або повідомлення в блозі / списку розсилки), в якому критикував цю точку зору і наводив кілька причин, …

5
Чому старі мови програмування продовжують переглядати?
Це питання не: "Чому люди все ще використовують старі мови програмування?" Я це добре розумію. Насправді дві мови програмування, які я найкраще знаю, - це C і схема, обидві вони датуються 70 -ми. Нещодавно я читав про зміни в C99 та C11 порівняно з C89 (що, здається, все ще є …

4
Як я повністю самостійно вивчаю інформатику? [зачинено]
Будучи повністю програмовим самоучком, мені хотілося б, якби я міг краще себе навчити самостійно вивчати курс інформатики, який викладав до типового класу CS. Знайти різні ресурси в Інтернеті було просто, є звичайно посуд з відкритим курсом MIT , а також є курси Coursera зі Стенфорда та інших університетів. Є численні …

9
Що саме таке програмне забезпечення підприємства?
Я не розумію різниці між "нормальним" програмним забезпеченням та корпоративним програмним забезпеченням. Навіть прочитавши ці ... "Корпоративне програмне забезпечення" у Вікіпедії "Корпоративне програмне забезпечення знову сексуально" на Techcrunch "The Great Enterprise Software Swindle" про кодування жах Я не можу реально обернути голову навколо справжніх відмінностей. Чи взагалі є різниця між …

3
Чому Java обрали для Android?
Чому Java обрали для Android, а не щось на зразок C ++? Я чув, що Java використовує досить багато пам'яті, і я вважаю, що низьке використання пам'яті буде досить важливим на мобільних пристроях. Чи є якась реальна перевага використовувати Java на мобільному пристрої замість такої мови, як C ++?
46 android  mobile 

5
чи слід кидати виняток з конструктора?
Я знаю, що можу викинути виключення з конструктора в PHP, але чи варто це робити? Наприклад, якщо значення параметра не таке, як я очікував. Або я повинен відкладати викидання виключення, поки метод не буде викликаний. Які переваги та недоліки в обох випадках?

22
Чи класичний BASIC коли-небудь використовувався для розробки комерційного програмного забезпечення, і якщо так, то як було подолано обмеження?
Багато з нас, включаючи мене, почали своє програмування з програм, написаних на домашніх комп’ютерах , щось подібне 10 PRINT "ENTER RADIUS" 20 INPUT R 30 PRINT "CIRCUMFERENCE="; 2 * R * PI 40 PRINT "AGAIN?" 50 INPUT A$ 60 IF A$="Y" THEN GOTO 10 70 END Звичайно, лінія номер на …
46 history  basic 

16
Скільки логіки в Getters
Мої колеги говорять мені, що в геттерах і сетерах має бути якомога менше логіки. Але я переконаний, що в геттерах і сетерах може бути приховано багато речей, щоб захистити користувачів / програмістів від деталей реалізації. Приклад того, що я роблю: public List<Stuff> getStuff() { if (stuff == null || cacheInvalid()) …
46 coding 

8
Як я можу навчитися ефективно писати пітонічний код?
Здійснення пошуку в Google за "пітонічним" виявляє широкий спектр тлумачень. На сторінці вікіпедії написано: Поширеним неологізмом у спільноті Python є пітонічний, який може мати широкий спектр значень, пов’язаних із стилем програми. Сказати, що код є пітонічним, це означає, що він добре використовує ідіоми Python, що він є природним або добре …


10
Як бути успішним програмістом без ступеня CS [закрито]
Відмова від відповідальності (Будь ласка, прочитайте, перш ніж перейти до відповіді): Я бачив низку питань, подібних до того, яке я хотів би задати, тому ось кілька подібних питань. ІМХО Вони ні про що, про що я прошу, вони не є цілком ретельними, як я сподіваюся (я не маю на увазі …
46 education 

15
Чи можливо любителю стати хорошим програмістом? [зачинено]
Професійний штатний програміст може зробити чудову роботу, постійно навчаючись на своїй роботі. Як може програміст-любитель тренуватися, щоб стати хорошим програмістом? ** Якщо ви любите грати музику або співати, ви можете це зробити, тому що це ваше хобі і вам цікаво, і ви можете стати хорошим співаком або музичним плеєром. Але …
46 training 

9
Яка найбільш ортогональна мова програмування? [зачинено]
Мені неодноразово дратується те, що треба навчати першокурсників про особливі мовні правила (наприклад, розпад масиву до вказівника), які абсолютно не мають нічого спільного з програмуванням. Тому я задумався: Яка мова програмування з найменшою кількістю спеціальних мовних правил, де все є першокласним і може бути складено без набридлих технічних обмежень? Чи …

12
Чому реляційні бази даних не підтримують повернення інформації у вкладеному форматі?
Припустимо, я будую блог, який хочу мати публікації та коментарі. Таким чином я створюю дві таблиці: таблицю 'posts' зі стовпцем 'id', що автоматично збільшується, та таблицю «коментарів», що має зовнішній ключ «post_id». Тоді я хочу запустити те, що, мабуть, буде моїм найпоширенішим запитом, а саме - отримання публікації та всіх …
46 database  sql  rdbms  query 

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