Программная инженерия

Q & A для профессионалов, преподавателей и студентов, работающих в жизненном цикле разработки систем

28
Насколько важна изящная деградация JavaScript?
Должны ли веб-разработчики продолжать прилагать усилия для постепенного улучшения наших веб-приложений с помощью JavaScript, чтобы обеспечить постепенное снижение функциональности и, тем самым, обеспечение доступности? Или мы должны потратить это время на новые функции или другие области развития? Подтекст этого вопроса будет таким: Сколько наших клиентов / клиентов / пользователей используют …

30
Какие функции вы хотели бы иметь в PHP? [закрыто]
Так как сейчас сезон отпусков и все загадывают желания, мне интересно, какие языковые функции вы бы хотели добавить в PHP? Я заинтересован в некоторых практических предложениях / пожеланиях для языка. Под практическим я подразумеваю: Что-то, что можно сделать практически (не: «Я бы хотел, чтобы PHP угадал, что означал мой код, …

3
Разбить случай по умолчанию в коммутаторе
Я немного озадачен тем, когда включаю или не включаю breakпосле последнего случая, часто default. switch (type) { case 'product': // Do behavior break; default: // Do default behavior break; // Is it considered to be needed? } breakв моем понимании единственная цель - остановить выполнение кода через остальную часть регистра …

5
Почему% s лучше чем + для конкатенации?
Я понимаю, что мы должны использовать %sдля объединения строк, а не +в Python. Я мог сделать любое из: hello = "hello" world = "world" print hello + " " + world print "%s %s" % (hello, world) print "{} {}".format(hello, world) print ' '.join([hello, world]) Но почему я должен использовать …
88 python  strings 

3
Почему аппаратно-ускоренная векторная графика не снимается?
Я работаю над приложением, которое включает в себя манипулирование векторными путями в режиме реального времени со скоростью 60 кадров в секунду, и я очень удивлен тем, как мало информации по этому вопросу. Сначала я пытался реализовать свою идею с помощью CoreGraphics, но она не соответствовала моим целям . Затем я …

9
Проверьте сначала против обработки исключений?
Я работаю над книгой «Head First Python» (это мой язык для изучения в этом году), и я попал в раздел, где они спорят о двух методах кода: Проверка First против Exception обработка. Вот пример кода Python: # Checking First for eachLine in open("../../data/sketch.txt"): if eachLine.find(":") != -1: (role, lineSpoken) = …

3
Почему база данных Web SQL устарела?
Я делаю гибридное приложение для Android. Сначала я решил использовать localStorage, потратив 2 дня, я понял, что это очень странно, и поэтому бросил его. Затем я поднял indexedDB, потратив весь сегодняшний день и фактически получив вывод в Google Chrome, он не работает внутри WebView приложения для Android. И я никогда …

6
Лучше использовать assert или IllegalArgumentException для обязательных параметров метода?
В Java, что более рекомендуется и почему? Оба типа будут генерировать исключения, поэтому обработка их одинакова. assertнемного короче, но я не уверен, насколько это важно. public void doStuff(Object obj) { assert obj != null; ... } против public void doStuff(Object obj) { if (obj == null) { throw new IllegalArgumentException("object …

8
Что такое «мягкое кодирование»?
В этой статье Алекса Пападимулиса вы можете увидеть этот фрагмент: private void attachSupplementalDocuments() { if (stateCode == "AZ" || stateCode == "TX") { //SR008-04X/I are always required in these states attachDocument("SR008-04X"); attachDocument("SR008-04XI"); } if (ledgerAmnt >= 500000) { //Ledger of 500K or more requires AUTHLDG-1A attachDocument("AUTHLDG-1A"); } if (coInsuredCount >= …
87 design 

10
Где грань между логикой приложения модульного тестирования и ненадежными языковыми конструкциями?
Рассмотрим функцию, подобную этой: function savePeople(dataStore, people) { people.forEach(person => dataStore.savePerson(person)); } Это может быть использовано так: myDataStore = new Store('some connection string', 'password'); myPeople = ['Joe', 'Maggie', 'John']; savePeople(myDataStore, myPeople); Давайте предположим , что Storeимеют свои собственные модульные тесты, или поставщик при условии. В любом случае мы верим Store. …

13
Считается ли это анти-паттерном для написания SQL в исходном коде?
Считается ли это анти-паттерном для жесткого кодирования SQL в приложение, подобное этому: public List<int> getPersonIDs() { List<int> listPersonIDs = new List<int>(); using (SqlConnection connection = new SqlConnection( ConfigurationManager.ConnectionStrings["Connection"].ConnectionString)) using (SqlCommand command = new SqlCommand()) { command.CommandText = "select id from Person"; command.Connection = connection; connection.Open(); SqlDataReader datareader = command.ExecuteReader(); while …
87 c#  sql 

2
MIT против BSD против двойной лицензии
Мое понимание таково: MIT- лицензированные проекты можно использовать / распространять в BSD- лицензированных проектах. Проекты, лицензированные BSD, могут использоваться / распространяться в проектах, лицензированных MIT. Лицензии MIT и BSD с 2 пунктами по существу идентичны . BSD 3-клоз = BSD 2-клоз + предложение «без одобрения» Выдача двойной лицензии позволяет пользователям …



29
Может ли моя компания отдать права ИС на приложение, которое я часами списал для другого стартапа? [закрыто]
Я стажер в медицинской компании (без оплаты), назовем это Компанией А, и я заметил, что они используют много бумажных форм для того, что можно сделать на компьютере. Файлы Excel для вещей, которых не должно быть в Excel. Поэтому я хотел улучшить свое программирование и подумал, что это лучшая возможность. Я …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.