Nauka Pythona dla a.NET deweloper [zamknięty]

Zajmuję się aktywnym rozwojem w C# już od kilku lat. Buduję przede wszystkim aplikacje korporacyjne oraz frameworki własne na stosie.NET.

Nigdy nie miałem potrzeby używania innych popularnych języków wysokiego poziomu poza C# do moich zadań, ponieważ. NET jest standardową platformą, z której korzystamy.

Istnieją pewne starsze aplikacje Pythona, które zostały poproszone o wsparcie w przyszłości, nie mam ekspozycji na python i dynamicznych języków w ogóle(chociaż zrobiłem trochę JavaScript).

Miałem nadzieję uzyskać jakieś wskazówki/porady, aby pomóc w nauce języka takiego jak python dla statycznie wpisanego umysłu.

EDIT: używanie Ironpythona nie wchodzi w grę!

Author: Nosredna, 2009-07-02

8 answers

Foord and Muirhead ' sIronPython in Action to zadziwiająco dobra książka, doskonale nadająca się do nauczania Pythona ludziom.NET, a także do nauczania. NET ludziom Pythona. Być może jestem stronniczy, ponieważ byłem recenzentem technologicznym, a Foord jest przyjacielem, ale miałem inne przypadki w przeszłości, w których przyjaciel napisał książkę, a ja recenzowałem ją-i skończyło się na tym, że książka była po prostu zła i publicznie tak powiedziała (sposób na utratę przyjaciół, ale po prostu nie mogę powiedzieć kłamstwa, nie tam, gdzie Python jest zainteresowany Pythonem). najmniej!-)

Edit: Jeśli nie wolno Ci przenieść się na IronPython (który prawdopodobnie obsługiwałby twoje starsze aplikacje, btw), są lepsze odpowiedzi: Mark Pilgrim ' s Dive into Python jest często uważany za najlepsze Intro Pythona dla doświadczonych programistów, a mój własny Python w pigułce został chwalony jako najszybszy sposób na pokładzie dla twórców superstar. Jestem oczywiście stronniczy na rzecz tych ... Mark jest kolegą, a moja żona była kluczem tech editor za swoją książkę (i moją własną), i oczywiście jestem stronniczy na rzecz własnej książki też;-). Ale potem, ja do wydają się być stronnicze w stosunku do wielu najlepszych książek Pythona, ponieważ albo miałem rękę w ich edycji, albo jestem przyjacielem ich autorów, lub obu;-).

 19
Author: Alex Martelli,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-07-02 05:16:19

Najtrudniejszą rzeczą, z jaką miałem do czynienia w używaniu Pythona pochodzącego z Javy, było prawidłowe owinięcie głowy wokół pisania kaczek... Na początku myślałem, że to po prostu straszne i po prostu ubrałem włosy na plecach na szyi.

Następny jest zakres według konwencji, ale ten jest dość łatwy. A znaczenie białych przestrzeni dało mi kilka uderzeń.

Jednak gdy już opanujesz zwięzłość i szybkość rozwoju języka, nauczysz się go bardziej doceniać. Po chwili pomyślałem, że to najlepsza rzecz, jaka mi się przytrafiła !! :-)

Oto kilka rzeczy, które bardzo mi pomogły:

Najpierw zacząłem od tej Książki i dostałem podstawy języka i do codziennego użytku Python Quick Reference Card był bardzo pomocny. Również konsola będzie twoim najlepszym sprzymierzeńcem, aby spróbować szybkich rzeczy i wzmocnić swoją naukę.

Dla Idów, pochodzących ze świata zaćmienia PyDev był naturalnym wyborem dla mnie, ale było w czym wybierać. Ale jeśli jesteś bardziej zaznajomiony ze środowiskiem Visual Studio, narzędzia Python dla Visual Studio również są całkiem niezłe.

Powodzenia, mam nadzieję, że znajdziesz Pythona tak samo zabawnego jak ja.

 7
Author: Newtopian,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-01-04 16:29:52

Istnieje duża początkowa przeszkoda w komfortowym pisaniu dynamicznym. Pierwszym krokiem jest, gdy spojrzysz na kod Pythona i zdasz sobie sprawę, że zmienne nie są nigdzie zdefiniowane, po prostu tworzysz je z powietrza, co przypomina skakanie z klifu. Jest krótki moment, zanim lotnia złapie powietrze prawidłowo.

A potem minie trochę czasu, zanim zaufasz swoim nowo odkrytym dynamicznym skrzydłom i prawdopodobnie możesz je zdobyć tylko wykonując akrobacje z nimi. Dowiedz się, jak python obsługuje odniesienia, baw się metodami łatania małp, typuj różne zwierzęta. Spróbuj nauczyć się brzydkich sztuczek.

I chociaż nie możesz używać Ironpythona do tego, nie ma powodu, abyś nie mógł go używać do nauki Pythona.

 3
Author: Lennart Regebro,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-07-02 06:26:08

Doświadczysz sporego szoku kulturowego przechodząc od C# do dzikiego Kaczora-typed outback Pythona. Brak typów i inteligencji może być dość zniechęcający. Dobrze, że masz doświadczenie w JavaScript. Wiedz też, że zasady blokowania indent-sensitive w Pythonie mogą być bardzo mylące dla niedoświadczenia (Zwykle albo go kochasz, albo nienawidzisz :-)

Poza tym największym wyzwaniem jest przejście z jednego języka do drugiego, zazwyczaj jest to framework. Poznanie wszystkich klasy i funkcje po prostu wymaga czasu niestety.

 2
Author: Per Erik Stendahl,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-07-02 09:33:46

Książka Pro IronPython też warto przeczytać, jeśli masz czas.

 1
Author: sunqiang,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-07-02 05:19:10

Polecam poczytać o tym książkę. Książka dla początkujących. Będzie zawierał wiele rzeczy, które już wiesz, ale nie przegapisz niczego, jeśli chodzi o używanie dynamicznego języka. Mogę wskazać ci zanurzyć się w Pythonie , który wydaje się być bardzo przyjazny, lub Tutorial Pythona który wydaje się być bardzo do rzeczy (tak się nauczyłem).

 1
Author: pupeno,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-07-02 06:30:48

Dla doświadczonych programistów uczących się Pythona, Dive Into Python jest bardzo dobrą książką.

Wesley Chun 's Core Python Programming książka zajmuje bardziej" Grund up " podejście, które może być trochę powolne dla doświadczonego dewelopera. Pozwoliło to jednak na bardzo łatwe porównanie podstawowej składni i operatorów w porównaniu z innymi językami. Styl pisania Wesleya jest bardzo łatwy do odczytania, a jego przykładowe projekty są na tyle nietrywialne, że mogą być naprawdę interesujące.

Python Cookbook jest doskonałym punktem odniesienia do nauki programowania w "Pythoniczny" sposób. Ta książka zawiera setki (?) z przykładami jak rozwiązywać typowe codzienne problemy z Pythonem. Ogólnie rzecz biorąc, seria "Cookbook" pozwoli Ci zapoznać się z idiomami języka szybciej niż jakakolwiek inna książka.

Ilekroć muszę nauczyć się nowego języka programowania, zaczynam go używać do wszystkich "codziennych" zadań, które pojawiają się - wszystkie małe rzeczy, które chciałbym normalnie rozwiązuj za pomocą skryptu powłoki lub zwykłych narzędzi uniksowych-zaczynam używać nowego języka do rozwiązywania tych problemów. Ponieważ masz doświadczenie. NET, IronPython jest prawdopodobnie dobrym sposobem na wykorzystanie tej wiedzy podczas nauki Pythona. Nawet jeśli instalujesz IronPython tylko w osobistej piaskownicy...i używać go do wszystkich codziennych zadań związanych z kodowaniem - to może być świetny sposób, aby nauczyć się składni i idiomów Pythona.

 1
Author: Stan Graves,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-07-02 15:22:53

Polecam użycie IronPython , aby pomóc ci się nauczyć. Jest to implementacja Pythona na. Net framework. Możesz więc używać/uczyć się Pythona z dostępem do biblioteki klas. NET.

Dobrym miejscem na początek jest pobranie IronPython i przyjrzenie się IronPython w Akcji, która jest bardzo dobrą książką patrząc na Pythona w.NET framework.

EDIT: ponieważ IronPython nie wchodzi w grę, zignoruj tę odpowiedź. Ale dzięki.

 1
Author: ecounysis,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2009-07-03 05:19:16