Рубрика «jetbrains»

Всем привет! Хотим пригласить читателей Хабрахабра на Kotlin Night Moscow, мероприятие, которое проходит при поддержке JetBrains. В субботу, 25 ноября, в московском офисе Avito поговорим о монадах, DSL для автоматизации экспериментов, перспективах Kotlin Native и подходах к сокращению количества boilerplate-кода. В митапе примут участие представители Avito, Tutu.ru, Joom, Odnoklassniki.ru. Приходите обмениваться опытом и обсуждать профессиональные вопросы! Если вы не в Москве — не расстраивайтесь, в день мероприятия будет организована прямая видеотрансляция. Под катом — описание докладов и все пароли и явки.

Kotlin Night Moscow в Avito 25 ноября - 1

Читать полностью »

Привет! В среду мы запилили квест, и судя по потоку комментариев и сообщений, квест вам понравился и заставил поломать голову. Мы рады! В этом посте подведём итоги: раскроем правильные ответы и вручим призы.

Статистика

Онлайн-квест от MBLTdev: призы и ответы - 1

Призы

Сегодня призы отправились победителям, проверяйте почту.

  • Годовые подписки на продукты JetBrains получили Инсаф, Михаил и Даниил.
  • Билеты на конференцию мобильных разработчиков MBLTdev 2017 — Алексей Лагута, Михаил и Артём.
  • Футболки MBLTdev 2017 — Устинов Валерий, Руслан Ахтямов и Павел Камаев.
  • Скидка 20% на билеты на MBLTdev 2017 — наш подарок всем кто прошёл квест до конца.

Теперь расскажем, как надо было решать задания. Под катом — ответы.
Читать полностью »

Я хочу сыграть с тобой в одну игру…Твоё первое задание — найти вход в квест. Ищи подсказку в видео.

Самые быстрые получат призы:

— годовые подписки на любой продукт от JetBrains,
— классные футболки,
— билеты и скидки на конференцию мобильных разработчиков MBLTdev 2017Читать полностью »

Всем привет! Недавно мы выпустили новую версию системы управления проектами — YouTrack 2017.3 — и спешим поделиться с вами нововведениями.

Релиз YouTrack 2017.3: автоматизация рабочих процессов на JavaScript, улучшенная поддержка Kanban и многое другое - 1

Читать полностью »

Привет! Продолжаем серию постов о новых версиях IDE от JetBrains. Поговорим о том, что нового в DataGrip 2017.2.

— Поддержка Amazon Redshift и Microsoft Azure
Несколько баз данных для одного источника PostgreSQL
— Контроль транзакций
— Вычисление выражений
— Разделены вкладки DDL и Data для таблиц
— Интеграция с инструментами восстановления для PostgreSQL и MySQL
— Улучшения, связанные с запуском запросов
— Улучшения, связанные с написанием кода
и другое…

DataGrip 2017.2: Поддержка Redshift и Azure, несколько баз в PostgreSQL, контроль транзакций и другое - 1

Читать полностью »

Бинго-бонго и Джимбо-джамбо, дорогие друзья!

У меня на дачке не было света 2 дня, я практически иссох и впал в спячку, но я снова здесь!
В этом посте мы начнем писать предсказания погоды и немного напишем кода, а не потыкаем мышкой! Ура! Наконец-то!

Какие прогнозы мы хотим делать

Очень простые! Пока прогнозировать будем только следующий день, а правила придумаем сами; а точнее, правил не будет. Мы просто будем выводить температуру на следующий день, абсолютно такую же, как и сегодня.
Сделаем один прикольчик, демонстрирующий возможности projectional editor.

Концепты

В данном случае мы прибегнем к крутой фиче — мы создадим концепт, который будет содержать только ссылку на исходные данные, а данные мы будем выводить как график на своем Swing компоненте. О как умеем, хотя swing я жуть как не люблю.
image

Читать полностью »

Йо-хо-хо!

В прошлом посте мы остановились на том, что мы умеем добавлять массив входных погодных данных, а точнее данные "Время + температура", слегка попробовали использовать Behavior и разобрались с концептами.
Пришло время делать что-то полезное, ведь пока все, что мы реализовали, можно было реализовать на любом другом языке, за исключением прикольного синтаксиса.
Первым делом, введем ограничения на время. Сейчас мы ограничим его, чтобы часы были в пределе 0-24, а минуты 0-60, иначе будет выдаваться ошибка компиляции.

Constraints

Constraints это аспект языка, который отвечает за валидность реализации концепта. В нашем случае нам нужно ограничить property hours и minutes, поэтому мы создаем Constraints аспект концепта Time.
image
Здесь мы видим 3 пункта, которые отвечают за структуру AST.

  • can be child: получаем на вход данные об узле, родительском узле, дочернем и все, что только можно и решаем, может ли реализация концепта в данном контексте быть дочерней или нет
  • can be parent: то же самое, что и с child, только проверка на возможность быть родительским узлом
  • can be ancestor: все то же самое, что с parent, но более вложенно: в данном случае мы можем идти как угодно выше по AST, дословно — может ли узел быть предком

    Читать полностью »

Введение

Спасибо всем за критику в комменте под первым постом, где я хотел попробовать написать про MPS, не затрагивая важные темы, чтобы можно было потом более качественно начать писать по порядку.

Зачем нам нужен язык Weather?

В комментариях к 1 посту было следующее высказывание

С этой точки зрения, DSL — это как фреймворк, только с более удобным интерфейсом. Ясное дело, под один проект фреймворк делать никто не будет, за исключением совсем уж монструозных случаев. А сделать его под конкретную предметную область — почему бы и нет?..

В принципе, так оно все и работает. Хорошие языки похожи по сути на хорошие фреймворки: они позволяют писать что-то важное, не заморачиваясь о том, что мы не хотим писать. По ходу повествования я буду периодически обращаться к другим языкам для аналогий и сравнений.

Синтаксис

Язык Weather, который мы хотим реализовать, должен выполнять следующую задачу: мы должны уметь лаконично выражать условия (погода сегодня, например) и следствия (погода завтра, послезавтра...).
В языке Weather мы будем делать наши прогнозы отталкиваясь от 1 фактора: от температуры на сегодняшний день(массив объектов время + погодные условия).

Читать полностью »

Привет! Лето в этом году местами подкачало (у команды CLion в Питере уж точно), а вот новый релиз CLion 2017.2, мы надеемся, удался! В этом посте мы хотим рассказать про новые возможности, важные баг-фиксы, и дать Вам возможность задать вопросы или поинтересоваться какими-то конкретными планами в комментариях.

image

Если коротко, то релиз CLion 2017.2 посвящен:

  • Расширению возможностей анализатора кода (это касается как встроенного, так и стороннего инструмента – CLang-Tidy)
  • C++17 в мастере создания нового проекта
  • Поддержке PCH для MSVC (мы ниже обязательно расшифруем все аббревиатуры!)
  • Force Step Into в отладчике
  • Автоматическому созданию Google Test конфигураций для таргетов, слинкованных с gmock
  • Отменяемым асинхронным действиям навигации и загрузки CMake
  • Общим улучшения производительности
  • И еще многому другому!

Готовы попробовать уже сейчас? Скачивайте бесплатную 30-дневную версию с нашего сайта и вперед!
Нужно больше подробностей? Детали ниже. Кстати, попробовать все новые возможности можно на небольшом демо-проекте, который мы специально подготовили для этих целей.
Читать полностью »

На этой неделе вышло большое обновление WebStorm. В этом посте мы расскажем подробнее о том, какие улучшения ждут JavaScript-разработчиков в WebStorm 2017.2 и других IDE JetBrains версии 2017.2.

Вы можете прочитать подробнее о WebStorm 2017.2 и скачать его на нашем сайте.

Улучшения в поддержке JavaScript и TypeScript

Move symbol

Новый рефакторинг Move symbol переносит классы, глобальные функции и переменные из одного JavaScript или TypeScript файла в другой. IDE автоматически добавит экспорт и обновит ES6-импорты в файлах, где используется этот символ.

Чтобы вызвать этот рефакторинг, поставьте курсор на символ в ES6-модуле и нажмите F6.

WebStorm 2017.2 – что нового в поддержке JavaScript, TypeScript, Angular и Sass и работе с ESLint, Karma и Mocha - 1
Читать полностью »