2010-09-11 2 views
7

В принципе, я и мой друг просто планируют работать над проектом Python, который будет иметь интерфейс GUI, а также включить передачу файлов и удаленное перечисление файлов. У нас есть большинство инструментов, которые мы будем использовать, Glade, Python и т. Д.В IDE или нет? Дилемма начинающего разработчика

Я просто хочу знать, следует ли использовать IDE или нет.

Я слышал только хорошие вещи об Анджуте, но не убежден в поддержке Python; прокомментировать?
А также есть ли какая-нибудь другая хорошая IDE, которую я должен проверить?

В настоящее время я просто планирую кодирование, как обычно в vim.

+0

См. Также [IDE или текстовый редактор?] (Http://stackoverflow.com/questions/136056/ide-or-text-editor), [Почему я должен использовать среду IDE?] (Http: // stackoverflow. ком/вопросы/208193/почему-должен-я-использование-ан-ида). Вопрос не может быть полностью языковым агностиком, но все же ... – dmckee

ответ

2

Есть множество IDE, которые вы можете проверить. Взгляните на PyDev, PIDA, Komodo, Eric.

Я лично не думаю, что IDE добавят , что много для разработки программного обеспечения (на этой шкале и на этом языке). У Python есть прекрасные инструменты внешней отладки, и рефакторинг не так уж трудна с программой такого размера.

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

Если у вас есть интеграция с версией, вы должны быть в порядке.

+2

Интеграция VCS вряд ли является обязательным требованием. Вы всегда можете использовать его из командной строки. В противном случае в основном согласованы. –

2

Лично я делаю большую часть своего кода на Python в Vim, но время от времени мне хочется использовать полноценную IDE, и я использую Eclipse с Pydev в те времена.

Это зависит от ваших предпочтений, некоторые люди абсолютно любят Vim и не будут использовать ничего другого. Другие просто не могут работать без IDE.

Вот список:

7

Возможность отладки с помощью IDE делает вашу жизнь намного проще.

2

С точки зрения использования IDE или нет, это не имеет значения. Я предпочитаю использовать IDE, поскольку мне нравится иметь инструменты, которые мне нужны, в один прекрасный, аккуратный небольшой пакет, который может обрабатывать все мои разработки. Тем не менее, использование текстового редактора так же хорошо, особенно те, которые являются мощными и расширяемыми, как vi (m) и (x) emacs. Однако настоящими причинами использования IDE являются завершение кода, управление отступом, сворачивание кода, поддержка рефакторинга и отладка.

Если вы хотите проверить другие IDE для разработки Python, я бы предложил также посмотреть на NetBeans и Eclipse с соответствующими плагинами. Я лично предпочитаю NetBeans, так как у меня такое чувство, что PyDev собирается спускаться с тех пор, как Аптана купила их (ранее они разрушили RadRails, который является плагином Eclipse для разработки Ruby on Rails) и не хотят устраивать инструмент, который может оказаться нецелесообразным долгосрочным.

+0

«Завершение кода, управление отступом, сгибание кода, поддержка рефакторинга и отладка». Emacs может делать все это, Vim может делать больше всего. (Я не уверен в поддержке отладки в Vim, я просто использую GDB) – alternative

+1

Я понимаю, что это расширения или плагины для Vim и Emacs, а не родные для текстового редактора. –

0

Если вы только начинаете изучать стек python/glade/gtk, я бы сказал, что вы должны начать без IDE, чтобы узнать, как он работает внутри. Это поможет вам позже, когда ваш код будет больше и сложнее.

Однако хорошая IDE помогает во многих отношениях, я бы не рекомендовал использовать их в конечном итоге. Эта статья может помочь вам решить, нужен ли вам какой-либо из них: http://infoworld.com/d/developer-world/infoworld-review-nine-fine-python-development-tools-374

3

Python - особенно странный язык, поскольку полноценная IDE на самом деле не добавляет много (и некоторые утверждают, что IDE имеет тенденцию сильно ограничивать ваше мышление -flow в Python). Я использую обычные Vim и Gedit для разработки на Python и никогда не пропускал использование IDE.

Текстовые редакторы, такие как Vim или Emacs, могут быть настроены достаточно гибко, чтобы соответствовать мощности IDE, хотя, на самом деле, не имеет значения, в каком направлении вы идете.

+0

+1 Обычно я использую среду IDE для программирования, но когда я начал с Python, я начал с Vim, застрявшего в нем, никогда не испытывая потребности в среде IDE. – helpermethod

0

это лошади для курсов, лично я намного счастливее с textmate или vim и приятной чашкой кофе, но это то, что чувствует себя более комфортно для вас.

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

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

0

Два способа подойти к этому:

  1. Используйте то, что вы привыкли. Если вы использовали редактор в прошлом и знаете его причуды, придерживайтесь его. Вы потратите меньше времени на выяснение того, как работать с инструментом и тратить больше времени на фактический проект.

  2. Используйте что-то новое. Anjuta, vim, что угодно, если вы не потратили слишком много времени на это. Вы узнаете много нового, помимо вашего фактического проекта, но сам проект не будет выполняться так быстро, как может быть.

Лично я предпочитаю 2. Всегда что-то новое, пока это не грызть время и он-есть, чтобы быть сделано, по-пятницу. IDE может помочь вам только так много, но когда вы все еще находитесь на этапе обучения, больше времени вы тратите на код самостоятельно, тем лучше.

1

С Java, я бы сказал, нет IDE для новичков, потому что вы должны сначала понять CLASSPATH.

С Python я бы сказал PyCharm от JetBrains. IntelliJ - лучшая Java IDE; PyCharm делает мой Python работой.

+0

Я слышал много приятных вещей о PyCharm и JetBrains, но я просто делаю это для удовольствия и, надеюсь, что-то изучаю, поэтому я не думаю, что хочу заплатить за инструменты, которые я использую, особенно когда я кодирую в Linux :) – elricL

+0

Есть версия Linux. И это будет 49 долларов для меня, когда он появится, так как у меня уже есть лицензия IntelliJ. Он платит за себя, все это сохраняет вас. – duffymo

+0

По этой цене я больше вижу ее как благотворительность. Кроме того, я благотворительный и пользователь Linux, и не вижу в этом никаких проблем. – lacroix1547

1

ИМХО, не используя IDE для разработки, так же, как использование пишущей машинки для написания романа. Никто не сказал, что вы не можете, но почему вы должны стараться, когда у вас уже есть ноутбук?

+0

Использование IDE похоже на разработку с пишущей машиной для написания романа. Никто не сказал, что вы не можете, но зачем пытаться это сделать, когда у вас уже есть ноутбук с текстовым редактором, который позволяет вам вводить очень быстро и быстро перемещаться по тексту? – alternative

1

Я код в Vim для python. Если вы хотите использовать IDE, я бы рекомендовал PyCharm от IntelliJ. Я использую vim, потому что фактическое редактирование намного превосходит, и если вы являетесь сильным пользователем, очень мало того, что вы не можете сделать легко.

PyCharm предоставляет помощь с помощью api, предоставляя завершение и помогает с некоторым базовым рефакторингом. Эти преимущества носят износ раньше, чем вы ожидали. Я использую grep и vim regex для рефакторинга - это немного больше работы, чем pycharm, но если вы можете справиться с этим, преимущества vim явно перевешивают с помощью ide.

Я предполагаю, что вы развиваетесь в среде * nix, если вы используете окна, тогда я бы рекомендовал использовать Ide.

1

В отличие от некоторых других ребята, я думаю, что IDE делает, добавьте много для разработки программного обеспечения, даже для динамически типизированного языка, такого как Python, что затрудняет статический анализ.

Предпочитаемая IDE для разработки Python - Eclipse с PyDev. До этого я закодировал в Notepad ++, который не сильно отличается от редактора PyDev с точки зрения возможностей. PyDev обладает некоторыми замечательными функциями, которые вы не найдете в «нормальном» редакторе:

  • В нем отображаются предупреждения и ошибки синтаксиса (почти) в реальном времени. Текстовый редактор не расскажет мне о опечатках, но PyDev. В качестве другого примера неразрешенные импорт или неопределенные функции (например, из-за опечатки) отмечены как предупреждения/ошибки. И есть еще много распространенных ошибок, которые автоматически обнаруживаются, и PyDev может быть интегрирован с pylint, чтобы предупреждения и ошибки из pylint отображались с обычными значками в редакторе.
  • автозаполнения интроспекции
  • вид Outline текущего модуля и его классы

Кроме того, Eclipse себя также отлично подходит для любого вида программирования проекта. Мне особенно нравится полностью интегрированный интерфейс - проводник проекта, редактор, контур, консоль, обзор проблем, конфигурации запуска и т. Д. При использовании Vim, Emacs или подобных, я думаю, вам нужно будет установить множество плагинов или настраиваемых скриптов для достижения того же.

Как вы сказали, вы хотите сделать проект, я думаю, что Eclipse - хороший выбор. Разумеется, для быстрого взлома небольшого скрипта Python.

0

Я не программист на Python, но я предпочитаю не использовать IDE.
Причина в том, что я обнаружил, что IDE часто большие и делают для меня слишком много вещей, а использование Notepad ++ и командной строки позволяет мне обрезать вещи в соответствии со своими потребностями, а не быть окруженными функциями, которые я не делаю использовать. Это позволяет мне легче учиться, потому что я больше контролирую, что происходит.

0

Не изучайте кодирование с помощью IDE. Код с этим!

0

Я нахожу использование IDE, чтобы резко повысить производительность моего кода на Python. В частности, использование wingide делает кодирование в python удовольствием. Он имеет все нормальные вещи, которые вы ожидаете (подсветка синтаксиса, автозаполнение и т. Д.), Но функции убийцы - это отладчик и отладочный зонд.

Эти две функции стоят стоимости программы. Он позволяет увидеть текущее состояние приложения и опробовать команды python в реальном времени на контрольных точках. Я считаю это особенно полезным для изучения текущего состояния и опробования кода, чтобы узнать, будет ли он работать. Я часто пишу некоторые из более сложных разделов кода в отладочном зонде live, и они копируют их в мое приложение. Очень хорошо.