Примеры популярных IDE
Visual Studio
Большая и известная мультиязычная IDE, которая «из коробки» поддерживает около десятка языков программирования — точное число зависит от комплектации. Остальные можно установить в нее с помощью модулей. Visual Studio — продукт Microsoft, поэтому ее часто используют для разработки под Windows, хотя среда позволяет писать код и под другие ОС. Она включает в себя не только редактор кода, но и редактор графического интерфейса: в нем можно «собирать» визуальный облик программы из готовых компонентов, как из кубиков.
VS — проприетарный продукт с закрытым исходным кодом. Написана она на C++ и C#. Существует бесплатная версия Community и платные Professional и Enterprise для коммерческой разработки.
Логотип Visual Studio
Не стоит путать Visual Studio и Visual Studio Code. Это разные продукты. Первый — IDE, второй — редактор кода, более легкий и быстрый, чем интегрированная среда разработки. Хотя среди редакторов кода VS Code считается довольно масштабным продуктом, приближенным по функциональности к IDE.
Eclipse
Это популярная IDE, которую чаще всего используют для разработки под Java. Хотя Eclipse существует и для других языков и расширяется для поддержки мультиязычности. Она работает на базе виртуальной машины Java и существует для всех распространенных ОС: Windows, Linux, macOS и Solaris.
Логотип Eclipse
Eclipse бесплатная, с открытым исходным кодом, поддерживается в том числе сообществом разработчиков. Это делает ее гибкой — для среды есть много расширений.
IntelliJ IDEA
Как и Eclipse, эта среда чаще всего используется для разработки на Java, хотя поддерживает несколько языков, в том числе JavaScript и Python. Ее создала компания JetBrains, которая также разработала PyCharm — о нем поговорим ниже. Эта среда завоевала популярность благодаря тому, что с самого начала предоставляла множество инструментов для автоматизированного рефакторинга и в целом была заточена под удобство для разработчика. В ней много возможностей для автоматизации рутины — это важный плюс.
Логотип IntelliJ IDEA
Среда существует в двух версиях: бесплатная Community и платная Ultimate. Первая версия полностью свободная и включает в себя все основные инструменты. Вторая — более закрытая и имеет ряд дополнительных возможностей для коммерческой разработки, например автоматическое создание UML-диаграмм.
О том, что представляет собой эта среда, мы более подробно рассказали в статье глоссария.
Android Studio
Это специализированная IDE для разработки под Android. Для этой ОС чаще всего пишут на Java, реже используют другие языки. Соответственно, Android Studio «из коробки» поддерживает Java, C++ и Kotlin. В ней есть возможности, актуальные конкретно для мобильной разработки, — например автоматизированная сборка .apk-файлов для запуска из-под Android. Среда включает в себя редактор макетов, который позволяет работать с графическими интерфейсами — добавлять и редактировать элементы с помощью drag-n-drop.
Логотип Android Studio
Создатель Android Studio — Google, и среда поддерживает некоторые другие проекты компании, например Google Cloud Platform. IDE бесплатная и свободная, но в ней есть ряд принципиальных ограничений. Например, Google не позволяет полностью отключить автосохранение проектов.
О том, как пользоваться Android Studio, мы рассказали в нашей статье.
PyCharm
Это IDE для разработки на Python, созданная JetBrains — разработчиками IntelliJ IDEA. Кроме Python, она поддерживает веб-разработку на Django. Ее часто называют оптимальным вариантом для новичков, которые пишут на Python. В ней удобная поддержка автотестирования, отладки и других возможностей, а расширения и библиотеки для языка можно устанавливать, не выходя из редактора. IDE кроссплатформенная, существует для Windows, Linux и macOS.
Логотип PyCharm
Среда существует в двух версиях: Community и Professional. Первая версия бесплатная и свободная, вторая — проприетарная и платная, предназначенная для коммерческой разработки.
XCode
Это среда разработки от Apple, которая официально есть только под macOS — установить ее в другие операционные системы можно разве что сложными обходными путями и с потерей части функциональности. Она поддерживает разработку под любые устройства Apple, может эмулировать мобильные устройства и имеет ряд других интересных особенностей. Среда по умолчанию включает в себя несколько популярных языков, в том числе Swift и Objective-C — они используются для разработки под устройства Apple.
Логотип XCode
XCode можно скачать и использовать бесплатно из официального магазина приложений macOS, но доступна она только для владельцев техники Apple.
Узнать больше об XCode можно в этой статье.
Создание Git репозитория для Web-приложения
Давайте создадим репозиторий Git в том каталоге, где находится наш Python скрипт с Web-приложением. Для этого выполняем команду:
Теперь нужно добавит скрипт с Web-приложением в репозиторий. Пусть скрипт называется image_classification.py, тогда команды будут следующие:
Репозиторий Git создан и скрипт с Web-приложением зафиксирован в нем. Однако пока репозиторий не готов для развертывания на Heroku. Облачной платформе для успешного запуска нашего приложения требуются дополнительные сведения:
-
Какие библиотеки Python нужны для работы приложения? Heroku установит эти библиотеки в образ для запуска приложения. В Python список библиотек указывается в файле requirements.txt.
-
Как запускать наше приложение? Вручную мы запускали приложение из командной строки с помощью . Heroku использует файл с названием чтобы узнать, как нужно запускать приложение. Именно в него мы и пропишем команду запуска. Также нужно будет добавить дополнительный скрипт на shell, который создает конфигурационные файлы Streamlit для работы в режиме сервера.
Мы начнем с файла . В него нужно записать всего две библиотеки:
Обратите внимание, что мы будем использовать версию TensorFlow с поддержкой только CPU. Во-первых, в контейнерах Heroku нет GPU, поэтому пытаться его применять бессмысленно
Во-вторых, версия TensorFlow с поддержкой GPU занимает значительное место, превышающее размер образа для бесплатного аккаунта на Heroku в 500МБ.
Теперь можно создать bash скрипт, создающий конфигурационные файлы Streamlit. Файл будет называться и содержать следующее:
Первая команда в этом скрипте создает каталог в домашнем каталоге пользователя, где и будут храниться настройки Streamlit.
Вторая команда записывает в файл адрес вашей почты. Не забудьте прописать этот адрес в скрипт.
Третья команда создает конфигурационный файл для сервера Streamlit , в котором две опции:
-
– при запуске Streamlit не будет открывать новое окно браузера (это поведение Streamlit по умолчанию подходит для персонального компьютера, но не для сервера)
-
– Streamlit будет работать не на порту 8501, как он обычно делает, а на порту, который ему укажет облачная платформа Heroku в переменной окружения .
Последний файл, , содержит команду, которую платформа Heroku должна выполнить для запуска нашего приложения:
в начале строки говорит Heroku о типе контейнера, в котором должно быть запущено приложение – контейнер для Web приложений. Затем идет команда запуска приложения, которая в нашем случае состоит из двух частей:
-
– запуск скрипта для создания конфигурационных файлов
-
— запуск нашего Web-приложения в Streamlit. Эта команда выполняется только в случае успешного выполнения первой команды (символы ).
Все три файла есть в репозитории с исходным кодом статьи.
Теперь нам нужно зафиксировать добавление новых файлов в репозитории Git:
Сейчас наш репозиторий готов к развертыванию на Heroku!
Редакторы кода
Значительную часть своего рабочего времени программисты проводят в редакторах кода. И споры о том, какой редактор лучше — одна из любимых и горячих тем для большинства из них. Существует множество мнений по этому поводу, и у каждого продукта есть своя армия пылких фанатов.
Если верить исследованиям, то большинство разработчиков используют Visual Studio Code, Sublime Text или IntelliJ IDEA. Эти три инструмента масштабируются от простого редактора кода до полноценной интегрированной среды разработки (IDE).
3. Visual Studio Code
VSCode — это редактор с открытым исходным кодом, разработанный корпорацией Microsoft. С момента его запуска в 2015 году количество пользователей Visual Studio Code постоянно растет — 71% веб-разработчиков пользуются им ежедневно.
Интерфейс редактора
В сочетании с огромной библиотекой расширений VSCode становится достаточно гибким, чтобы удовлетворить практически любые потребности в разработке. Вы можете установить линтеры и форматеры для выбранного вами языка, а также огромное количество других дополнительных расширений, например, Docker или Vagrant.
Visual Studio Code по умолчанию поддерживает JavaScript, Node.js и TypeScript. Но при этом экосистема расширений настолько богата, что вы сможете найти утилиты для поддержки практически любого языка. Более того, в VSCode реализована первоклассная интеграция с другими продуктами Microsoft, в первую очередь с GitHub.
Visual Studio Code полностью бесплатен и идеально подходит для большинства разработчиков.
4. Notepad++
Notepad ++ не сможет заменить продвинутые редакторы кода, которые используют профессиональные программисты, но он идеально подходит для работы с простыми скриптами.
Блокнот — это текстовый редактор, который используется по умолчанию в операционной системе Windows. Notepad ++ выглядит как его родственник, при этом он включает в себя специфические для разработки возможности:
— отображение вкладок и работа в режиме нескольких окон;
— поддержка около 80 языков программирования;
— автозаполнение.
Notepad ++ удобен, когда нужно оперативно сделать прототип, поработать в командировке или быстро открыть и написать код на скорую руку.
5. The JetBrains Suite
Среди платных редакторов кода JetBrains — один из самых популярных и востребованных. Когда дело доходит до полноценной IDE для разработки, набор решений от JetBrains будет в топе среди всех вариантов. Несмотря на то, что компания предлагает множество редакторов, все они — производные одного редактора IntelliJ IDEA.
JetBrains изрядно потрудилась, чтобы разработчики могли писать код, а не углубляться в настройки. Многие используют эти продукты из-за их надежности и гибких возможностей в управлении проектами.
Кроме платной версии, доступной по подписке, IntelliJ также предлагает свои инструменты бесплатно для студентов, учителей и сотрудников стартапов.
EasyPro Academy
Возраст: от 7 летСайт: https://easypro.academyТелефон: 7 (499) 112 48 44Стоимость: от 500 р. за занятие, бесплатный пробный урок
Школа EasyPro Academy — это:
-
Занятия 1 на 1 с преподавателем
Выбирая индивидуальную форму обучения «один на один» с преподавателем, вы получаете персональный подход к ребёнку позволяющий достичь наилучших результатов за небольшой период времени. Занятия проходят в любое удобное для ученика время и поэтому вы самостоятельно сможете составить график обучения, ориентируясь на занятость. -
Поддержание интереса
Увлекательный и творческий подход к изложению материала, а также адаптация программы обучения под навыки и интересы ученика позволяют добиваться целенаправленной сконцентрированной деятельности в течение длительного времени. -
Преподаватели — профессионалы
Преподаватели школы имеют педагогическое, профильное, высшее образование и сертификаты. Прошли трехэтапный отбор и постоянно повышают свою квалификацию. Умеют найти подход к ученику, мотивировать его. -
Постоянная практика
Обучение на практике — самый эффективный метод. На занятиях ученик сам создаёт код для решения поставленной задачи, преподаватель на примерах объясняет материал, а также помогает реализовать собственные проекты и идеи ученика. -
Актуальная программа
Каждый месяц обновляется материал, чтобы дети получали актуальные знания. -
Интерактивные учебники
В интерактивных учебниках выполняются упражнения, которые автоматически проверяются компьютером. Даже изучая материал самостоятельно, ребёнок может добиться больших успехов. -
Поддержка 24/7
Каждому ученику предоставляется персональный чат к которому подключены родители, преподаватель, персональный менеджер и административный аккаунт школы. Чат позволяет родителям контролировать процесс обучения, а ученику вовремя получать помощь преподавателя, обратную связь, дополнительные материалы и задания.
Предлагаемые варианты курсов:
- Программирование на языке Python для детей
- Программирование в Minecraft на языке Python
- Разработка 3D-игр в среде Unity для детей
- Программирование в среде Scratch для детей
- Программирование игр на языке Python для детей
- Web-программирование на Python и Django
27. Django Girls Tutorial
Django_Girls_Tutorial
Django Girls — это некоммерческая организация, которая организует бесплатные однодневные семинары по программированию. На ее сайте можно найти удобный для начинающих учебник по созданию сайта-блога с использованием командной строки, Python, Django, HTML и CSS.
Учебник представлен на нескольких языках, поэтому те, кто не владеет английским языком, могут изучать его на том языке, который им наиболее удобен.
После изучения этого материала пользователи могут перейти к расширенным курсам, чтобы получить дополнительные учебные ресурсы.
Заключение по статье бесплатного обучения программированию
В этом руководстве мы привели список всех лучших сайтов, где можно научиться программировать без особых затрат. Убедитесь, что вы выбрали те, которые соответствуют вашим целям и предлагают материалы, которые вы ищете.
Хотя все упомянутые платформы являются высококачественными, вот наш редакторский выбор наиболее рекомендуемых ресурсов и курсов по кодингу:
- BitDegree. Сайт бесплатного обучения программированию, на котором представлены тысячи бесплатных и платных курсов по программированию. Для интерактивного обучения выберите программу, созданную самим BitDegree.
- edX. Некоммерческая организация, которая сотрудничает с ведущими университетами и компаниями, предлагая высококачественные курсы. Отдел компьютерных наук охватывает предметы программирования от начального до продвинутого уровня.
- Udemy. Популярная платформа обучения с 2 000+ бесплатными курсами по кодингу и разработке.
- freeCodeCamp. Бесплатная программа обучения программированию, благодаря которой выдающиеся выпускники работают в таких крупных компаниях, как Spotify и Apple. Отзывчивый веб-сайт предлагает возможность обучения «на ходу».
- Проект Odin. Учебная программа по программированию, в которой используются лучшие бесплатные ресурсы и курсы по программированию на рынке.
- Sololearn. Эта бесплатная онлайн-программа по программированию использует систему кусочков, что значительно упрощает процесс обучения.
- Edabit. Программа для обучения программированию, основанная на заданиях. Пользователи могут выбрать одно из доступных заданий или использовать Shuffle для решения случайной задачи.
Теги: бесплатного обучения программированию, программирование, курсы программирования, видеоуроки по программированию.
Ресурсы для веб-разработчиков
Если вам приходится самостоятельно искать возможные способы решения проблем с кодом, то знайте, что до вас было бесчисленное количество разработчиков, которые, вероятно, уже их нашли.
31. Stack Overflow и Search Engines
Stack Overflow известен всем, кто хоть немного разбирается в веб-разработке. Это огромный ресурс с вопросами и ответами, посвященными разработке программного обеспечения. Каждый тред на портале посвящен определенной теме, а вопросы, ответы и сами пользователи оцениваются сообществом.
Stack Overflow известен как ресурс, к которому обращаются тысячи разработчиков. Фактически этот ресурс работает как узкоспециализированный поисковик.
32. DEV Community
DEV Community — это сайт для сообщества разработчиков. С одной стороны, это платформа для ведения блогов, с другой — способ найти ответы на вопросы разработчиков. Пользователь выбирает теги и людей, на которых хочет подписаться, и его новостная лента превращается в поток публикаций и аналитических сведений.
33. Can I use…
Суть сайта проста: вы вводите элемент CSS в поле поиска, а база данных возвращает результат с ответом на вопрос, можете ли вы использовать его для конкретного браузера. Также на сайте поддерживаются запросы для JavaScript и HTML.
Can I use… — это база знаний именно для фронтенда, поэтому она не будет возвращать результаты для PHP, Python или других языков бэкенда.
Этот ресурс поможет вам, когда вы будете проектировать интерфейс для нескольких устройств. К примеру, вы можете открыть определенный элемент и сразу увидеть, поддерживает ли его ваш целевой браузер. Дополнительно открывается интересная статистика — дата выпуска элемента и процент использования.
Can I use… редко используют регулярно. Ресурс нужен только на определенных этапах проекта, когда вам необходимо выяснить, какие элементы поддерживают ваши целевые браузеры.
Caffe2
Краткая справка:
Разработчик: Berkeley Vision and Learning CenterВремя создания: 2017 годЯзыки: C++, PythonПоследняя версия: 1.0 / 18 апреля 2017 годаПлатформы: Linux, macOS, WindowsАрхитектура: выразительная, допускающая инновации в разработке
Это идеальный фреймворк глубокого обучения для тех, кто считает, что большое кроется в малом
На Caffe2 стоит обратить внимание, если нужен гибкий фреймворк. За это, а также за простоту расширения его и любят разработчики
Фреймворк повышает производительность приложения за счёт расширяемого кода. А самое лучшее здесь то, что разработчикам надо всего лишь знать основы исходника на C++.
У Caffe2 есть привязки к Python и MATLAB. Код приложения не станет более громоздким, ведь фреймворк поддерживает последние стандарты кода и моделей. Для сценариев, предполагающих веб-разработку и исследовательские эксперименты, есть готовые сети Caffe2 Model Zoo.
Одно из главных преимуществ фреймворка — скорость: он может обрабатывать более 60 миллионов изображений в сутки с помощью одной лишь Nvidia K40 GPU.
Различные компании используют Caffe2 для создания приложений с функциями сегментации и классификации изображений. Caffe2 ускоряет процесс разработки главным образом благодаря использованию свёрточных нейросетей.
Кроме того, если использовать Caffe2 Model Zoo с набором готовых моделей, разработка может обойтись и вовсе без кода.
Основные направления и языки программирования
Различия в сферах программирования (кодинга) можно сравнить с разницей в специализации врачей. Как и медик, любой программист имеет базовый набор навыков и знаний. При этом каждое отдельное направление необходимо для выполнения принципиально разных задач. Хорошая новость в том, что, в сфере программирования не так много специализаций, как в медицине.
Веб-разработчик
Пожалуй, это самое обширное и востребованное направление. А вместе с тем и простое в освоении, потому что рабочая среда поддерживает большое количество языков программирования. Веб-разработчики создают и поддерживают локальные ресурсы и сайты во всемирной паутине. Они делятся на две группы:
- Front-End – отвечают за внешнюю составляющую сайта. Сюда можно отнести технический дизайн, эргономику и функциональность для пользователей и администратора. Используют преимущественно следующие языки:
- HTML,
- CSS,
- JavaScript (JS).
- Back-End – работают с серверной частью сайта. Отвечают за хранение данных, оптимизацию и бесперебойную работу. Преимущественно работают с такими языками программирования как:
- JavaScript,
- PHP,
- Python,
- Ruby,
- C++,
- Go.
Чаще всего работодатели ищут Front-End программиста с базовым знанием в Back-End. Но здесь все зависит от сферы деятельности компании. Хороший веб-разработчик должен разбираться в обоих группах.
Android-разработчик
Занимается созданием приложений для устройств, работающих под управлением ОС Android. И это не только смартфон или планшет, но также телевизоры, автомагнитолы, ТВ-приставки и другие «умные» гаджеты для дома, вплоть до чайника или освежителя воздуха. По популярности используемые языки программирования распределены следующим образом:
- Java,
- Python,
- Kotlin.
iOS-разработчик
Как и предыдущий создает софт для умных гаджетов, но только одной компании – Apple. У Эппл своя инфраструктура устройств, которые работают на их собственной операционной системе Apple iOS. И хоть в СНГ популярность гаджетов Эппл не очень высока, во всем мире устройствами этой компании владеют примерно четверть всех пользователей. Для работы нужно освоить язык программирования Swift.
Программист Big Data (аналитик)
Аналитик Big Data владеет навыками глубокого анализа большого массива данных и средствами их извлечения. Иначе говоря, это стык двух профессий. Такой специалист занимается сбором, систематизацией и анализом данных, а также строит визуализированные модели для демонстрации управленцам. Здесь используются как специализированные языки программирования: R, Scala, SQL. Так и общие: Python, Java.
Программист нейросетей
Относительно молодое направление в программировании, но и самое перспективное. Специалисты в этой области занимаются разработкой и внедрением самообучающихся программ – нейросетей. Здесь может использоваться любой язык программирования, однако большинство предпочитает использовать Python.
Разработчик ПО для компьютера
Такие программисты занимаются разработкой программ для ПК и ноутбуков под управлением ОС Windows, Linux или macOS. Это те самые люди, которые пишут весь развлекательный или профессиональный софт. Для работы наиболее часто используют следующие языки программирования:
- С,
- C++,
- C#,
- Java,
- Swift.
Разработчик игр
Это такие же разработчики ПО, как и выше, которые занимаются исключительно производством компьютерных и мобильных игр. Для разработки консольных и ПК игр обычно используют готовую программную среду с базовым набором функций – движок, но в исключительных случаях разрабатывают и собственные решения. Востребованные языки программирования:
- C++,
- C#,
- Java,
- Unity.
Установите зависимости машинного обучения
Вы должны установить библиотечные зависимости, которые у вас есть для разработки машинного обучения.
В основном это библиотеки, которые вы используете.
В Python это могут быть Pandas, scikit-learn, Keras и другие. В R это все пакеты и, возможно, карет.
Больше, чем просто установка зависимостей, у вас должен быть повторяемый процесс, чтобы вы могли за считанные секунды снова настроить среду разработки, например, на новых рабочих станциях и на новых серверах.
Я рекомендую использовать менеджер пакетов и скрипт, такой как скрипт оболочки, для установки всего.
На моем iMac я использую macports для управления установленными пакетами. Я думаю, что есть два сценария: один для установки всех пакетов, которые мне требуются, на новый компьютер Mac (например, после обновления рабочей станции или ноутбука), а другой — специально для обновления установленных пакетов.
Библиотеки всегда обновляются с исправлениями ошибок, поэтому второй сценарий для обновления специально установленных библиотек (и их зависимостей) является ключевым.
Это сценарии оболочки, которые я могу запускать в любое время и которые я постоянно обновляю по мере необходимости для установки новых библиотек.
Если вам нужна помощь в настройке вашей среды, может помочь одно из следующих руководств:
В итоге:
- Установить скрипт, Сохраните сценарий, который вы можете использовать для переустановки всего, что необходимо для вашей среды разработки.
- Обновить скрипт, Поддерживайте сценарий, чтобы обновить все ключевые зависимости для развития машинного обучения и периодически запускать его.
Инструменты для совместной работы
Современная разработка в настоящее время практически всегда подразумевает работу в команде. Для синхронизации действий в группе необходимо использовать специальное ПО, которое позволит сделать процессы прозрачными, а статусы и этапы понятными. Это облегчит команде путь к достижению целей проекта.
23. Jira
Используя Jira, вы получаете множество функций «из коробки». Например, вы можете использовать канбан-доски для организации задач и спринтов. Канбан-доска — это инструмент визуализации, который позволяет оптимизировать поток вашей работы. Также вы можете применить свою технику отслеживания статусов по задачам, адаптированную к вашей методологии и проекту.
Планирование в Jira
Jira ориентирована на повторяемый рабочий процесс: планирование, отслеживание, релиз и отчет. Пользователь может переключаться между спринтами, благодаря этому каждый участник рабочей группы может быть задействован в нескольких активностях, а Jira поможет ему организовать свое время и не упустить ни одну задачу.
Хорошая новость в том, что Jira доступна бесплатно, а платная версия программы приятно удивит разумной ценой. Для эффективного использования сервиса нужна команда минимум из 10 человек.
24. Taskade
Taskade — отличный менеджер задач для работы в команде. Если вы пользуетесь Asana или Basecamp, то интерфейс Taskade будет вам хорошо знаком.
Наиболее востребованная пользователем информация централизованно отображается на главной странице: ближайшие планы, горячие вопросы, задачи, по которым приближается дедлайн, дела на сегодня и напоминания. Вы можете самостоятельно выбрать удобный тип представлений.
На первый взгляд Taskade может показаться скудным, но это не так. Он гибко настраивается, отображает задачи в удобном для пользователя формате, позволяет ими легко и быстро управлять и упрощает путь взаимодействия с командой. Благодаря своей простоте, он подойдет для любого проекта и для разработчика любого уровня.
25. Asana
Asana — это приложение для управления проектами в командах, которое легко адаптируется к различным рабочим процессам.
Еще есть способ отслеживать рабочую нагрузку каждого члена команды. Таким образом Asana помогает свести риск наступления кризиса к минимуму и предотвращает выгорание членов команды.
Приятно, что бесплатная версия — это полнофункциональное приложение, а не его урезанная версия. Вы можете масштабировать Asana по мере увеличения команды и подключать платные версии, но даже их вы можете использовать бесплатно 30 дней.
Бонус: какими IDE пользуются разработчики REG.RU
Разумеется, в этой подборке мы привели лишь малую часть существующих сред разработки и редакторов кода. Например, можно было бы упомянуть о Notepad++, Eclipse или активно развивающихся облачных IDE вроде Codeanywhere или Cloud9.
Тем не менее, мы в том числе перечислили инструменты, которыми пользуются разработчики в REG.RU. Например, те, кто так или иначе взаимодействует с Python, отдают предпочтение PyCharm. Разработчики интерфейсов больше склоняются к редакторам, чем к IDE, и выбирают Visual Studio Code и Sublime Text. Также встречаются и те, кто работает в WebStorm, Komodo, Atom. Многие, кстати, считают идеальным редактором Vim: конечно, в нём нет того обилия функций, которые предлагают IDE, однако его вполне можно превратить в удобную для работы среду с помощью многочисленных плагинов и расширений.
⌘⌘⌘