2009-06-06 15 views
9

Obecnie pracuję wyłącznie z .NET i chciałbym mieć go w Pythonie. W tym celu muszę skonfigurować środowisko programistyczne Pythona. Prowadziłbym do tego byłoby przydatne. Sądzę, że robiłbym programowanie w sieci, więc będzie potrzebował serwera WWW i prawdopodobnie bazy danych. Potrzebuję także wskaźników do popularnych ORMów, szkieletu MVC i biblioteki testowej.Potrzebuję przewodnika dla początkujących do konfigurowania okien dla rozwoju Pythona

Jednym z moich głównych kryteriów jest to, że chcę zrozumieć, jak to działa i chcę, aby był jak najbardziej odizolowany. Jest to ważne, ponieważ nie dbam o to, aby zanieczyszczać działające środowisko .NET z zewnętrznymi serwerami WWW i bazami danych. Jestem całkowicie zadowolony z używania SQLite, jeśli jest to możliwe.

Jeśli dobrze sobie z tym poradzę, prawdopodobnie będę chciał skonfigurować automatyczny serwer budowania i ci (na maszynie wirtualnej, prawdopodobnie ubuntu). Wszelkie sugestie na te będą przydatne.

Moim ostatecznym celem, jeśli lubię Pythona, jest posiadanie podobnych narzędzi, które mam dostępne w .NET i naprawdę zrozumieć budowę i wdrożenie tego wszystkiego. Na początek zadowię się prostym środowiskiem programistycznym, które jest maksymalnie izolowane i łatwo je usunąć, jeśli mi się nie spodoba. Nie chcę używać IronPython, ponieważ chcę mieć pełne doświadczenie w tworzeniu rozwiązania Pythona za pomocą powszechnie używanych narzędzi i frameworków.

+0

pokrewne: 'Instalator Python środowisko Windows', http://stackoverflow.com/questions/182053/ – Jonik

Odpowiedz

5

To nie jest takie trudne do skonfigurowania środowiska Pythona, i nigdy nie miałem to syf się moje prace .NET. Zasadniczo zainstaluj Pythona --- ja używałbym raczej wersji 2.6 niż 3.0, która nie jest jeszcze szeroko akceptowana --- i dodaje ją do Twojej PATH, i jesteś gotowy, aby przejść z językiem. Nie polecałbym używania maszyny wirtualnej Ubuntu jako środowiska programistycznego; jeśli pracujesz w systemie Windows, równie dobrze możesz rozwijać się w systemie Windows i nie miałem żadnych poważniejszych problemów. Wracam z Windows do Linuxa bez problemu.

Jeśli masz edytor, który ci odpowiada, który ma podstawowe wsparcie dla Pythona, trzymałbym się go. Jeśli nie, znalazłem Geany jako miły, lekki, łatwy w użyciu edytor z dobrym wsparciem dla Pythona, choć sam korzystam z Emacs, ponieważ go znam; inni ludzie, jak SCITE, NotePad++, lub którykolwiek z mnóstwa innych. Uniknąłbym świetnych IDE dla Pythona, ponieważ nie pasują one do charakteru języka i nie zawracałbym sobie głowy IDLE (dołączonym do Pythona), ponieważ jest to królewski ból do wykorzystania.

Propozycje dla bibliotek i ram:

  • Django jest standardowy ramy internetowej, ale jest to duży i trzeba pracować drogę Django; Wolę CherryPy, który jest również aktywnie obsługiwany, ale jest lekki, daje dużą swobodę i zawiera ładny, solidny serwer WWW, który można łatwo zastąpić httpd.
  • Django zawiera własny ORM, który jest wystarczająco dobry; jest samodzielnym jeden dla Pythona, choć, co jest nawet ładniejszy: SQL Alchemy
  • ile biblioteka testowanie idzie, pyunit wydaje mi się oczywistym wyborem

Powodzenia i witamy naprawdę zabawne język!

Podsumowanie EDYCJI: Pierwotnie zalecałem Karrigell, ale już nie mogę: od wydania 3.0 jest ono ciągle przerywane, a społeczność nie jest wystarczająco duża, aby rozwiązać problemy. CherryPy to dobry zamiennik, jeśli lubisz lekkie, proste ramy, które nie przeszkadzają, więc zmieniłem powyższe, aby zasugerować to.

+0

Dzięki. Właśnie tego szukałem. Obecnie używam e! jako mój zwykły edytor tekstu i wykorzystam to, o czym myślę przy tworzeniu Pythona. –

3

Dobrze, jeśli myślisz o utworzenie VM Ubuntu tak, równie dobrze można zrobić to środowisko programistyczne. Następnie możesz zainstalować Apache i MySQL lub Postgres na tej maszynie wirtualnej za pomocą standardowych narzędzi do pakowania (apt-get install) i nie ma niebezpieczeństwa zanieczyszczenia środowiska Windows.

Możesz dokonać rzeczywistego rozwoju na komputerze z systemem Windows za pośrednictwem ulubionego IDE, używając VM jako dysku sieciowego i zapisać tam kod, lub możesz po prostu użyć VM jako pełnego środowiska graficznego i zrobić wszystko, co polecam.

3

Zainstaluj prekonfigurowane wydanie ActivePython z activestate. Zawiera między innymi PythonWin IDE (tylko Windows), który ułatwia interaktywne przeglądanie Pythona.

Zalecaną referencją jest Dive Into Python, o której wiele razy wspominano podczas podobnych dyskusji na temat SO.

+1

Dive Into Python rocks :) – rslite

3

Należy zainstalować python python 2.4, 2.5, 2.6 i python python 3.0, i dodać do ścieżki z nich korzystać częściej (Dodaj c: \ Pythonxx \ i C: \ Pythonxx \ Scripts).

Dla każdego python 2.x zainstaluj easy_install; Pobierz ez_setup.py a następnie z cmd:

c:\Python2x\python.exe x:\path\to\ez_setup.py 
c:\Python2x\Scripts\easy_install virtualenv 

Następnie przy każdym uruchomieniu nowego projektu utworzenia nowego wirtualnego środowiska do odizolowania konkretny pakiet, który potrzebuje dla swojego projektu:

mkdir <project name> 
cd <project name> 
c:\Python2x\Scripts\virtualenv --no-site-packages .\v 

Tworzy kopię Pythona i jego bibliotek w .v \ Scripts i. \ v \ Lib. Wszystkie pakiety osób trzecich instalowane w tym środowisku zostaną umieszczone w. \ V \ Lib \ site-packages. Pakiety -no-site nie dają dostępu do pakietu globalnej strony, więc możesz być pewien, że wszystkie twoje zależności są w \ v \ Lib \ site-packages.

Aby aktywować wirtualnego środowiska:

.\v\Scripts\activate 

dla ram, istnieje wiele. Django jest świetny i bardzo dobrze udokumentowany, ale prawdopodobnie powinieneś najpierw przyjrzeć się Pylonom za jego dokumentację na temat unicode, pakowaniu, wdrażaniu i testowaniu oraz lepszej obsłudze WSGI.

Dla IDE, Python jest wyposażony w IDLE, który wystarcza do nauki, jednak warto spojrzeć na Eclipse + PyDev, Komodo lub Wingware Python IDE. Netbean 6.5 ma wsparcie beta dla Pythona, które wygląda obiecująco (Zobacz top 5 python IDE).

Do serwera WWW nie są potrzebne; Python ma swój własny i wszystkie ramy sieciowe są dostarczane z własnymi. Możesz zainstalować MySql lub ProgreSql; często lepiej jest rozwijać na tym samym DB, którego użyjesz do produkcji.

Ponadto, gdy nauczysz się Python, spójrz na Foundations of Agile Python Development lub Expert Python Programming.

+0

To brzmi bardzo interesująco. Czy możesz wyjaśnić, co robi ustawienie tych odizolowanych środowisk? Czy kopiuje środowisko wykonawcze do katalogu, w którym się rozwijasz? –

+0

Zauważ, że ActivePython jest już dostarczany z virtualenv/easy_install i własnym menedżerem pakietów binarnych (PyPM); w przyszłości będzie również zawierać pip i IPython. –

0

Python ma wbudowaną bazę danych SQL i serwer WWW, więc nie trzeba instalować żadnych aplikacji innych firm. Pamiętaj, że Python jest dostarczany z bateriami.

1

Środowisko?

Oto najprostsze rozwiązanie:

  • Install Active Python 2.6. Jest to sam Python, ale zawiera dodatkowe użyteczne rzeczy, takie jak DiveintoPython chm.

  • Użyj Komodo Edit 5. Jest to jeden z dobrych darmowych edytorów, których możesz używać w Pythonie.

  • Użyj IDLE. Jest to najprostszy edytor krótkich urywków z podświetlaniem składni i autouzupełnianiem, którego nie ma żaden inny IDE. Jest dostarczany z pytonem.

  • Użyj Ipython. Jest to powłoka, która wykonuje podświetlanie składni i automatyczne uzupełnianie, funkcje basha, ładny druk, rejestrowanie, historię i wiele takich rzeczy.

  • Instalacja easy_install i/lub pip do łatwego instalowania różnych aplikacji innych firm.

Pochodzące z Visual Studio i .Net zabrzmią zupełnie inaczej, ale jest to zupełnie inny świat.

Dla architektury, django działa najlepiej. Przejdź przez samouczek, a będziesz pod wrażeniem. Dokumentacja kołysze. Społeczność, musisz sam zobaczyć, aby wiedzieć, jak wspaniale jest !!

0

Jeśli pracował z Eclipse, zanim dasz Pydev spróbować

1

UWAGA: włączyłem dużo linków do ram, projektach i co-nie, ale jako nowy użytkownik I był ograniczony do 1 link za odpowiedź. Jeśli ktoś inny mający wystarczająco dużo reputacji do edycji chce/może je edytować w tej odpowiedzi zamiast w przypisach, byłbym wdzięczny.

Istnieje kilka IDE Pythona, takich jak Wing IDE [1], Wierzę, że niektórzy ludzie używają Eclipse [2] z python plugin [3], jak również. Wiele osób w kanale #python w FreeNode wydaje się preferować vim, emacs, nano i podobne edytory tekstu na rzecz IDE. Moim osobistym, preferowanym edytorem jest Vim, ale jeśli w większości robiłeś program .NET w Windows, prawdopodobnie przy użyciu zwykłych IDE Visual Xa, vim i emacs prawdopodobnie spowodują szok kulturowy i lepiej byłoby użyć IDE.

Prawie wszystkie platformy internetowe Pythona * obsługują standard WSGI [4], większość dużych serwerów ma wtyczkę do obsługi WSGI, pozostałe obsługują WSGI za pomocą szybkich cgi lub zwykłych cgi.

Struktury Zope [5] i Django [6] mają swoje własne ORMy, z których dwie najbardziej znane to SQL Alchemy [7] i SQL Object [8].Mam tylko doświadczenie z tym pierwszym, ale oba wspierają wszystkie możliwe wybory dotyczące bazy danych, w tym SQLite, który jest instalowany razem z Pythonem, a zatem doskonale nadaje się do testowania i eksperymentowania bez zanieczyszczania środowiska .NET za pomocą 3-częściowych serwerów WWW i serwerów baz danych.

Wbudowane ramy unittest [9] i pyunit [10] wydają się być preferowanymi rozwiązaniami do testów jednostkowych, ale nie mam z nimi dużego doświadczenia.

bpython [11] i [12] ipython ofercie wzmocnione powłok interaktywnych Pythona, który może znacznie przyspieszyć i testowanie małych fragmentów kodu i dlatego warto przyjrzeć się, by.

chodzi o listę dobrze znanych i często stosowanych ram internetowych, spojrzeć na następujące ram **:

  • Twisted [13] Jest to ogólny ramy sieci, który obsługuje prawie każdy protokół pod słońcem .
  • Pylony [14] stanowi ramy lekkie celem jest jak najbardziej elastyczny i pozostawiając wszystkie decyzje o tym, co ORM, język szablonów i co-nie do ciebie.
  • CherryPy [15] próbuje udostępnić interfejs do prezentacji obiektów Pythona w Internecie.
  • Django [6] próbuje się all-in-one, Builtin układ matrycy, Orm stron administracyjnych i na skalę międzynarodową. Podczas gdy poprzednie frameworki mają więcej okablowania DIY, różne frameworki pracują z nimi.
  • Zope [5] ma na celu być odpowiednie dla dużych aplikacji korporacyjnych, słyszałem tylko dobre rzeczy o nim, ale konsensus wydaje się, że dla mniejszych jesteś prawdopodobnie lepiej z jednym z prostszych i mniejszych ram .
  • TurboGears [16] to framework, o którym mi wiadomo najmniej, ale wydaje się, że jest to głównie konkurencja dla Django.

To wszystko, co mogę teraz wymyślić, będę edytować i dodawać rzeczy, jeśli mogę o tym pomyśleć. Mam nadzieję, że to pomoże wam w cudownym świecie Pythona.


* - Głównym wyjątkiem byłoby mod_pythona Apache, których należy unikać dokładnie z tego powodu, należy użyć mod_wsgi zamiast.
** - Słowo ostrzeżenia, ja osobiście nie używali tych ram jest to po prostu bardzo krótki wrażenie Dostałem od rozmowy z innymi ludźmi o każdej ramy, może być szalenie niedokładne. (Jeśli ktoś ma jakieś poprawki, zrób komentarz, a ja spróbuję edytować i naprawić tę odpowiedź).

(http: // brakuje ponieważ są one uznawane jako linki inaczej)
[1] www.wingware.com/
[2] www.eclipse.org/
[3] PyDev. sourceforge.net/
[4] wsgi.org/wsgi/
[5] www.zope.org/
[6] www.djangoproject.com/
[7] www.sqlalchemy.org/
[8] www.sqlobject.org/
[9] docs.python.org/library/unittest.html
[10] pyunit.sourceforge.net/pyunit.html
[11] www.bpython-interpreter.org/
[12] ipython.scipy.org/
[13] twistedmatrix.com/trac/
[14] pylonshq.com/
[15] www.cherrypy.org/
[16] turbogears.org/

Powiązane problemy