Kategorie:
13

Grok wyszedł z jaskini

Po trzech i pół roku ciosania, łupania i gładzenia powstał pierwszy Grok „stable” – ten framework do Zope 3 został ochrzczony mianem 1.0. Początki projektu to niewielki sprint w Niemczech. Dzisiaj Grok jest najważniejszym przedsięwzięciem związanym z Zope 3, który może przyczynić się do popularyzacji, niszowego jak  na razie, Zope.

Zope 3 jest bardzo zaawansowaną platformą do pisania aplikacji sieciowych,  ale dość trudną do opanowania z powodu konieczności pisania XML-a, równocześnie z kodem Pythona. Grok usuwa tę niedogodność dzięki konwencjom, do których programiści muszą się stosować. Chodzi zwłaszcza o nazewnictwo podstawowych plików i klas w kodzie projektów. Pozwala to skupić się na tym, co w Zope najlepsze: szablonach stron, wbudowanej, obiektowej bazie danych oraz samym Pythonie.

Twórcy Zope są przekonani, że nie będą już wprowadzać dużych zmian do swojego produktu. Argumentują to jego dojrzałością i stabilnością, przywiązują również dużą (niektórzy twierdzą, że zbyt dużą) wagę do wstecznej kompatybilności. Siłą rzeczy rozwój Zope skupił się bardziej na zewnątrz, czyli w Plone oraz Grok.

Wersja 1.0 nie jest w tym przypadku wynikiem osiągnięcia założonych celów, przynajmniej celów większych niż dla kolejnej wersji beta. Bardziej jest to zabieg marketingowy – gdy jeden z programistów rzucił pomysł wypuszczenia wersji 1.0 na liście mailowej, reszta przyznała mu rację. W każdym razie Grok może się ostatnio pochwalić wsparciem dla Pythona 2.5, pełną integracją z pasterem podczas instalacji i aktualizacji oraz znaczącą poprawą dokumentacji w postaci „dictringów” wewnątrz kodu. Skrócona lista zmian znajduje się na stronie PyPi.

Inaczej niż w przypadku Zope 3, nie znajdziemy najnowszych źródeł na stronie projektu, gdyż Grok jest udostępniony wyłącznie poprzez PyPi i mechanizm easy_install. Proces instalacji jest opisany na stronie projektu.

Warto też dodać, że Grokowi wreszcie udało się zdetronizować w Google przepisy kulinarne i zajmuje obecnie zasłużone, pierwsze miejsce.

Więcej informacji: http://grok.zope.org/project/releases/1.0

«
»

Znalazłeś literówkę? Zgłoś ją używając formularza!


Jeśli uważasz, że ten nius jest nieobiektywny, przedstawia nieprawdziwe wydarzenie, jest spamem lub nie spełnia standardów serwisu, napisz raport.

Niusy na podobny temat:

Komentarze (RSS)

Komentarze są prywatnymi opiniami dodających je osób. Prosimy o zachowanie kultury wypowiedzi. Komentarze obraźliwe oraz obniżające poziom serwisu będą usuwane. Więcej w regulaminie komentowania.

13 komentarzy

zwiń wątek WoW  23 października 2009 o godz. 14:12 #
Gravatar

"wbudowanej, obiektowej bazie danych"

Chodzi o ORM (+DBAL?) tak jak w Propelu czy Doctrine?

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
zwiń wątek ivan  23 października 2009 o godz. 14:47 #
Gravatar

Nie, jasno jest napisane że *obiektowej*, a nie "relacyjnej + klasy owijające", chodzi o ZODB.

 
 
zwiń wątek riklaunim  23 października 2009 o godz. 23:04 #
Gravatar

Konkurować z Django raczej mu będzie ciężko jak i całemu światkowi Zope – nie jest to programowanie "szybkie i przyjemne" – wybierane wyłącznie gdy takie a nie inne rozwiązanie jest potrzebne. Do tego geeki mają Pylonsa i inne jeszcze bardziej niszowe :)

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
zwiń wątek Low Year  24 października 2009 o godz. 19:18 #
Gravatar

Olaboga. Tak się składa, że jestem zupełnie początkujący jeśli chodzi zarówno o Pythona jak i programowanie w ogóle, a jednak Pylons wydało mi się bardzo proste, łatwe i logiczne. Skoro to jest geekowskie, to pisanie w czystym WSGI zakrawa chyba na hackerskość – o niższych poziomach abstrakcji nie wspominając ;)

zwiń wątek jellonek  25 października 2009 o godz. 21:46 #
Gravatar

chcesz byc bardziej geekowski to mozesz jeszcze pisac bezposrednio na twisted :P

 
 
 
zwiń wątek SeeM  24 października 2009 o godz. 20:58 #
Gravatar

Mam przy okazji takie małe pytanie – czy istnieje inny pythonowy framework (nie-Zope i pochodny), który ma szablony stron zgodne z (X)HTML? Czyli robię szablon stron, który można otworzyć w przeglądarce bez posiadania zainstalowanego Zope?

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
zwiń wątek Low Year  24 października 2009 o godz. 21:20 #
Gravatar

TurboGears i każdy inny w którym użyjesz Genshi.

zwiń wątek SeeM  25 października 2009 o godz. 18:29 #
Gravatar

Słyszałem właśnie, że Genshi można zastosować w Zope, ale nie wiedziałem, że to jest z Gears-ów. Dzięki.

zwiń wątek Low Year  25 października 2009 o godz. 18:45 #
Gravatar

Gwoli ścisłości, samo Genshi nie ma chyba nic wspólnego z TG per se – po prostu jest tam domyślnym silnikiem szablonów. W Pylons można nim zastąpić Mako (automagiczna konfiguracja jeśli wybierzemy ten silnik przy tworzeniu aplikacji) zaś tutorial na stronie Genshi bierze na warsztat "surowe" CherryPy. Nie wiem tylko jak ma się sprawa w Django ;)

 
 
 
 
zwiń wątek okidoki  25 października 2009 o godz. 12:53 #
Gravatar

Jest taki śmieszny framework w perlu: Jifty. Jego twórcy wszędzie starają się wprowadzić uniwersalny zapis. To znaczy, od konfiguracji, bazy danych, aż do szablonów(zupełnie niezgodne z xhtml) wszystko piszemy w taki sam sposób. Ciekawe podejście, z tym, że jeśli chodzi o szablony to implementacja pozostawia wiele do życzenia.

Ale to chyba dobre podejście. Jestem skrzywiony perlem, bo nie ma czegoś takiego jak 'konwencja', ale jeśli zerkniemy na Catalyst, to odkryjemy, że:

-pliki konfiguracyjne piszemy w yaml'u albo apachelike generalconfig,

-sql piszemy w sql:P,

-orm z DBIx::Class,

-szablony w Template Toolkit 2,

-Kontrolery z Moose…

… a i to nie koniecznie. Możemy użyć właściwie czegokolwiek. Z jednej strony: potęga i wolność. Z drugiej: chaos.

Kiedy już wybierze się i opanuje moduły które nam najbardziej odpowiadają możemy zdziałać cuda. Ale wybór wcale nie jest prosty, a poznanie 3-4+, modułów zabiera kilka dni, o perfekcyjnym ich opanowaniu nie wspominając.

Istnieje oczywiście jifty i mojo, które są zdecydowanie bardziej uporządkowane. Ale jifty stanowi właściwie dodatkową warstwę pomiędzy programistą, a kodem modułów, których używa ogromne ilości i wchodzi w drogę, kiedy chcemy zrobić coś inaczej niż powinniśmy chcieć;) Mojo nie używa żadnego niestandardowego modułu i proponuje w miarę jednolity zapis, ale brakuje mu możliwości i znów okazuje się, że kodujemy w DBIx::Class. No i wracamy do Catalysta. Cholerny perl. Dobry dla anarcho-indywidualistów z ADHD. Nie dziwię się, że ror zdobywa popularność: konwencja. Krótki czas nauki i mała ilość dylematów.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
zwiń wątek Low Year  25 października 2009 o godz. 18:42 #
Gravatar

Perla nigdy nie dotknąłem, Ruby mnie odrzuca, ale jeśli chodzi o pythonowy framework Pylons to tam "konwencja" jest imo rozsądna. Szablony piszemy w wybranym silniku, natomiast reszta może być albo całkiem w Pythonie, albo niektóre elementy skonfigurowane w plikach ini. Nie ma to jak wybór ;)

zwiń wątek okidoki  25 października 2009 o godz. 22:42 #
Gravatar

tmtowtdi ;)

 
 
 
zwiń wątek lucid  14 listopada 2009 o godz. 19:13 #
Gravatar

W tekście jest błąd – nie 'dictstring', tylko docstringi.

(Poniżej tego poziomu komentarze nie będą zagnieżdżane)
 

Uwaga! Niektóre komentarze, m.in. te dodane przez niezalogowanych i nowych użytkowników, są ręcznie moderowane. Jeśli Twój komentarz nie ukaże się od razu, nie dodawaj go ponownie, tylko cierpliwie poczekaj na akceptację.

W komentarzach możesz używać prostych znaczników HTML. Przykłady:
  • Link: <a href="http://osnews.pl">OSnews: niusy IT</a>,
  • Wytłuszczenie: <strong>tekst pogrubiony</strong>,
  • Kursywa: <em>tekst pochylony</em>,
  • Przekreślenie: <strike>tekst przekreślony</strike>,
  • Kod: <code>printf("blok kodu");</code>,
  • Cytat: <blockquote>cytat</blockquote>
Uwaga: jeśli dodasz nieznany znacznik, będzie on niewidoczny, gdyż system filtruje takie znaczniki.

Wszystkie autorskie niusy w serwisie publikowane są na licencji Creative Commons Uznanie autorstwa 2.5 Polska.

Twoja sugestia