| 
					
					
						Какой рейтинг вас больше интересует?
						
						
						
					 | 
						Главная /  Главные темы /  Тэг «проектирование» 
						
							
																																					Архитектура модульных React + Redux приложений 2. Ядро   2017-04-24 10:04:48
										 
										В первой части я уделил внимание только общей концепции: редюсеры, компоненты и экшны чаще меняются  ... 
										
										+ развернуть текст   сохранённая копия 
										В первой части я уделил внимание только общей концепции: редюсеры, компоненты и экшны чаще меняются одновременно, а не по отдельности, поэтому и группировать и их целесообразнее по модулям, а не по отдельным папкам actions , components , reducers . Также к модулям были предъявлены требования:
 
быть независимыми друг от другавзаимодействовать с приложением через API ядра 
В этой части я расскажу о структуре ядра, подходящей для разработки data-driven систем. Читать дальше →
										
										Тэги: javascript , react , redux , анализ , веб-сайтов , модульное , программирование , проектирование , разработка , рефакторинг , систем [Перевод] Трудные уроки: пять лет с Node.js   2017-04-21 11:53:41
										 
										После пяти лет работы с Node.js я многое понял. Я уже делился некоторыми историями, но в этот раз  ... 
										
										+ развернуть текст   сохранённая копия После пяти лет работы с Node.js я многое понял. Я уже делился некоторыми историями, но в этот раз хочу рассказать о том, какие знания дались труднее всего. Баги, проблемы, сюрпризы и уроки, которые вы можете использовать в собственных проектах!
 
 
 Базовые концепцииВ каждой новой платформе есть свои хитрости, но в данный момент эти концепции для меня вторичны. Разобраться в своём баге — хороший способ гарантированного обучения. Даже если это немного болезненно!
 
 
 КлассыКогда я только начал работать с Node.js, то написал скрапер. Очень быстро я понял, что если ничего не предпринять, то он будет осуществлять много запросов параллельно. Одно это стало важным открытием. Но поскольку я ещё не полностью усвоил мощь экосистемы, то сел и написал собственный ограничитель параллелизма. Он работал и проверял, что в каждый момент времени активны не более N запросов одновременно.
 Читать дальше →
 
										Тэги: async.js , callback , coffeescript , express , gatsby , javascript , jenkins , jshint , mocha , nan , new , node.js , react.js , relic , toobusy-js , веб-сайтов , веб-сервисов , проектирование , разработка , рефакторинг , тестирование Опыт внедрения Tarantool в сервисе Calltouch   2017-04-20 11:34:45
										
										  + развернуть текст   сохранённая копия 
 
										
 В современном мире информационных технологий у всех — и у крупных, и у небольших компаний — существует большое количество различных API. И отказоустойчивость, несмотря на многие best practices, чаще всего не позволяет гарантировать 100%-й возможности корректно обрабатывать запросы клиентов, а также восстанавливаться после сбоя и продолжать обработку запросов, утерянных из-за сбоя. Эта проблема возникает даже у больших игроков в интернете, не говоря уже о не очень крупных компаниях. Я работаю в компании Calltouch, и наша основная цель — добиться отказоустойчивости сервисов и получить возможность управлять данными и запросами, которые клиенты совершали в API-сервис. Нам нужна возможность быстро восстанавливать сервис после сбоя и обрабатывать запросы к сервису, у которого возникли проблемы. Начинать обработку с момента отказа. Всё это позволит приблизиться к состоянию, когда почти невозможно потерять запросы клиентов на нашей стороне. Разбирая предложенные на рынке решения, мы открыли для себя превосходную производительность и практически безграничные возможности по управлению данными и их обработке — с очень незначительными требованиями к техническим и финансовым ресурсам.  Читать дальше →
										 
										Тэги: calltouch , group , lua , mail.ru , tarantool , анализ , блог , веб-сайтов , высокая , компании , проектирование , производительность , разработка , систем [Перевод] Сравнение производительности версий PHP   2017-04-18 14:26:51
										
										  + развернуть текст   сохранённая копия 
										
В этой статье мы рассмотрим результаты нескольких бенчмарков, начиная с PHP 5 и вплоть до экспериментальной JIT-ветки (сейчас в разработке). На момент написания не было известно, появится ли до PHP 8 ещё какая-то основная версия, например PHP 7.2. Но логично предположить, что возможности экспериментальной ветки как минимум будут включены в PHP 8.  Читать дальше →
										 
										Тэги: group , mail.ru , php , анализ , блог , высокая , компании , проектирование , производительность , рефакторинг , систем , теги , читает Архитектура модульных React + Redux приложений   2017-04-14 03:27:24
										
										  
 ... 
										
										+ развернуть текст   сохранённая копия 
										 
Большинство разработчиков начинает знакомство с Redux с Todo List Project. Это приложение имеет следующую структуру:
 actions/
  todos.js
components/
  todos/
    TodoItem.js
    ...
constants/
  actionTypes.js
reducers/
  todos.js
index.js
rootReducer.js
 
На первый взгляд такая организация кода кажется логичной, ведь она напоминает стандартные соглашения многих backend MVC-фреймворков:
 app/
  controllers/
  models/
  views/
 
На самом деле, это неудачный выбор как для MVC, так и для React+Redux приложений по следующим причинам:
 
С ростом приложения следить за взаимосвязью между компонентами, экшнами и редюсерами становится крайне сложноПри изменении экшна или компонента с большой вероятностью потребуется внести изменения и в редюсер. Если количество файлов велико, скролить IDE вверх/вниз не удобноТакая структура потворствует копипасте в редюсерах 
Не удивительно, что многие авторы(раз, два, три) советуют структурировать приложение по «функциональности» (by feature ). Читать дальше →
										 
										Тэги: javascript , modules , react , react-router , redux , redux-thunk , анализ , веб-сайтов , проектирование , разработка , рефакторинг , систем  
						Главная / Главные темы / Тэг «проектирование»
					 | 
					
					
										Взлеты Топ 5 Падения Топ 5 |