Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Python
misiek172
post
Post #1





Grupa: Zarejestrowani
Postów: 656
Pomógł: 3
Dołączył: 26.10.2005
Skąd: Częstochowa

Ostrzeżenie: (0%)
-----


Witam.

Od paru dni próbuję zapoznać się z tematyką Pythona. Przeczytałem pare artykułów, posiedziałem na forach itp. I nadal do końca niewiem do czego on tak naprawde służy, co ma takiego co innym językom brakuję.

Bardzo proszę o przedstawienie mi tematyki Pythona tak na chłopski rozum. Jego zalty i wady oraz w czym ułatwie prace.

Pozdrawiam i z góry dziękuje, Łukasz.
Go to the top of the page
+Quote Post
11 Stron V  « < 7 8 9 10 11 >  
Start new topic
Odpowiedzi (160 - 179)
Jabol
post
Post #161





Grupa: Przyjaciele php.pl
Postów: 1 467
Pomógł: 13
Dołączył: 22.02.2003

Ostrzeżenie: (0%)
-----


Po co w takim razie tworzyć atrybuty jako prywatne, skoro i tak można mieć do nich dostęp?
Czyli co, ten Hibernate - to nic nadzwyczajnego? Jak na razie czytałem tylko features i pare przykładów i te mi zaimponowały. W Javie czeka mnie właśnie rozdział Proxy, także jeszcze wiele samemu nie pisałem.
SQLObject pod Pythona to też niezłe cacko, ale ma parę wad: Obiekty SQLObject dziedziczą po SQLObject i tymsamym nie są już zwykłymi obiektami użytkowymi. Pełnią funkcję "trzymaczy" danych. Oczywiście mogą implementować logikę, ale... :/. Za to jako opakowania danych są naprawdę niesamowite (i mają świetne API do implementowania "logiki danych").

Wiesz - w Pythonie też mogę napisać parser komentarzy a potem robić
Kod
rf=Reflection(KlasaABC) # I klasa jest obiektem - nie muszę się do niej odnosić poprzez Stringa
rf.parseDocComent().getAuthor() # etc...
Także w PHP to nic nadzwyczajnego. Tyle, że to w PHP zupełnie bezużyteczne i nieprzydatne (czego byś nie powiedział).

Tak - chodzi mi o użycie Pythona jako zastępstwo dla Perla - ale w dużo większym zakresie. I nie interpretujcie mnie źle - nie chodzi, że tam jest PYthona miejsce - tam jest jedno z jego użyć.

Python niestety nie ma swojej jasno zdefiniowanej niszy. Osobiście uważam, że można go stosować wszędzie, aczkolwiek brakuje mu troszkę "high-end solution" (albo ich nie znam), jak np. właśnie przygotowanie do pisania aplikacji rozproszonych.
Go to the top of the page
+Quote Post
splatch
post
Post #162





Grupa: Zarejestrowani
Postów: 487
Pomógł: 7
Dołączył: 7.01.2004
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Cytat(Jabol @ 14.05.2007, 16:40:09 ) *
Po co w takim razie tworzyć atrybuty jako prywatne, skoro i tak można mieć do nich dostęp?
Czyli co, ten Hibernate - to nic nadzwyczajnego? Jak na razie czytałem tylko features i pare przykładów i te mi zaimponowały. W Javie czeka mnie właśnie rozdział Proxy, także jeszcze wiele samemu nie pisałem.
SQLObject pod Pythona to też niezłe cacko, ale ma parę wad: Obiekty SQLObject dziedziczą po SQLObject i tymsamym nie są już zwykłymi obiektami użytkowymi. Pełnią funkcję "trzymaczy" danych. Oczywiście mogą implementować logikę, ale... :/. Za to jako opakowania danych są naprawdę niesamowite (i mają świetne API do implementowania "logiki danych").

Są sytuacje wyjątkowe, w których dostęp ten jest konieczny. Sam do tej pory skorzystałem tylko raz z takiej opcji, z racji na to, że robiłem tzw. dirty hacka na driver do PostgreSQL. Hibernate jest potężną krową z mnóstwem opcji. Niestety jest daleki od ideału, nastręcza wielu problemów, które trzeba rozgryzać samemu we współpracy z Google jeśli nie ma się kogoś, kto przez to przechodził. Co gorsza nie ma na tą chwilę zastępnika, który mógłby konkurować z w/w biblioteką. Szansą na zmianę tego stanu rzeczy jest JPA, które definiuje ogólny interfejs dla utrwalania danych w Javie, wspólny mianownik dla Hibernate, EJB3, Toplinka, JDO i (zapewne, w przyszłości..?) wielu innych narzędzi.

Cytat(Jabol @ 14.05.2007, 16:40:09 ) *
Wiesz - w Pythonie też mogę napisać parser komentarzy a potem robić
Kod
rf=Reflection(KlasaABC) # I klasa jest obiektem - nie muszę się do niej odnosić poprzez Stringa
rf.parseDocComent().getAuthor() # etc...
Także w PHP to nic nadzwyczajnego. Tyle, że to w PHP zupełnie bezużyteczne i nieprzydatne (czego byś nie powiedział).

Chwila moment, stop! Skoro w PHP parsowanie komentarzy nie ma mieć sensu, to jaki ma mieć w Pythonie? Różnicą w tym zapisie jest tylko to, że w PHP odnoszę się przy tworzeniu ReflectorClass obiektem tudzież stringiem a nie określonym wcześniej literałem reprezentującym od razu zdefiniowaną klasę.

Cytat(Jabol @ 14.05.2007, 16:40:09 ) *
Python niestety nie ma swojej jasno zdefiniowanej niszy. Osobiście uważam, że można go stosować wszędzie, aczkolwiek brakuje mu troszkę "high-end solution" (albo ich nie znam), jak np. właśnie przygotowanie do pisania aplikacji rozproszonych.

Popieram. Brakuje jakiejś głównej domeny Pythona w której by dominował i którą mógłby przyciągać nowych ludzi.
Go to the top of the page
+Quote Post
Jabol
post
Post #163





Grupa: Przyjaciele php.pl
Postów: 1 467
Pomógł: 13
Dołączył: 22.02.2003

Ostrzeżenie: (0%)
-----


Cytat(splatch @ 14.05.2007, 16:49:10 ) *
Chwila moment, stop! Skoro w PHP parsowanie komentarzy nie ma mieć sensu, to jaki ma mieć w Pythonie?
Bo istnieje tzn. interaktywny interpreter używany przez wielu jako część środowiska programistycznego, czego się w PHP nie stosuje. I np. wpisanie komendy:
Kod
doc(obj)
wypisuje dokumentacje w stylu podobnym do man'a. I w Pythonie parsowanie komentarzy też nie ma sensu - sens ma dokumentacja obiektów. To tyle. Pozdr.

EDIT:
A tak swoją drogą ucze sie tej Javy (co prawda powoli, bo matury..., ale to w końcu nic nowego, tylko nowe biblioteki systemowe) i nie mam zupełnie pojęcia co by tu w niej pisać! W Pythonie co chwila mam jakieś świetne pomysły, to samo w C. Nawet w PHP, inna sprawa, że jak myślę o PHP to mnie skręca. A jak myśle co by tutaj napisać w Javie to...(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) Java to chyba ma jakieś niedostępne nisze dla zwykłych programistów. Rzeczywiście, żeby był sens pisać w Javie trzeba pisać coś dużego.

Hmm.. łyknąłem troszkę i Javy i muszę przyznać, że programowanie oparte na interfejsach (a raczej zarządzanie typamie oparte na interfejsach) jest bardzo wygodne. W sumie dochodzę do wniosku, że statyczne typowanie ma bardzo wiele zalet, szczególnie gdy dzieki hierarchii klas staje się tak elastyczne. Ale osobiście wolę żeby język w był w pełni dynamicznie typowany, jak Python, niż takie nie wiadomo co jak PHP. I swoją drogą Python jest bardziej obiektowy od Javy pod pewnym względem. Mianowicie nie ma typów atomowych (atomic, nie wiem jak to będzie po naszemu). Jest w zupełności obiektowy. Jest dużo bardziej Meta.
Go to the top of the page
+Quote Post
enigma
post
Post #164





Grupa: Zarejestrowani
Postów: 163
Pomógł: 0
Dołączył: 10.09.2006

Ostrzeżenie: (0%)
-----


Panowie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) ciekawy artykuł Python kontra PHP czyli węże i słonie w nowym numerze PHP Solutions (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
none
post
Post #165





Grupa: Zarejestrowani
Postów: 65
Pomógł: 1
Dołączył: 3.12.2003
Skąd: W-wa

Ostrzeżenie: (0%)
-----


Witam
Nie znam Pythona wiec nie będe się wypowiadał czy lepszy czy gorszy od php. Jedno mnie zastanawia po co się uczyć języka którego mało kto używa?

Wrzuciłem hasło Python na pracuj.pl w ciagu 30 dni, cała polska oto zestawienie :
14 ofert zawierajacych słowo Python w porównaniu z
php 84
c# 78


Chyba że programowanie to hobby to wtedy to rozumiem.
Pozdrawiam
Go to the top of the page
+Quote Post
mike
post
Post #166





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

Ostrzeżenie: (0%)
-----


PHP Ł32,108
PHP Developer Ł30,140
LAMP Ł33,098
PHP Web Developer Ł27,385
PHP Programmer Ł29,585
Senior PHP Developer Ł38,640
Junior PHP Developer Ł23,564
Senior PHP Web Developer Ł33,688
Junior PHP Web Developer Ł22,404
Senior PHP Programmer Ł38,750
Junior PHP Programmer Ł22,167

-----------------------------------------

Python Ł43,303
LAMP Ł33,098
Python Developer Ł33,464
Python Programmer Ł43,500
Python Web Developer Ł35,000

~none:
1. To, że o nim nie słyszałeś lub go nie znasz nie znaczy że jest mało popularny;
2. Jak widzisz ilośc nie znaczy jakość (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)

http://www.itjobswatch.co.uk
Go to the top of the page
+Quote Post
Jabol
post
Post #167





Grupa: Przyjaciele php.pl
Postów: 1 467
Pomógł: 13
Dołączył: 22.02.2003

Ostrzeżenie: (0%)
-----


Ktoś coś wspominał o braku porządnego IDE? Polecam Eclipse+PyDev.
Go to the top of the page
+Quote Post
bartek00
post
Post #168





Grupa: Zarejestrowani
Postów: 18
Pomógł: 0
Dołączył: 12.04.2007
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Ja rowniez polecam Polecam Eclipse+PyDev. Bardzo przyjemnie sie z tym srodowiskiem pracuje, zwlaszcza ze Eclipse ma jeszcze wiele innych zastosowan, nawet dla PHP.

Pozdrawiam
Go to the top of the page
+Quote Post
splatch
post
Post #169





Grupa: Zarejestrowani
Postów: 487
Pomógł: 7
Dołączył: 7.01.2004
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


W wkrótce prawdopodobnie pojawi się jeszcze jedno IDE oparte o Dynamic Languages Toolkit
Go to the top of the page
+Quote Post
Jabol
post
Post #170





Grupa: Przyjaciele php.pl
Postów: 1 467
Pomógł: 13
Dołączył: 22.02.2003

Ostrzeżenie: (0%)
-----


Nie wiem ilu z Was slyszalo o czyms takim jak Jython. To jest dopiero odjazd, PHP przy tym wymiekka. Ogolnie mowiac wprost jest to interpretator Pythona zaimplementowany w Javie. Oczywiscie, pierwsze o czym myslicie, to tyle, ze skoro to jest w Javie to na pewno jest po prostu wolniejsze i ktos to sobie zrobil z nudow. Ale ja na to zapodam taki kod:
Kod
from javax.swing import JFrame

frame = JFrame()
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)
frame.setSize(300, 200)
frame.setVisible(1)
Tak! W Jythonie mozna korzystac z calego API Javy! To sie po prostu w pale nie miesci jakie to daje mozliwosci.
Dalej te pliki w Pythonie mozna kompilowac do kodu bitowego wirtualnej maszyny Javy aby pozniej z nich korzystac w programach pisanych w Javie! I pomimo, ze Python nie obsluguje interfejsow nie ma problemu z ich dzialaniem w Jythonie. Ojej, ale sie nakrecilem...

Jedyna wada to taka, ze jeszcze nie znalazlem edytora ktory dobrze by obslugiwal code completion.
No i niektore moduly Pythona sa niedostepne (ale za to *cale* API Javy).

Jak Wam sie podoba?
Go to the top of the page
+Quote Post
UDAT
post
Post #171





Grupa: Zarejestrowani
Postów: 442
Pomógł: 0
Dołączył: 27.12.2005

Ostrzeżenie: (0%)
-----


Cytat(Jabol @ 2.08.2007, 12:31:57 ) *
Nie wiem ilu z Was slyszalo o czyms takim jak Jython. To jest dopiero odjazd, PHP przy tym wymiekka. Ogolnie mowiac wprost jest to interpretator Pythona zaimplementowany w Javie.

A co powiesz na Quercus - PHP w Javie?(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ?
Go to the top of the page
+Quote Post
Cosi*
post
Post #172





Grupa: Zarejestrowani
Postów: 51
Pomógł: 0
Dołączył: 9.07.2007
Skąd: Dąbrowa Górnicza

Ostrzeżenie: (0%)
-----


@UDAT: A czy można tym robić aplikacje client-side? Z tego co widzę w dokumentacji, to chyba tylko servlety, a szkoda.....
Go to the top of the page
+Quote Post
Jabol
post
Post #173





Grupa: Przyjaciele php.pl
Postów: 1 467
Pomógł: 13
Dołączył: 22.02.2003

Ostrzeżenie: (0%)
-----


Cytat(UDAT @ 2.08.2007, 12:40:56 ) *

Lol, niezle. Ogolnie to zaczynam lubic Jave (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) . Nie jako jezyk ale jako srodowisko. Aczkolwiek jak sie temu przyjzalem to to jednak nie to samo. Duzo mniejsze mozliwosci (no bo i projekt na duzo mniejsza skale).

Ten post edytował Jabol 2.08.2007, 11:53:05
Go to the top of the page
+Quote Post
UDAT
post
Post #174





Grupa: Zarejestrowani
Postów: 442
Pomógł: 0
Dołączył: 27.12.2005

Ostrzeżenie: (0%)
-----


Cytat(Cosi* @ 2.08.2007, 12:49:14 ) *
@UDAT: A czy można tym robić aplikacje client-side? Z tego co widzę w dokumentacji, to chyba tylko servlety, a szkoda.....


Można używać PHP w Javie zgodnie z JSR223 - czyli jak każdy inny język skryptowy (np. Jython czy JRuby) za pomocą klasy javax.script.ScriptEngineManager. Prymitywny przykład użycia PHP w aplikacjach client-side umieściłem jakiś czas temu na blogu (Patrz sygnaturka)
Go to the top of the page
+Quote Post
Cosi*
post
Post #175





Grupa: Zarejestrowani
Postów: 51
Pomógł: 0
Dołączył: 9.07.2007
Skąd: Dąbrowa Górnicza

Ostrzeżenie: (0%)
-----


Faktycznie, ciekawa rzecz (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Ale raczej się nie skuszę - jakoś mi nie podchodzi sposób osadzania kodu PHP. No a poza tym dużo to wolniejsze niż "czyste" PHP, przynajmniej po stronie serwera.
Ale cieszę się, że takie projekty powstają.
Go to the top of the page
+Quote Post
sztosz
post
Post #176





Grupa: Zarejestrowani
Postów: 866
Pomógł: 32
Dołączył: 2.06.2004
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Jython to implentacja Pythona w Javie, tak samo jak de facto Python który znamy to CPython, czyli implentacja Pythona w C89. Mamy jeszcze IronPython, podobno jedyne różnice to jakieś są w zażądzaniu pamięcą, tak że praktycznie kod jest w 100% przenośny z CPythona do IronPythona. A IronPython to potęga .NET Mamy jeszcze PyPy czyli implentacja Pythona w Pythonie (to jest dopiero jazda (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) ) czy RPython, czyli możliwość kompilowania od razu do ByteCodu. Stackless Python, albo PyS60 na telefony nokii.

Tego jest od groma, piekne jest to że kod jest praktycznie w 100% przenośny, pomijając taką oczywistość jak to że odwołania do API NET nie będą działaćw Jythonie i vice versa. 3rd Parthy modules też nie wszędzie są dostępne.
Go to the top of the page
+Quote Post
Jabol
post
Post #177





Grupa: Przyjaciele php.pl
Postów: 1 467
Pomógł: 13
Dołączył: 22.02.2003

Ostrzeżenie: (0%)
-----


Kod
from math import sin
print ''.join([chr(int(81+7.3*sin(x-5.75))) for x in range(5,0,-1)])
Nom, kto to napisze w dwóch linijkach w PHP? (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) (z pl.comp.lang.python czy jakoś tak).


edit:
Mam małą gre: kto napisze analogiczny program w mniejszej lub równej liczbie linijek ten obroni chwałe PHP (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) . Jeżeli nikt z Was tego nie zrobi, wtedy pokaże Wam sztuczkę która wyjaśni czemu Python jest lepszym językiem (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) .

Pozdrawiam

Ten post edytował Jabol 9.09.2007, 19:23:13
Go to the top of the page
+Quote Post
dr_bonzo
post
Post #178





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

Ostrzeżenie: (0%)
-----


  1. <?php $str = "LINUX";
  2. echo $str; ?>


;P

edit: mialy byc dwie, ale sie w jednej zmiesci (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post
Sokal
post
Post #179





Grupa: Zarejestrowani
Postów: 237
Pomógł: 1
Dołączył: 8.02.2007

Ostrzeżenie: (10%)
X----


Kod
<?php for ($x=5;$x>=1;$x—) echo chr((int)(81+7.3*sin($x-5.75))); ?>

(IMG:http://forum.php.pl/style_emoticons/default/snitch.gif)
Go to the top of the page
+Quote Post
dr_bonzo
post
Post #180





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

Ostrzeżenie: (0%)
-----


ruby:
Kod
puts( ((1..5).to_a.reverse.collect { |x| ( 81 + 7.3 * Math.sin(x - 5.75) ).to_i.chr } ).join )
Go to the top of the page
+Quote Post

11 Stron V  « < 7 8 9 10 11 >
Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 13.06.2026 - 19:24