Подъехала третья часть из серии статей по функциональному программированию. Сегодня мы расскажем обо всех типах этой парадигмы и на примерах покажем их использование. Подробнее о примитивных типах, обобщенных типах и многом другом под катом!
Рубрика «Программирование» - 385
Функциональное мышление. Часть 3
2018-10-16 в 6:34, admin, рубрики: .net, F#, fsharp, fsharplangru, microsoft, Блог компании Microsoft, математика, Программирование, функциональное программированиеОблачные сервисы Amazon и анализ инвестиционного портфеля
2018-10-15 в 16:13, admin, рубрики: Amazon Web Services, AWS, big data, data mining, etl, python, sql, акции, Анализ и проектирование систем, Облачные вычисления, облачные сервисы, отчеты, Программирование, финансы в IT, ценные бумагиВ последнее время на фондовых рынках наблюдается высокая волатильность, когда, например, стабильная бумага известной компании может враз потерять сразу несколько процентов на новостях о санкциях против ее руководства или наоборот взлететь до небес на позитивном отчете и ожиданиях инвесторов о сверхприбыльных дивидендах.
Как же определить, принесло ли владение данной ценной бумагой доход или одни лишь убытки и разочарование?

В этой статье я расскажу Вам как определять и визуализировать скорректированный финансовый результат по ценным бумагам.
На примере клиентской отчетности Открытие Брокер мы рассмотрим парсинг и консолидацию брокерских отчетов для фондового рынка, построение архитектуры облачной отчетной системы с последующим простым и удобным анализом в AWS Quicksight.
Читать полностью »
Павел 2.0: консультант-рептилоид на JS, node.js с сокетами и телефонией
2018-10-15 в 10:52, admin, рубрики: express.js, intercom, javascript, node.js, socket.io, voximplant, Блог компании Voximplant, Программирование, Разработка веб-сайтовВот и отгремел наш INTERCOM’18, c преферансом и бизнес-кейсами. Как обычно, вход на коференцию был платным: желающие могли купить билеты на TimePad по полной цене, либо… получить скидку у консультанта-рептилоида прямо на сайте. В прошлом году это работало как привычный коллбэк: вы оставляете телефон в специальной форме, Павел звонит вам через минуту и задает вопросы; чем больше правильных ответов, тем выше скидка. В этот раз мы решили поменять механику, сделав ее сложнее как технически, так и в плане вопросов. Под катом – кишки Павлика 2.0, с текущей нодой и веб-сокетами, не забудьте надеть спецодежду перед вскрытием.

Как я строил гексапод в Space Engineers. Часть 1
2018-10-15 в 10:39, admin, рубрики: javascript, игры, обратная кинематика, Программирование, робототехника, робототехника своими рукамиЗдравствуйте. Я хочу рассказать про проектирование и программирование системы управления конечностями в гексаподе, построенном в Space Engineers.
Забегая вперед скажу, что всё, что касается программирования в Space Engineer, будет в следующей статье. В этой я расскажу про обратную кинематику и покажу прототип на HTML Canvas в котором я занимался отладкой алгоритмов.

Kronos: никаких путешествий во времени даже в распределенных системах
2018-10-15 в 10:01, admin, рубрики: key-value storage, Алгоритмы, Блог компании Проектная школа программирования GoTo, графы, логические часы, Программирование, распределенные системы, транзакции. acidВ распределенных системах есть ряд фундаментальных проблем: эффективные распределенные транзакции, exactly-once обработка данных, точная синхронизация физических часов. Для решения последней проблемы были изобретены разные виды логических часов.
Тем не менее, векторные часы обладают неприятными свойствами: они вводят условную зависимость между событиями там, где ее нет, и теряют ее там, где она на самом деле есть.
Однако, можно придумать нечто более надежное — Kronos. В статье мы посмотрим на алгоритм учета причинно-следственной связи и его применение для построения Key-Value хранилища с распределенными транзакциями.

Как подружить питон с Невидимым Интернетом? Основы разработки I2P приложений на Python и asyncio
2018-10-15 в 9:51, admin, рубрики: asyncio, i2p, p2p, python, vpn, анонимность, децентрализованные сети, информационная безопасность, приватность, Программирование, файлообмен
Проект Невидимый Интернет (далее просто I2P) представляет разработчикам платформу для разработки приложений с усиленными требованиями по приватности пользователей. Это виртуальная сеть поверх обычного Интернета, в которой узлы могут обмениваться данными и при этом не раскрывать свой настоящий IP адрес. Вместо IP адресов внутри Невидимого Интернета соединения происходят между виртуальными адресами, которые называются I2P Destination. Можно иметь сколько угодно таких адресов и менять их хоть для каждого соединения, они не предоставляют другой стороне никакой информации о настоящем IP адресе клиента.
В этой статье описаны базовые вещи, которые нужно знать для написания I2P приложений. Примеры кода приведены на Python с использованием встроенного асинхронного фреймворка asyncio.
Learn OpenGL. Урок 6.2 – PBR. Аналитические источники света
2018-10-15 в 9:43, admin, рубрики: c++, irradiance, OpenGL, opengl 3, Pbr, render equation, Программирование, разработка игр
В предыдущем уроке был дан обзор основам реализации физически правдоподобной модели рендеринга. В этот раз мы перейдем от теоретических выкладок к конкретной реализации рендера с участием непосредственных (аналитических) источников света: точечных, направленных или прожекторного типа.
Читать полностью »
Перегрузка, которая запрещена, или bridge-методы в Java
2018-10-15 в 8:15, admin, рубрики: bytecode, java, jvm, overloading, Блог компании Haulmont, Программирование
В большинстве моих собеседований на технические позиции есть задача, в которой кандидату необходимо реализовать 2 очень похожих интерфейса в одном классе:
Реализуйте оба интерфейса одним классом, если это возможно. Объясните, почему это возможно или нет.
interface WithPrimitiveInt {
void m(int i);
}
interface WithInteger {
void m(Integer i);
}
От переводчика: Эта статья не призывает вас задавать такие же вопросы на интервью. Но если вы хотите быть во всеоружии, когда этот вопрос зададут вам, то добро пожаловать под кат.
Нестыдные вопросы про жизненный цикл
2018-10-15 в 7:49, admin, рубрики: android, java, Блог компании FunCorp, вопросы на собеседовании, жизненный цикл, Программирование, разработка мобильных приложений, Разработка под android
Каждый разработчик сталкивался с вопросами про жизненный цикл Activity: что такое bind-сервис, как сохранить состояние интерфейса при повороте экрана и чем Fragment отличается от Activity.
У нас в FunCorp накопился список вопросов на похожие темы, но с определёнными нюансами. Некоторыми из них я и хочу с вами поделиться.
Разработка классов-дескрипторов на C++-CLI
2018-10-15 в 7:48, admin, рубрики: .net, c++, Программирование, управление родными ресурсамиОглавление
Введение
1. Шаблон Basic Dispose в C++/CLI
1.1. Определение деструктора и финализатора
1.2. Использование семантики стека
2. Управляемые шаблоны
2.1. Интеллектуальные указатели
2.2. Пример использования
2.3. Блокировка финализаторов
Список литературы
Введение
C++/CLI — один из языков платформы .NET Framework — редко используется для разработки больших самостоятельных проектов. Его главное назначение — создание сборок для взаимодействия .NET с родным (неуправляемым) кодом. Соответственно, весьма широко используются классы, называемые классами-дескрипторами, управляемые классы, имеющие указатель на родной класс в качестве члена. Обычно такой класс-дескриптор владеет соответствующим родным объектом, то есть он должен его удалить в надлежащий момент.Читать полностью »

