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

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

10
Почему «Выбрать * из таблицы» считается плохой практикой
Вчера я обсуждал с программистом «хобби» (я сам профессиональный программист). Мы сталкивались с некоторыми из его работ, и он сказал, что он всегда запрашивает все столбцы в своей базе данных (даже на / в производственном сервере / коде). Я пытался убедить его не делать этого, но пока не получилось. На …
96 database  sql  mysql  bad-code 

8
Как защитить REST API только для надежных мобильных приложений
Как мне убедиться, что мой REST API отвечает только на запросы, сгенерированные доверенными клиентами, в моем случае мои собственные мобильные приложения? Я хочу предотвратить нежелательные запросы, поступающие из других источников. Я не хочу, чтобы пользователи вводили серийный ключ или что-то еще, это должно происходить негласно, после установки и без какого-либо …
96 security  rest  mobile 

3
Почему языки программирования, особенно C, используют фигурные скобки, а не квадратные?
Определение «языка C-Style» практически может быть упрощено до «использования фигурных скобок ( {})». Почему мы используем этот конкретный символ (и почему не что-то более разумное, например [], которое не требует клавиши Shift, по крайней мере, на клавиатурах США)? Есть ли какая-то реальная выгода для производительности программиста, которая исходит из этих …

13
Как предупредить других программистов о реализации классов
Я пишу классы, которые «должны использоваться особым образом» (я думаю, все классы должны ...). Например, я создаю fooManagerкласс, который требует вызова, скажем, Initialize(string,string). И, чтобы продвинуть пример немного дальше, класс был бы бесполезен, если бы мы не слушали его ThisHappenedдействие. Я хочу сказать, что класс, который я пишу, требует вызовов …

8
Является ли снятие отпечатков пальцев браузером жизнеспособной техникой для идентификации анонимных пользователей?
Является ли снятие отпечатков в браузере достаточным методом для уникальной идентификации анонимных пользователей? Что, если вы включите биометрические данные, такие как жесты мыши или шаблоны печатания? На днях я столкнулся с экспериментом Panopticlick, который EFF запускает на отпечатках браузера . Конечно, я сразу же подумал о последствиях приватности и о …

14
Язык программирования C все еще используется?
Я программист на C #, и большая часть моей разработки предназначена для веб-сайтов вместе с несколькими приложениями Windows. Что касается C, я давно не использовал его, так как в этом не было необходимости. Меня удивило, когда одна из моих подруг сказала, что ей нужно изучать C для тестирования рабочих мест, …

25
Как программисты бросают работу? [закрыто]
Я думаю о том, чтобы уйти из моего нынешнего работодателя и подумать, как продвигается этот процесс в мире программирования. Сейчас у нас много проектов, и я единственный разработчик. У нас есть 4-5 проектов, которые достаточно велики и должны быть выполнены в ближайшие несколько месяцев, и даже несколько дольше. Я ухожу, …


13
Как бороться с «почти хорошим» кодом от младшего разработчика? [закрыто]
У меня есть вопрос об управлении командой. Прямо сейчас я имею дело с младшим разработчиком, который работает удаленно с фабрики кодирования. Парень открыт для критики и готов учиться, но у меня есть некоторые сомнения в том, насколько я должен подталкивать некоторые вещи. Прямо сейчас, когда что-то является прямым и очевидным …

9
Почему я должен использовать внедрение зависимости?
Я с трудом ищу ресурсы о том, почему я должен использовать внедрение зависимости . Большинство ресурсов, которые я вижу, объясняют, что он просто передает экземпляр объекта другому экземпляру объекта, но почему? Это только для более чистой архитектуры / кода или это влияет на производительность в целом? Почему я должен делать …

12
Когда стоимость вызовов функций все еще имеет значение в современных компиляторах?
Я религиозный человек и стараюсь не совершать грехов. Вот почему я склонен писать маленькие ( меньше, чем это , если перефразировать Роберта К. Мартина) функции, чтобы соответствовать нескольким заповедям, заказанным Библией Чистого кода . Но, проверяя некоторые вещи, я попал на этот пост , ниже которого я прочитал этот комментарий: …

2
Что такое JavaScript на самом деле?
Все это началось, когда я искал способ проверить свою веб-страницу на соответствие JavaScript, например, HTML-валидатор W3C . Я еще не нашел один. Так дайте мне знать, если вы знаете что-нибудь ... Я искал официальную страницу JavaScript и нашел скрипт ECMA . Эти люди стандартизировали язык сценариев (мне больше не хочется …

13
Должны ли мы устранить локальные переменные, если мы можем?
Например, чтобы сохранить процессор в Android, я могу использовать такой код: PowerManager powerManager = (PowerManager)getSystemService(POWER_SERVICE); WakeLock wakeLock = powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "abc"); wakeLock.acquire(); но я думаю локальные переменные powerManagerи wakeLockмогут быть устранены ((PowerManager)getSystemService(POWER_SERVICE)) .newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "MyWakelockTag") .acquire(); похожая сцена появляется в окне предупреждений iOS, например: из UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"my title" …

2
Что такое шаблон «Свободная монада + переводчик»?
Я видел людей, говорящих о Free Monad с Interpreter , особенно в контексте доступа к данным. Что это за образец? Когда я мог бы хотеть использовать это? Как это работает, и как бы я это реализовал? Я понимаю (из сообщений , таких как это ) , что речь идет о …


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