並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 8 件 / 8件

新着順 人気順

デコレータの検索結果1 - 8 件 / 8件

  • Python: デコレータについて - CUBE SUGAR CONTAINER

    Python の特徴的な構文の一つにデコレータがある。 便利な機能なんだけど、最初はとっつきにくいかもしれない。 そこで、今回はデコレータについて一通り色々と書いてみる。 先に断っておくと、とても長い。 これを読むと、以下が分かる。 デコレータの本質 デコレータはシンタックスシュガー (糖衣構文) に過ぎない デコレータの作り方 引数を取るデコレータと取らないデコレータ デコレータの用途 用途はラッピングとマーキングの二つに大別できる デコレータの種類 デコレータは関数、メソッド、インスタンスで作れる デコレータの対象 デコレートできるのは関数、メソッド以外にクラスもある 今回使った環境は次の通り。 尚、紹介するコードの中には、一部に Python 3 以降でないと動作しないものが含まれている。 $ python -V Python 3.6.6 デコレータについて まずはデコレータのおさら

      Python: デコレータについて - CUBE SUGAR CONTAINER
    • Pythonのデコレータを理解するための12Step - Qiita

      古い記事なんですが, Pythonのデコレータの概念をつかむには良記事だったので和訳意訳してみました. http://simeonfranklin.com/blog/2012/jul/1/python-decorators-in-12-steps/ Step1. 関数 これは基本ですね. Pythonにおいて関数はdefキーワードにより関数名とパラメータのリスト(任意)とともに定義できます.また括弧付きで名前を指定することで実行できます. Step2. スコープ Pythonでは関数を作ると新しいスコープが作られます.言い方を変えるとそれぞれの関数がそれぞれに名前空間を持つということです. Pythonではこれらを確認することのできる組み込み関数も用意されていて, locals()で自身の持つローカルな名前空間の値を辞書形式で返却します.

        Pythonのデコレータを理解するための12Step - Qiita
      • デコレータ使わない Vue.js + TypeScript で進んだ「LINEのお年玉」キャンペーン

        皆さん、こんにちは。LINEでフロントエンド開発を担当しているUIT1室のシュウと申します。 今回、年に一度の企画「LINEのお年玉」キャンペーンにて JavaScript の部分を担当させていただきました。LINEのお年玉は多くのトラフィックが流れる大規模かつ短期間の企画となります。 技術的な挑戦をするためのプロジェクトとしてもちょうど良いサイズ感であったため、今回多くの挑戦を行いましたので、連載形式で紹介していければと思います。 初回である今回は、Vue.js と TypeScript を併用した開発についてです。 なぜ TypeScript を使うのか? これまで LINE のプロジェクトでは、JavaScript をメインの言語としてフロントエンド開発を行ってきました。ですが、時代の流れもあり、現在では新規プロジェクトの多くが TypeScript を採用しています。 月並みですが

          デコレータ使わない Vue.js + TypeScript で進んだ「LINEのお年玉」キャンペーン
        • Python入門:デコレータとは

          前から常々思っていることだが、何かについて勉強する一番効率的な方法はそれを誰かに教えること。人に教えようとすると、それなりに準備をしなければならないし、自分の頭の中を整理しなければならない。また教える過程でするどい質問をされたり間違いを指摘されて、さらに勉強を強いられることもある。 私がこの手の「入門編エントリー」を書くのは、ほとんどの場合「自分自身の理解をより深めたい」ことが一番の目的であるが、ブログの場合、教室などと違って「その道の達人」みたいな人たちがツッコミを入れてくれるケースもしばしばあるので、そのメリットは何倍にもなる。 先日のクロージャに関するエントリーなどは良い例で、「そんな用途にはmemoizeというデコレータが便利」などの指摘がいただけだけであれを書いた価値があるというもの。 そこで、今日はPythonのデコレータに関して。デコレータがPythonという言語に導入された

          • Python のクラスメソッド – デコレータ @classmethod, @staticmethod を使って

            1. メソッドをクラスメソッドにするときは、デコレータを使う あるメソッドをクラスメソッドにするとき、 Python ではデコレータを使うことができる。 2.1 組み込み関数 によると、(太字は引用者による) classmethod( function) function のクラスメソッドを返します。 クラスメソッドは、インスタンスメソッドが暗黙の第一引数としてインスタンスをとるように、第一引数としてクラスをとります。クラスメソッドを宣言するには、以下の書きならわしを使います: class C: @classmethod def f(cls, arg1, arg2, ...): ... ふーむ、ここでも第一引数が必須で、それがクラスを参照するということか。Python のこういう書き方は、最初とっつきにくいと感じた。 (+_+) デコレータの書き方としては、関数の前に @classmeth

              Python のクラスメソッド – デコレータ @classmethod, @staticmethod を使って
            • Pythonのデコレータについて - Qiita

              今回は、Pythonデコレータについて話そうと思います。 はじめに。 エキスパートPythonプログラミング1に沿って勉強していた際に、Pythonのデコレーターという概念が出てきました。ちょっと本に書いてある内容では何を言っているかわからなかったので、いろいろ調べてみました。 デコレーターとは デコレートとは修飾する。って意味になりますが、デコレータとは、簡単に言うと、ある関数を修飾するための関数とその仕組みです。例えば、ある関数があったとします。ここでは次のようなtest()関数とその実行スクリプトを見てみましょう。 サンプルスクリプト1

                Pythonのデコレータについて - Qiita
              • PythonのWebフレームワーク使うなら知っておきたいデコレータ - 神様なんて信じない僕らのために

                最近「オワタ\(^o^)/」で有名なDjangoしか触ってないダメ人間です。 こんにちは。 Djangoとかどうでもいいがな、 Webフレームワークとかめんどくさいがな、 という最近なのでDつながりでDecoratorの話をします。 ナウでヤングなPythonistaのホットな話題はGCの参照カウンタ、 ではなくてFlaskとかかもしれないですが、 @app.route("/") def hello(): return "Hello World!" こいつも多分に漏れずDecoratorを使います。 Djangoでも、 @require_GET とか @require_POST とか使ったり見たことがあるんじゃないかと思います。 で、意外と魔法っぽいデコレータですが、 これっていったいどうなってんの? って事を知らない人が割といたりします。 「とりあえず指定しろって言われたから指定してます

                  PythonのWebフレームワーク使うなら知っておきたいデコレータ - 神様なんて信じない僕らのために
                • Pythonのデコレータを使ってAWS Lambdaを圧倒的に読みやすくする - BIGLOBE Style | BIGLOBEの「はたらく人」と「トガッた技術」

                  基盤系システム部の梶田です。 BIGLOBEではAmazon Web Services(AWS)の活用を推進しています。AWSマネージドサービスの活用機会が増えると、イベントハンドラやフィルターとしてLambda Functionを書く機会も増えてきます。 数をこなしているうちに、Lambda Functionのイベントハンドラにはマネージドサービス毎におきまりのパターン化(お作法)があることに気づきました。 何度も現れるパターンを再利用するには、Pythonのデコレータ機能がうってつけです。このBlogではAWS CodeDeployを題材にして、Lambda Functionを簡素化していった過程をご紹介します。 最後のコードは驚くほど読みやすくなりますので、少々お付き合いください。 CodeDeployのイベントハンドラ デコレータを使ってお作法を隠蔽する おわりに CodeDepl

                    Pythonのデコレータを使ってAWS Lambdaを圧倒的に読みやすくする - BIGLOBE Style | BIGLOBEの「はたらく人」と「トガッた技術」
                  1