2006年10月2日月曜日

Python Developers Camp 2006 夏 成果発表

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分!)。テーマはやっつけ!

  増田さんの発表の動画(http://static.everes.net/related/stuff/devcam2006s.divx


Twistedスプリント

 おおたに:席をはずしていたのでメモとれず。
 村岡:Twistedは素人にはお勧めできない。英語力が必要。マニュアルの翻訳がほしい。
  SQLAlchemy、O/Rマッパー、使いやすい。クライアント→Twisted→SQLAlchemy
  Django、TurboGearsでも使うようになるので、勉強しておくとよい。

阿部さん(昨晩行うはずだったライトニングトーク)

 ZopeInterfaceとは、Pythonにインターフェースとアダプタ機能を加える為にZope 3チームが作った
 インターフェースとは定義と実装の分離
 目的は多重継承によるクラスの誤用を防ぐ
 インターフェースはインスタンス
 アダプタとは、あるクラスのインターフェースを異なる他のインターフェースへ変換するAdapterパターン
 インターフェースはアダプタを実現する為の呼び出しが可能
 インターフェースは__adapt__メソッドを実装
 コンポーネント指向の実現を目指している
 静的な型をPythonに導入する事で「実行が遅い」「実行しないとエラーが発見できない」というデメリットの解決をはかろうとしている
 def foo(x: int, y: int) -> int:のように書く
 誰も成功していない動的言語における静的な型の導入




0 件のコメント:

コメントを投稿