Алексей Струков: Подскажите, ещё, пожалуйста. Как лучше обрабатывать запросы из Mongo? Нужно ли использовать обещания, и можно ли хардкодить прямо в callBack с (err, data)?
db.collection.findOne({}, (err, data) => {
// сюда хордкодить?
})
// или делать так:
db.collection.findOne({}, checkData)
function checkData(err, data) {
// some actions
}
// или вообще делать обещания?
Верно ли, что функциональным называется только лишь то программирование, когда мы обязательно в функцию передаём другую функцию, либо возвращаем функцию?
Можно ли Ваш ответ скомбинировать с ответом abberati? То есть чтобы formatData возвращал не скопированный массив, а правила маппинга. А сам метод .map использовать прямо в alert:
var array = [1, 2, 3]
alert(array.map(formatData(formatter, validator)));
А почему именно 10000? Есть какой-то метод вычисления?
И почему Google не использует метод загрузки пачками? Он для каждой страницы делает HTTP-запрос.
Правильно ли, что в JSON, между front-end и back-end, должны передаваться только такие данные, которые имеют бизнес-формат? То есть могут быть легко поняты человеком. К примеру: _id вряд ли будет понят человеком, и неудобен для использования. Тогда зачем его "толкать" на front-end из базы?
Придется копипастить алгоритм? А если он занимает 100к строк кода, мне из Ангуляра всё переписывать под mobile? А не проще ли запилить сервер PHP/Java/Node на мульти-процессорной машине, и всё там считать? И ничего копипастить не надо. А по поводу API, можно и разные роутеры делать в Express. Но фишка в том, что функция уже написана, и к ней доступ есть на бэке.
Дело в том, что не каждый ПК вытащит расчет миллиона знаков числа pi. Web-приложение не может купить более современное железо каждому юзеру, но зато можно купить железо серверное, и все расчеты вести там. Для этого и Get/Post. Это первое. Второе. А если я захочу mobile-app для этой же процедуры? Мне придется алгоритм поиска миллиона знаков в прямом смысле слова КопиПастить из Ангуляра. А если я сделаю его на сервере, мне просто нужно будет послать HTTP-запрос из Ангуляра, и из Мобильного приложения. И алгоритм поиска не нужно копипастить.
Евгений Сатонин: Если CSS-стили у всех фото одинаковые, можно обойтись классом. Если разные — делать индивидуально, или группировать фотографии по группам схожести в отдельные классы (если есть такие).