Pull to refresh
11
0
Дьяченко Илья @Delias

Front-end developer

Send message

Функциональный TypeScript

Reading time 5 min
Views 13K

Когда обсуждается функциональное программирование, часто разговор заходит о механизме, а не о базовых принципах. Функциональное программирование, это не про монады или моноиды, это в первую очередь про написание программ с использованием обобщённых функций. Эта статья о применнии функционального мышления в рефакторинге TypeScript кода.


Примечание от переводчика: весь код для удобства я оформил в репозитории.


Для этого мы будем использовать три техники:


  • функции вместо примитивов
  • трансформация данных через pipeline
  • выделение общих (generic) функций

Начнём же!

Читать дальше →
Total votes 22: ↑21 and ↓1 +20
Comments 6

ES6 const это не про иммутабельность

Reading time 2 min
Views 12K
Определение const вводит в заблуждение, которое должно быть развеяно:

const создаёт иммутабельную ссылку на объект, но это не значит, что значение нельзя будет изменить — нет, это значение может быть изменено. Следующий код не будет являться ошибкой:

const foo = {};
foo.bar = 42;
console.log(foo.bar);
// → 42

const arr = [0, 20, 30];
arr[0] = 10;
console.log(arr);
// → [10, 20, 30]
Читать дальше →
Total votes 40: ↑27 and ↓13 +14
Comments 67

Используем незадействованные аккаунты Google Apps

Reading time 1 min
Views 40K
На самом деле топик претендует на капитанский, но рискну его написать, т.к. я не знал, что такая возможность есть, и пару дней был в отчаянии.
Как мы знаем, недавно google отключил регистрацию Google Apps Free для новых пользователей, оставив возможность пользоваться сервисом для доменов, которые уже были зарегистрированы.
Вначале меня эта новость огорчила, и я попытался поискать альтернативы, но стало понятно, что их нет, если не считать Яндекс, который в своё время не устроил качеством работы почты и отсутствием такой тесной интеграции со смартфоном. Стоимость сервиса от google для личных любительских проектов высока. Но выход был найден!
Читать дальше →
Total votes 38: ↑33 and ↓5 +28
Comments 42

Забросить мышь и клавиатуру! Почти стартап из Украины: CrossView

Reading time 2 min
Views 823

Сегодня возникло желание поделиться успехом моих земляков из Донецка. Ребята сделали невозможное, ну или почти невозможное. Они взяли то, что лежало на поверхности, приправили духом стартапа и соусом соперничества, что в итоге позволило команде CORE INVADER занять первое место во всеукраинском конкурсе Imagine Cup 2010.
Читать дальше →
Total votes 56: ↑39 and ↓17 +22
Comments 40

Бесплатные точки Wi-Fi ОГО! для всех абонентов ОГО!

Reading time 2 min
Views 7.7K
Укртелеком продолжает «причёсываться» перед продажей, и после совсем недавнего нашумевшего подарка с безлимитным 3G интернетом решил нас порадовать ещё несколькими плюшками.
image
Читать дальше →
Total votes 44: ↑35 and ↓9 +26
Comments 58

Open Atrium — collaborating по-друпаловски

Reading time 2 min
Views 1.9K
Изучая рынок систем управления проектами стало любопытно, а есть ли какой-то подобный модуль и у всеми нами любимой Drupal. Оказалось что есть, и не просто модуль а готовая полноценная сборка, правда пока что альфа.
Open Atrium в себя вмещает:
  • Atrium Blog — позволяет вам общаться со своей командой и остальными пользователями.
  • Atrium Documents — управляйте статьями и аттачами вместе со своей групой
  • Atrium Calendar — делитесь своими событиями и встречами с группой
  • Atrium Case Tracker — система тикетов
  • Atrium Dashboard
  • Atrium Intranet
  • Atrium Profile
  • Atrium Shoutbox — интратвиттер
  • Spaces blog


Обо всём этом прошу под кат.
Читать дальше →
Total votes 14: ↑10 and ↓4 +6
Comments 12

Microsoft анонсировала новинку Windows Home Server

Reading time 1 min
Views 574
Видео-центр, автоматическое и централизованное создание резервных копий по расписанию, удалённый доступ и возможности сетевого доступа — всё это нас ожидает в Windows Home Server «Vail» Beta.
Для чего это нужно простому пользователю думаю придётся ещё Майкрософту потрудиться объяснить, привить и приучить, а пока что для гиков в свободном доступе после регистрации в Windows Home Server Connect program
Кому лень что-то пробовать — под катом видео.
Читать дальше →
Total votes 23: ↑15 and ↓8 +7
Comments 17

В Украине интернет-магазины могут потерять налоговые льготы

Reading time 1 min
Views 462
Навеяно недавним постом об отказе от бесплатного образования.
Дожимают по всем фронтам. В Украине теперь оказывается интернет-магазин считается сверхприбыльным предприятием, исходя из чего с 1 января 2011 года может лишиться привилегий упрощенцев (единого налога).
Думаю можно удалять хабразакладки аля «как открыть интернет-магазин с голой жопой».
Эти изменения предусмотрены проектом изменений в закон «Об упрощенной системе налогообложения, учета и отчетности субъектов малого предпринимательства». Печально это всё.
Total votes 20: ↑13 and ↓7 +6
Comments 20

Как я получил купон на 300 грн от Google Adwords

Reading time 2 min
Views 1.2K
Пришло время выделить свой первый рекламный бюджет для сайта, и побывав на бесплатном семинаре от Яндекса в Донецке, целиком хотел вложить его (свой бюджет) в Яндекс.Директ.
Но клюнул на удочку Google Adwords.
Под катом странная особенность гугла по приёму платежей и предостережение для таких же новичков в контекстной рекламе как и я.
Читать дальше →
Total votes 34: ↑7 and ↓27 -20
Comments 8

Twitter Reactions или что по поводу этой страницы думают твиттеряне?

Reading time 1 min
Views 443
В последнее время всё больше стал пользоваться хромом и сегодня решил окончательно на него перейти — подкупила установка расширений без перезагрузки. Так вот, только что нашел удивительное расширение, упоминания о котором на хабре не нашел, поэтому хочу поделиться приятным сервисом и с вами.
Twitter Reactions позволяет читать твиты с упоминаем о странице на которой вы находитесь в реальном времени. Очень удобно если хочется знать мнение общественности о статье или заметке.
Как это выглядит?
Total votes 12: ↑6 and ↓6 0
Comments 6

Information

Rating
Does not participate
Location
Украина
Registered
Activity