Python Developers Camp 夏、最終日朝の成果発表のメモ。
オブジェクト指向入門(森)
各自手を動かしながら自主トレに励んだ
初心者の質問をもとにドキュメントをまとめた
翻訳スプリント(増田)
翻訳スプリントでは各自が選んだPEPの翻訳を行った。発表者には先着順でSpamをプレゼント!
(以下出てくる番号はPEPの番号)
阿部:遅刻しました。すみません。245と246をやろうとした
245は言語拡張の話、246はアダプテーションの話
内容が難しく、難航しそう。
ただ、ZopeやTwistedでもアダプテーションは利用されている。
また、GuidのPythonに静的な型を入れようとする提案にも関係するので、なんとかしたい。
Jack:うう、早すぎてメモとれず。
Jackさんのやった翻訳が公開された(http://ns.jk.to/zwiki/Nikki/PEP0263)
浦郷:357をやった。どのオブジェクトでもスライスに利用できるという話。
小倉:関数デコレータをやろうと思ったが、英語が難しすぎたので、try exceptのPEP 341?をやった。
小田切:333 WSGI? をやろうとしたが、量が多かったので、現状1割もいっていない。Webサーバとアプリケーションを結ぶ話。
一人でやるのはつらいので、皆さんの力を貸してほしい。
竹内:339をやった。CPythonのコンパイラの情報。英語の意味はわかるけど、日本語の適当な訳語を思いつかないものがあった。
ドラゴンブックの日本語版を読んで訳語を見直したい。
柴田:PEP3000シリーズ、Python 3.0で言語の中身を変更する予定なので、具体的にどこが変わるのかを書いてある。4つある。
3つ目までは訳してある。4つ目をやろうとしたが酔って眠ってしまったので、これからやる予定。
増田:354、列挙データの話。200行くらい。2日でやるにはいいサイズ。
Webチャットスプリント
石田:TurboGearsでシンプルなチャットシステムを作った。ブラウザから2秒おきにリクエストを投げている。
安井:TurboGears、CherryPyを使った。裏でsocketを張りっぱなしにしている。
課題はいろいろあるが、TurboGearsである必要がないのが一番問題。
でも、CherryPyやMochiKitをうまく利用できるのがTurboGearsのいいところだと思う。
田原:zope3を使った。zope3はテストドリブンなフレームワーク。朝いじったらテストが通らなくなった、でもプログラムは動いている。
露木:DjangoとTwistedを使おうと思ったが、今回はDjangoのみで作った。AJAXでポーリングをしている。
Djangoのテンプレートはすごい。継承が使いやすい。管理画面がすごい。Django勉強会開催中。
山下:Djangoを使った。昨晩Twistedをはじめてさわって、ぜひ使いたいと思った。
今回はまにあわなかったが、Djangoからキックして、Twistedからブラウザにデータを送るようにしたい。
柴田:Pythonic Chatを作った。TurboGears 1.0ベータを使った。TurboGearsの管理画面もDjangoにまけていない。
Djangoはエンドユーザに近い人が使うフォームまで自動生成しているが、TurboGearsではwidgetを使ってごりごり作るようになっている。
Pythonic Cahtは関数型チャットシステム。チャット中に関数を定義できる。チャットで関数を定義し、これを実行できる。
定義した関数はデータベースに保存される。ただし、インターフェースの制限から関数は1行で書かないといけない。
増田:Mimimal Django Chat、DateBased Generic Viewを使った。モデルとテンプレートを書くだけでOK。
さっき9時ごろから作り始めた(メモを取っている時間は11時26分!)。テーマはやっつけ!
Twistedスプリント
おおたに:席をはずしていたのでメモとれず。
村岡:Twistedは素人にはお勧めできない。英語力が必要。マニュアルの翻訳がほしい。
SQLAlchemy、O/Rマッパー、使いやすい。クライアント→Twisted→SQLAlchemy
Django、TurboGearsでも使うようになるので、勉強しておくとよい。
阿部さん(昨晩行うはずだったライトニングトーク)
ZopeInterfaceとは、Pythonにインターフェースとアダプタ機能を加える為にZope 3チームが作った
インターフェースとは定義と実装の分離
目的は多重継承によるクラスの誤用を防ぐ
インターフェースはインスタンス
アダプタとは、あるクラスのインターフェースを異なる他のインターフェースへ変換するAdapterパターン
インターフェースはアダプタを実現する為の呼び出しが可能
インターフェースは__adapt__メソッドを実装
コンポーネント指向の実現を目指している
静的な型をPythonに導入する事で「実行が遅い」「実行しないとエラーが発見できない」というデメリットの解決をはかろうとしている
def foo(x: int, y: int) -> int:のように書く
誰も成功していない動的言語における静的な型の導入
0 件のコメント:
コメントを投稿