Какой рейтинг вас больше интересует?
|
Главная / Главные темы / Тэг «рефакторинг»
Observer vs Pub-Sub 2015-11-11 23:34:01
Observer и Pub-sub, наверное самые известные паттерны взаимодействия в мире разработки ...
+ развернуть текст сохранённая копия
Observer и Pub-sub, наверное самые известные паттерны взаимодействия в мире разработки интерфейсов и JavaScript. Но несмотря на свою известность, некоторые разработчики считают эти паттерны одинаковыми, что и послужило подспорьем написать данную статью.
Пофилософствуем
Тэги: design, javascript, patterns, web-разработка, веб-разработка, паттерны, проектирование, проектирования, рефакторинг
Как правильно писать RFP на разработку ПО 2015-10-23 12:48:45
Данная статья предназначена вам, дорогие заказчики, будущие и настоящие, наши ...
+ развернуть текст сохранённая копия
Данная статья предназначена вам, дорогие заказчики, будущие и настоящие, наши и не наши. Говорят, что правильно заданный вопрос — половина ответа. Правильно написаное задание заказчиком — залог хорошего и точного предложения от нас, разработчиков, а в итоге — хорошо сделанного проекта, в срок, в рамках бюджета и с высоким качеством.
Уже много лет приходится работать на проектах по разработке ПО. За 15 лет через меня прошли сотни запросов на предложения самого разного качества. Во многих из них я наблюдаю общие проблемы. Попробую — обобщить основные узкие места и дать рекомендации по тому, как избежать их в будущем.
Итак, перед вами поставлена задача — найти достойного подрядчика на разработку ПО. Чтобы найти самого лучшего, вы решаете подготовить и разослать по списку достойных компаний запрос на предложение, провести тендер, и в итоге сделать выбор. Вы открыли чистый лист в ворде и… С чего начать?
Читать дальше →
Тэги: e-commerce, rfp, анализ, веб-разработка, запросы, предложения, программирование, проектирование, разработка, рефакторинг, систем
[Перевод] Киски: Рефакторинг. Часть третья или причесываем шероховатости 2015-07-24 15:00:23
+ развернуть текст сохранённая копия
В первой и второй частях серии статей мы проделали немного работы по разделению того кода и тех лишних действий, которые мы понаписали в одной функции. В основном же мы имели дело с классами HttpClient и Cache, и их разными реализациями, чтобы написать тестируемый клиент для апи кисок.
Представление данных
До этого мы обращали много внимания на поведение и общую структуру кода, но заб иывали про на данные, с которыми имеем дело. Сейчас у нас все является строками, включая возвращаемое значение CatApi::getRandomImage(). То есть вызывая этот метод, мы «знаем», что получим строку. Говорю «знаем», так как PHP может вернуть все — объект, ресурс, массив и т.д. Тем не менее, хоть в случае с RealCatApi::getRandomImage() мы и можем быть уверенны, что нам придет строка, так как мы явно приводим значение к ней, мы не можем точно сказать, что эта строка будет «полезна» (валидна) для того, кто вызвал этот метод: это может быть и пустая строка, строка, которая не содержит URL (типа «I am not a URL») и так далее.
Читать дальше →
Тэги: matthias, noback, php, refactoring, киски, кисок, клиент, программирование, проектирование, рефакторинг
[Перевод] Киски: Рефакторинг. Часть вторая или лечение зависимостей 2015-07-22 15:00:42
... цикла статей про рефакторинг от Matthias Noback ...
+ развернуть текст сохранённая копия
Этот перевод является продолжением цикла статей про рефакторинг от Matthias Noback.
Мир не так надежен, чтобы на него опираться
Во время юнит тестирования нет необходимости в том, чтобы внешняя среда была вовлечена в сам процесс тестирования. Выполняя реальные запросы к базе данных, HTTP запросы или же запись в файлы, вы замедляете тесты, так как эти операции непредсказуемы. Например, если сервер, к которому вы совершаете запросы во время тестирования упал или же ответил не лучшим образом — юнит тест упадет даже в том случае, если все остальное работает верно. Это плохо, так как юнит тесты должны падать только тогда, когда код выполняет что-то, чего он делать не должен.
Как можно было заметить в прошлой статье, оба класса (CachedCatApi и RealCatApi) зависят от внешних факторов. Первый из них записывает файлы в файловую систему, второй — делает реальные HTTP запросы, в то время как эти моменты довольно низкоуровневые и для них не используются правильные инструменты. Более того, в этих классах не учитывается большое количество пограничных случаев.
Оба класса могут быть лишены подобных зависимостей и для этого достаточно того, чтобы новые классы инкапсулировали все эти низкоуровневые детали. Например, мы запросто можем убрать вызов file_get_contents() в другой класс с названием FileGetContentsHttpClient.
class FileGetContentsHttpClient
{
public function get($url)
{
return @file_get_contents($url);
}
}
Читать дальше →
Тэги: dependency, injection, matthias, noback, php, refactoring, зависимостей, киски, кисок, клиент, лечение, программирование, проектирование, рефакторинг
PhpStorm: Tips and tricks. Часть 1 2015-07-21 22:36:33
Сегодня будем говорить о некоторых возможностях замечательной IDE PhpStorm. Программисты из ...
+ развернуть текст сохранённая копия
Сегодня будем говорить о некоторых возможностях замечательной IDE PhpStorm. Программисты из компании Jetbrains вкладывают огромные силы в создание своего продукта, в результате мы имеем мощную и одну из лучших IDE для языка программирования php. Думаю времена, когда хотелось выделиться программированием в Notepad++, практически ушли. Разрабатывать на коленке современные большие проекты с множеством файлов крайне затруднительно без хорошего инструмента.
Читать дальше →
Тэги: ide, php, phpstrom, проектирование, разработка, рефакторинг
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 ...
Главная / Главные темы / Тэг «рефакторинг»
|
Взлеты Топ 5
Падения Топ 5
|