Пользователь
0,0
рейтинг
16 октября 2014 в 11:02

Разработка → Вышел Python Tools 2.1 для Visual Studio перевод

Окончательная версия Python Tools 2.1 для Visual Studio (PTVS) доступна для загрузки! PTVS работает с Visual Studio 2010, 2012 и 2013. Помимо перечисленных ниже новых возможностей, в PTVS 2.1 также добавлена поддержка бесплатных версий Visual Studio Express for Web и Express for Windows Desktop. Разумеется, по-прежнему поддерживаются все полные версии Visual Studio, от Professional и выше.

Веб-разработка на Python в Visual Studio


Веб-разработка является основной темой данного релиза. Теперь в PTVS можно удобно создавать сайты на Django, Bottle и Flask, как с нуля, так и с использованием стартовых шаблонов проектов. Все созданные таким образом сайты можно в один клик опубликовать на веб-сайт Azure.



Также поддерживаются проекты Azure Cloud Service с рабочими и веб-ролями. Кроме того, есть универсальный шаблон для веб-проектов, который позволяет с минимальной настройкой использовать другие популярные фреймворки – например, Pyramid.

Больше всего внимания мы по-прежнему уделяем Django, для которого есть редактор шаблонов с подсветкой синтаксиса и автозавершением для тегов и выражений в них, а также отладкой. По сравнению с предыдущими версиями, редактор полноценно интегрирован с поддержкой HTML, CSS и JS в Visual Studio, так что теперь у них также есть полноценная подсветка и автозавершение в Django-шаблонах.





Мы также добавили поддержку отладки для веб-сайтов Azure с интеграцией в Server Explorer, аналогичной сайтам на .NET.



Вашему вниманию предлагается видео, в котором пошагово описывается процесс создания в PTVS нового сайта на Flask с нуля, и импортирования существующего проекта на Pyramid, с последующей публикацией на веб-сайты Azure:



Список изменений относительно 2.0


(источник)
  • Возможность установки поверх Visual Studio 2013 Express for Web и Express for Windows Desktop.
  • Семантическая подсветка имен модулей, классов, функций и параметров в редакторе.
  • Шаблоны проектов веб-приложений на Flask и Bottle.
  • Улучшенная поддержка Azure Cloud Services, которая теперь включает поддержку рабочих ролей (worker roles).
  • Удаленная отладка веб-сайтов Azure.
  • Новый редактор для шаблонов Django (только в VS 2013), с поддержкой полноценной подсветки и автозавершения для HTML5, CSS и JS.
  • Поддержка requirements.txt для быстрой установки пакетов в virtual environments проекта.
  • Поддержка PyLint.
  • Улучшения стабильности и производительности отладчика при отладке приложений, работающих с большими объемами данных.
  • Полноценная поддержка MSBuild в файлах проекта .pyproj, включая зависимые проекты и кастомизацию build targets.
  • Частичная поддержка пакетного менеджера (в частности, установка пакетов) conda из дистрибутива Anaconda при работе с virtual environments.
  • Поддержка стандартных строковых визуализаторов Visual Studio (обычный текст, HTML, XML, JSON) для строковых данных в отладчике.
  • Большое количество других мелких исправлений и улучшений – см. полный список в CodePlex.

Для новых возможностей имеется также обзорное видео:


Open Source


Проект по-прежнему распространяется со всеми исходниками на CodePlex под лицензией Apache 2.0, и да – мы принимаем pull requests! Кроме того, исходный код проекта служит в качестве примера для создания расширений для Visual Studio.

Команда PTVS присоединяется к Azure Machine Learning Group


Ранее, PTVS разрабатывался вместе с поддержкой других языков в большой семье Visual Studio. С выходом этого релиза, команда разработчиков переходит вместе с продуктом в группу Azure Machine Learning. Про поддержку ML в Azure уже писали на Хабре ранее, а теперь наша команда присоединяется к проекту, чтобы добавить в него полноценную поддержку Python наравне с R.

Таким образом, если темой предыдущих релизов PTVS была разработка на Python вообще, и веб-приложения в частности, то теперь мы будем уделять значительное внимание нише, в которой сейчас наблюдается взрывной рост популярности Python — data science, technical computing, и работе с большими объемами данных вообще. Это означает, в частности, глубокую интеграцию с IPython Notebook, расширенную поддержку numpy, scipy, pandas и scikit-learn (редактирование и Intellisense, отладка с визуализацией данных различным образом и т.д.). Особое внимание в ближайшее время будет уделяться сценариям, связанным с машинным обучением.

В рамках этого перехода, одновременно с релизом PTVS 2.1, мы также опубликовали ML Pack для PTVS. В нее входят несколько шаблонов проектов для различных сценариев машинного обучения с использованием scikit-learn, снабженными детальными комментариями по их использованию и кастомизации для реальных задач.



Кроме того, в состав ML Pack входит новый мастер для автоматической генерации кода для использования веб-сервисов, созданных в Azure ML, в ваших веб-приложениях на Python.

Перевод: Shahrokh Mortazavi
Pavel Minaev @int19h
карма
59,0
рейтинг 0,0
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Реклама

Самое читаемое Разработка

Комментарии (24)

  • +3
    Благодаря PTVS я не чувствую себя ущербным в Виндовсе после миграции с Арч линукса :-)

    Отличные новости, отличная работа!
    • +4
      Спасибо! Передал команде.
  • 0
    Я перестал рассматривать студию как вариант для разработки на Python после того как узнал, что в ней нельзя задавать для каждого проекта свою систему контроля версий.
    • +5
      Проголосуйте за это, пожалуйста.
      • 0
        сделано. ждем с нетерпением…
  • +1
    Для тех, кто еще не знает, что такое PTVS, вот прекрасный обзор от автора channel9.msdn.com/Shows/Visual-Studio-Toolbox/Python-Tools-for-Visual-Studio
  • +1
    А проблему с установкой некоторых модулей через pip в virtualenv исправили? Например numpy
    • +6
      Это, к сожалению, проблема экосистемы питона под винду в целом, не специфичная для PTVS — если для установки пакета нужна сборка исходников на C, то начинаются танцы с бубном. В долгосрочной перспективе это должна исправить поддержка wheels в pip, но нужно еще, чтоба авторы пакетов делали бинарные колеса под винду — что проблематично в т.ч. потому, что многие сидят на линуксе или OS X. Мы пока еще думаем над тем, как этому поспособствовать — например, есть мысли о том, чтобы предоставлять VM в Azure с развернутой VS разных версий для авторов популярных пакетов, чтобы они могли там делать сборки. Или даже автоматический сервис по сборке, где авторы могли бы просто зарегистрировать свой пакет в PyPI, и автоматом получать билды при заливке новых версий.

      Если все же дело доходит до локальной сборки, то отдельная головная боль — соотвествие версий компилятора. С 2.7 все хуже всего, т.к. эта ветка собиралась VS 2008, и на более новый компилятор не перейдет уже никогда — при этом, скачать компилятор сейчас сложно (он был в WinSDK и в VS Express, но эти старые версии скачать не так-то просто). Поэтому специально для 2.7 мы скооперировались с ребятами из VC++ team и выпустили дистрибутив VC++ 2008 (только сам компилятор, не IDE) специально для сборки пакетов при установке, и добавили его поддержку в setuptools. Таким образом, после его установки и обновления setuptools до последней версии, вы сможете, например, сделать pip install cython в 2.7, и все будет работать. Соответственно, все пакеты, которые зависят от Cython, тоже собираются.

      Для 3.x ситуация немного другая — там ветка пока собирается VS 2010, но в 3.5 есть планы по переходу на новую версию компилятора, и мы активно пытаемся убедить сообщество в том, что это должен быть VS 14. Если все получится, то в дальнейшем можно будет использовать любую текущую версию VC++ (из VS Express, например) для сборки пакетов, т.к. начиная с 14, C runtime в VC будет совместимым в обе стороны.

      Конкретно с numpy и scipy все еще сложнее, потому что там исходники не только на C, но еще и на Фортране, и куча зависимостей вроде MKL. Поэтому просто так их собрать локально не получится. В идеале, для них опять же нужны wheels, и мы всерьез думаем над тем, чтобы собирать их самим. Пока этого нет, для обычного питона можно скачать их отсюда — да, это инсталляторы, но их можно установить в virtualenv, если скормить путь к файлу в качестве аргумента для easy_install (это работает и в диалоге установки пакетов PTVS). Либо же можно взять Anaconda (или miniconda), и устанавливать бинарные пакеты через conda — у них в репозитарии есть и numpy, и scipy, и многое другое.
      • +1
        Про то, что можно ставить бинарные пакеты в виртуальные окружения, узнал только что, и очень этому рад. Никогда не любил ставить их глобально.

        Спасибо за информацию!
        • +1
          Если вы про инсталляторы, то это работает только с пакетами, которые собраны через bdist_wininst (потому что они являются валидными .zip-архивами).
          • 0
            Про установку bdist_wininst инсталляторов в virtualenv через setuptools я тоже не знал. Уныло ждал, когда же разработчики соберут wheels для Scipy stack (matplotlib уже сделали с 1.4.0). Теперь станет немного легче. Спасибо за информацию!

  • 0
    На VS 2010 Express ставиться не хочет…
    • 0
      Все. Разобрался. Она и не должна ставиться…
      • 0
        Да, VS Express поддерживается только начиная с 2013 Update 2. У них прошит whitelist расширений, которые на нем могут работать, поэтому поддержать старые версии мы не могли.
  • 0
    Возможно не в тему, но вопрос: есть ли возможность использовать дизайнер форм для виндоприложений в ЖелезоПитоне?
    • 0
      При использовании WPF — да, есть. Для WinForms — нет. Это теоретически возможно, но намного сложнее реализовать (там требуется генерация кода), а запрос на него очень маленький, поэтому решили ограничиться WPF.
  • 0
    «Теперь в PTVS можно удобно создавать сайты на Django, Bottle и Flask», вы серьезно? ) По моему скромному мнению, для таких задач лучше все же использовать продукты Jetbrains, они и быстрее, и более user friendly, также можно вести разработку во многих языках одновременно никуда не переключаясь. После них работа в студии — одна боль и страдание ( извините, накипело
    • 0
      Серьезно. Я ваш комментарий плюсанул, но это я просто промахнулся по минусу.

      Когда я переехал на Винду, сразу начал искать замену любимому KDevelop. Попробовал в том числе и PyCharm. И что же? Автокомплит в нем хуже, чем в PTVS (там есть автодискавери-то?) и дизайн а-ля 2003 год. Объективно — PTVS никак не хуже, а на мой взгляд и лучше.

      Но у меня мнение предвзятое, конечно. Как-то я написал в Твиттере, что не понимаю, как у продуктов JetBrains могут быть такие страшные иконки, так они вместо того, чтобы принять критику или хотя бы игнорировать начали меня троллить. Вдвоем. Это профессионально?

      А на другой чаше весов команда PTVS, которой я сообщил в том же Твиттере о баг, который вызывает краш (это посерьезнее иконок будет). Ответили быстро, вежливо, по делу. Это профессионально.

      Как вы говорите — извините, накипело.
      • +1
        Насчёт поддержки ничего сказать не могу, один раз был вопрос, ответили в течение суток, больше обращаться не приходилось ) Но зато мне каждый день приходится работать и в идее, и в студии. Тормоза со стороны студии и постоянные ругательства с моей стороны в ответ — вот так проходит у меня работа в этом так называемом «продукте». Идея бывает тоже подтормаживает, но не так, чтобы вешать всю систему на несколько секунд. У каждого продукта есть недостатки, но вот у студии их на порядок больше, ИМХО. Недаром большинство знакомых программистов на плюсах ждут, когда уже Jetbrains выкатит свою среду для разработки для этого языка
        • 0
          Что касается тормозов и зависаний — пожалуйста, шлите багрепорты! Или хотя бы дайте Windows Error Reporting отработать и отправить дамп — на них смотрят, поверьте (сам этим два года занимался).

          Что касается того, зачем вообще нужны разные IDE. Ну, как минимум, затем же, зачем разные ОС или браузеры — даже если вы пользуетесь только одним, наличие других создает конкурентную гонку, благодаря чему вы получаете фичи и багфиксы быстрее. Ну и цены, опять же — думаете, у PyCharm была бы бесплатная версия, если бы не было бесплатных же конкурентов?

          Конкретное сравнение PyCharm и PTVS мне делать не хотелось бы, т.к. я по определению заинтересованная сторона, и мне веры быть не может :). Вообще, сравнение питоновских IDE — это благодатная тема для развернутой статьи на Хабре, если бы кто-то взялся. Мне пока не доводилось видеть в Сети подробного разбора полетов на эту тему, так что много людей сказали бы вам спасибо.

          Но попробую все же сказать кое-что. Помимо конкуренции, наличие разных IDE приводит в т.ч. еще к тому, что в них развиваются разные направления. Например, я вам могу вполне откровенно сказать, что вещи, связанные с веб-разработкой вообще — в PyCharm, да, лучше, чем у кого бы то ни было. У них и шаблонизаторов поддерживается куда больше (например, есть редактирование Jinja2), и сам HTML-редактор понавернутей, и поддержка GAE, да и вообще много вкусностей… Что неудивительно, если учесть историю продукта. В этом плане, пожалуй, единственное, что мы можем предложить, чего нет у них — это интеграция с Azure.

          А вот если посмотреть на разработку вообще, то тут у нас тоже есть свои уникальные фичи. Например, смешанная отладка Python/C++ — насколько мне известно, её больше нет ни у кого, и в ближайшее время не планируется. Или, скажем, интеграция REPL c IPython (с inline-графикой). Ну и новое направление развития — на улучшенную поддержку питоновского стека data science — тоже достаточно специфично, и я не думаю, что PyCharm тут будет пытаться угнаться за нами, у них своя ниша, мы же будем конкурировать скорее с MATLAB и R Studio. Но при этом те наработки, которые мы в данном релизе сделали для веб-разработки, там тоже будут активно использоваться — к ML и числомолотилкам тоже нужны фронт-енды для простых смертных.
          • 0
            Зависания кратковременные, крашей нет, поэтому отправлять, увы, нечего. Есть подозрения, что это связано с ассистом.
            Поймите меня правильно, я ни в коем случае не утверждаю, что пичарм, идея или еще что-то от Jetbrains — мана небесная. Для каждого проекта/случая одно подходит лучше, другое хуже. Но для разработки именно под веб, как написано в начале статьи, студия подходит меньше всего, даже с таким замечательным плагином как PTVS.
            А те преимущества, которые вы приводите, больше относятся к другим областям и веб тут как бы ненароком упомянут. Уважаю вашу точку зрения ) но продолжать дискуссию не вижу смысла. Доброй ночи
  • 0
    Судя по описанию классная вещь, Вы, должно быть, хотите оставить без икры и масла ребят из jetbrains :) Посмотреть вживую, правда, не удалось. По инструкции поставил на Win7 x64 pro VS2013 update 3 for Web с помощью онлайн-инсталлятора — студия работает, а установка ptvs в самом конце установки ломается и откатывается назад с ошибкой в журнал 1063. Нужно, видимо, скачать ISO студии и с него ставить, может чего-то не хватает.
    • 0
      1603 — это «fatal error during installation», т.е. почти все, что угодно. Попробуйте поставить ручным вызовом msiexec /L*V {filename}, и скиньте эти самие логи (лучше сразу в баг в трекере) — будем разбираться. Разницы между установкой студии онлайн-установщиком и из ISO быть не должно.

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.