IronPython と Firebird .NET Data Provider 雑感 [DotNET]
ここしばらく IronPython で Firebird .NET Data Provider を使った感想を少し。
まず、Firebird .NET Data Provider はよくできてる。
システムを .NET Framework + OSS な RDBMS(もしくは、クロスプラットフォームな RDBMS) で作りたいという強い要求があれば、 Firebird が候補になるのでは。
#そういう決め方をすることがあるのかどうかわからんが。
IronPython について言うと、python のシンタックスと CLR の型システムがうまいこと融合してる。Windows.Forms 等のクラスが、Python のクラスとしてきれいに扱える。非常に感心した。IronPython から使った場合に、もっと制約があるかと思ったが、.NET Framework 由来のクラスを使う場合にも、やりたいことは一通りできた。すばらしい。
言語のシンタックスの部分で CPython と IronPython での違いが少ないのにも驚いた。
CPython で実装されている多くのモジュールが存在しないことを除くと、 clr モジュールが追加されたことと、イベントハンドラの扱い(+= 演算子で追加)の点が CPython と違ってるくらい。
プログラミング言語の挙動で、両者が異なるなぁ、と気付いたのは IronPython では、辞書のキーは追加した順に取得されるけど、CPython ではハッシュされた値の順番、ってことくらい。
(下記ソース参照)
IronPython 1.0 (1.0.61005.1977) on .NET 2.0.50727.42 Copyright (c) Microsoft Corporation. All rights reserved. >>> d = {'Z':'z', 'X':'x', 'Y':'y'} >>> print d {'Z': 'z', 'X': 'x', 'Y': 'y'} >>>
Python 2.3.4 (#53, May 25 2004, 21:17:02) [MSC v.1200 32 bit (Intel)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> d = {'Z':'z', 'X':'x', 'Y':'y'} >>> print d {'Y': 'y', 'X': 'x', 'Z': 'z'} >>>
IronPython のこの挙動は結構便利なんだけど、この仕様に依存したコーディングだと後々困るかなぁ?と思ってたりする。
IronPython を実際に使いこなそうとすると、(言語シンタックス上の)Pythonic な文化と、(ライブラリの).NET な文化の両方を理解し混ぜ合わせないといけないので、その点が一番の難関かなと思う。
僕の場合は主に、「XXXコントロールの使い方がわからないー」とかでの悩みが多かった。
ただ、慣れてしまうと、IronPython でコーディングって C# や VB より直感的に書ける。
みんな、もっと使えばいいのに。
Propecia Scalp Bumps Buy Orlistat Nyc <a href=http://tadalaffbuy.com>generic cialis overnight delivery</a> Cialis No Me Hace Nada Viagra Hombre
by Auststeend (2019-04-21 14:15)
Which Erectile Drug Is The Cheapest Canadian Cialas Without <a href=http://antabusefast.com>antabuse greece</a> Bactrim No Prescription
by LesOwnems (2019-06-02 13:25)
Photo Levitra <a href=http://leviinusa.com>order levitra without a prescription</a> Macrobid 100mg On Sale
by LesOwnems (2019-06-16 14:28)
Acheter Viagra Belgique Sans Ordonnance Side Affects Of Cephalexin <a href=http://brandcial.com>cialis without a doctor's prescription</a> Viagra Ohne Rezept Stuttgart
by LesOwnems (2019-06-30 08:20)
Levitra Caratteristiche In Farmacia Viagra 25 Mg <a href=http://orderciali.com>buy cialis</a> Amoxicillin Overdose Cats Can I Crush Amoxicillin
by Auststeend (2019-07-13 13:27)
Online German Pharmacies <a href=http://cthosts.net>buy cialis</a> Buy Periactin 4mg Acheter Baclofene Sur Internet Drug Interaction Between Keflex And Miralax
by LesOwnems (2019-07-14 03:06)