Thursday 4:20 p.m.–5:05 p.m.
Room 203 #pyconjp_203型ヒントについて考えよう!
Yusuke Miyazaki
- Audience level:
- Intermediate
- Category:
- Core Python (Language, Stdlib)
- Slide:
- http://www.slideshare.net/yusukemiy/ss-66288339
- Video:
- https://youtu.be/nUUT7y3nLgU?list=PLMkWB0UjwFGlYvIcvKsGhJ7SJIODj_zJZ
Description
Python 3.5 に導入された型ヒント (Type Hints) は、プログラム中に型アノテーションを記述する方法を標準化し、型チェッカーなどのツールで利用できるようになっています。このセッションでは Python の型ヒントについて紹介した後、他の言語での同様の機能について紹介し、Python の型ヒントの優れているところ、劣っているところを明らかにし、今後の型ヒントの活用方法について考えます。
Abstract
[PEP 484][1] で標準化され、Python 3.5 から導入された型ヒント (Type Hints) は、Python プログラムの中に型アノテーションを記述する方法を標準化します。型ヒントは PEP 484 の元になった [mypy][2] などの型チェッカーで利用できますが、2016年現在あまり広く利用されているとは言い難い状況です。
このセッションではまず、 Python の型ヒントが何を標準化していて、何をすることができるのか、型チェッカーの mypy や IDE の [PyCharm][3] などの例を通して紹介し、Python の型ヒントの現状を理解します。
次に、Python の型ヒントの元となった漸進的型付け (Gradual Typing) の考えが導入されている、[TypeScript][4] や [Hack][5] などの他の言語で型アノテーションがどのように利用されているかを紹介し、Python の型ヒントが他の言語に比べて優れている部分や、劣っている部分について明らかにします。
最後に、これまでの議論を踏まえて、Python の型ヒントをどのように利用していくのが良いかを、様々な視点から考えます。
[1]: https://www.python.org/dev/peps/pep-0484/
[2]: http://mypy-lang.org
[3]: https://www.jetbrains.com/pycharm/
[4]: https://www.typescriptlang.org
[5]: http://hacklang.org