並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 23 件 / 23件

新着順 人気順

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

タグ検索の該当結果が少ないため、タイトル検索結果を表示しています。

デコレータに関するエントリは23件あります。 programmingプログラミングweb などが関連タグです。 人気エントリには 『デコレータ使わない Vue.js + TypeScript で進んだ「LINEのお年玉」キャンペーン - LINE ENGINEERING』などがあります。
  • デコレータ使わない Vue.js + TypeScript で進んだ「LINEのお年玉」キャンペーン - LINE ENGINEERING

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

      デコレータ使わない Vue.js + TypeScript で進んだ「LINEのお年玉」キャンペーン - LINE ENGINEERING
    • 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の「はたらく人」と「トガッた技術」
      • あらためてデコレーターを学ぶぞ

        はじめに NestJS入門してみようとしたら、アットマークから始まる記述を知らなかったので調べたことを簡単にまとめた記事です(デコレーターのことよくわかってなかった) デコレーターの仕様は、過去にいろいろと変わって現在に至っているようでしたが、ようやく最近 ECMAScript では Stage 3 になり、TypeScript では今も実験的なサポート experimentalDecorators を使えますが、バージョン 4.8 で TC39 の Decorators を実装することが検討されているようです! この記事は、TypeScriptのドキュメントのサンプルコードを動かしてみたり、あらためてNestJSのコード読んだりしてみた感想を書いてみました。 最近のデコレーターを追えてない、NestJSを動かしてみようとしたらデコレーターってなんぞや、となったかたの参考になれば幸いです。

          あらためてデコレーターを学ぶぞ
        • 【PHP8.0】PHPでアトリビュート/アノテーション/デコレータが書けるようになる - Qiita

          Attributes v2というRFCが投票中です。 投票期間は2020/05/04まで、投票者の2/3の賛成で受理されます。 2020/04/27時点では賛成48反対1で、ほぼ間違いなく可決されます。 Attributes v2 Introduction このRFCは、クラス/プロパティ/関数/メソッド/引数/定数の宣言に、構造化されたアトリビュートをメタデータとして記述できるようにする提案です。 アトリビュートは、コードの宣言に直接設定ディレクティブを埋め込むことで定義されます。 同じような概念としてJavaのAnnotation、C#/C++/Rust/HackにおけるAttribute、Python/JavascriptにおけるDecoratorが存在します。 これまで、PHPではこのようなメタデータとしては非構造的であるdoc-commentsしか存在しませんでした。 しかしdo

            【PHP8.0】PHPでアトリビュート/アノテーション/デコレータが書けるようになる - Qiita
          • [Python入門]デコレーターの基礎

            デコレーターとは 本連載の第15回「ローカル関数とラムダ式」では関数を受け取る関数や、関数を戻り値とする関数を取り上げた。今回紹介するデコレーターとは、基本的には関数を受け取り、関数を戻り値とする関数のことだ(そうではない場合もある。後述)。クラスを受け取り、クラスを戻り値とする関数やクラスも書けるが、本稿では関数を受け取り、関数を戻り値とする基本的なデコレーターだけを紹介する。 「関数を受け取り、関数を戻り値とする関数」というと難しく感じるかもしれないが、デコレーターの使用例は第29回「クラス変数/クラスメソッド/スタティックメソッド」の「クラスメソッド」で既に紹介している。デコレーターを使うだけなら、以下のように「@デコレーター」(デコレーター式)を使って関数を修飾(デコレート)するだけでよい(以下の例はメソッドだが、使い方は同じ)。

              [Python入門]デコレーターの基礎
            • Microsoft、プログラミング言語「TypeScript 5.0」を正式に公開、デコレーターが標準機能に

              「TypeScript 5.0」では、「デコレーター(Decorators)」の機能に正式に対応するようになった。デコレーターは、クラスの実装をほとんど変更することなく、クラスやフィールド、メソッドなどを拡張、上書きする外部関数を利用可能にする機能。一般に言うDI(Dependency Injection:依存性の注入)を実現する機能だ。 デコレーター関数を利用するには、デコレーター関数を実装してから、クラスを実装したコード内のフィールドやメソッドを記述した部分の直前で「@関数名」と記述すれば良い。デコレーターの機能を利用して、クラスやフィールド、メソッドの機能を拡張、上書きするコードを外部関数として分離することで、再利用しやすくなる。 以前のバージョンでもデコレーターは使用可能だったが、「実験的」な位置付けにとどまっており、使用するにはコンパイラ実行時に「--experimentalDe

                Microsoft、プログラミング言語「TypeScript 5.0」を正式に公開、デコレーターが標準機能に
              • Microsoft、「TypeScript 5.0」を正式公開 ~よりコンパクト、シンプル、高速に/ECMAScriptで採用が予定されている「デコレーター」に対応するなどの新機能も

                  Microsoft、「TypeScript 5.0」を正式公開 ~よりコンパクト、シンプル、高速に/ECMAScriptで採用が予定されている「デコレーター」に対応するなどの新機能も
                • NestJS の DTO と Validation の基本 - 型定義とデコレータで安全にデータを受け付ける - Qiita

                  この記事は NestJS Advent Calendar 2019 3 日目の記事です。前日は @euxn23 による Module と DI の話でした。 これまで NestJS のはじめかたと Module と DI の話をしていきました。3 日目となる本日は、もう少し実際の開発に身近な機能である、DTO と Validation について紹介いたします。 tl;dr NestJS にはコアに Request Payload の型定義とバリデーションの機能が備わっている クラスベースの型オブジェクト DTO の定義によって、 Request オブジェクトに触らずに受け付ける型定義ができる DTO にバリデーションを敷くことによって、 Controller のメインロジックより前の段階で不正なアクセスを弾ける リクエストデータの検証について Web API を構築する場合、リクエストのデ

                    NestJS の DTO と Validation の基本 - 型定義とデコレータで安全にデータを受け付ける - Qiita
                  • 「Python 3.9」登場、デコレーターに関する制約の緩和、新しいパーサーの採用とは

                    連載目次 前回は、Python 3.9で辞書に追加された和集合演算子、文字列に追加されたremoveprefix/removesuffixメソッドなどを取り上げた。今回は、デコレーターに関する制約が緩くなったことや、新しいパーサーについて簡単に見ていこう。 デコレーターに関する制約の緩和 ここでPython 3.8とPython 3.9におけるデコレーターの違いをPythonのドキュメントで比べてみよう。以下はPython 3.8のドキュメント「関数定義」の画面キャプチャーだ。ここにはデコレーターがどんなものかも定義されている(「decorator」という部分)。

                      「Python 3.9」登場、デコレーターに関する制約の緩和、新しいパーサーの採用とは
                    • デコレータを使わずコールバック関数に依存性を注入できるDIヘルパーをたった15行のTypeScriptで作った話 - Qiita

                      一般的にTypeScriptでDIをしようとするとクラス+デコレータを避けて通れません しかし個人的には関数型っぽくコーディングするのが好きなのでクラスもデコレータも使わず関数だけでDIする方法を考えました たった15行なので解説の前にコードを紹介します type Deps<T extends Record<string, any>> = { [P in keyof T]: T[P] extends { _velona: boolean } ? (...args: Parameters<T[P]>) => ReturnType<T[P]> : T[P] } export const depend = <T extends Record<string, any>, U extends any[], V>( dependencies: T, cb: (deps: Deps<T>, ...arg

                        デコレータを使わずコールバック関数に依存性を注入できるDIヘルパーをたった15行のTypeScriptで作った話 - Qiita
                      • Pythonのデコレータを理解するまで

                        @xxxという書き方をみると何か変わった機能なのかと思うかもしれませんが、ただの関数を受け取り関数を返す関数というのを頭に入れておくと、デコレータの理解が進むと思います。 関数デコレータの作成 関数の開始時間・終了時間・処理結果をプリントするmy_loggerデコレータを作ってみます。 import datetime def my_logger(f): def _wrapper(*args, **keywords): # 前処理 print(f'{f.__name__}の実行') print(f'開始: {datetime.datetime.now()}') # デコレート対象の関数の実行 v = f(*args, **keywords) # 後処理 print(f'終了: {datetime.datetime.now()}') print(f'実行結果: {v}') return v r

                          Pythonのデコレータを理解するまで
                        • 『巷で話題の『ちくわデコレーター』を使って【男の料理】「ちくわ唐揚げ」作ってみたら…“高評価”⁉️』

                          Welcome to kiyo1115's 食彩王国 ジャンルを問わず、美味しさを求め東奔西走。選りすぐりのお店や逸品…特に「身の丈」すなわち、お小遣いで行ける(特徴的な)お店の食べ歩き、ペット同伴可能のお店などを中心にご報告。 日本ブログ村・人気ブログランキング『グルメ』部門全体ランキングTOP10ランクイン

                            『巷で話題の『ちくわデコレーター』を使って【男の料理】「ちくわ唐揚げ」作ってみたら…“高評価”⁉️』
                          • デコレータ | TypeScript 日本語ハンドブック | js STUDIO

                            はじめに デコレータ はじめに TypeScriptとES6のクラスの導入により、クラスやクラスメンバの注釈付けや修正をサポートするための追加機能が必要なシナリオとして存在するようになりました。 デコレータは、クラス宣言とメンバの注釈(アノテーション)とメタプログラミング構文の両方を追加する方法を提供します。 デコレータはJavaScriptのステージ1の提案であり、TypeScriptの実験的な機能として利用できます。 注意: デコレータは実験的な機能であり、将来のリリースで変更される可能性があります。 デコレータの実験的なサポートを有効にするには、 experimentalDecoratorsのコンパイルオプションをコマンドライン、またはtsconfig.jsonのいずれかで有効にする必要があります。 { "compilerOptions": { "target": "ES5", "e

                            • 『<セリア>バズってる!広がるミストスプレーボトルと便利!ちくわデコレーター・雲型ボトルオープナー』

                              <セリア>バズってる!広がるミストスプレーボトルと便利!ちくわデコレーター・雲型ボトルオープナー | 100均主婦miyuremamaは今日も元気です

                                『<セリア>バズってる!広がるミストスプレーボトルと便利!ちくわデコレーター・雲型ボトルオープナー』
                              • 【TypeScript】デコレータを深く学んでみる - Qiita

                                はじめに 今回はデコレータについて深く学んでみます。 @(アットマーク)から始まるあれです。 Angularなどを使用されたことがあれば、見慣れていらっしゃるかもしれません。 @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls: ['./app.component.css'] }) 現在は非推奨ですが、Nuxtの nuxt-property-decorator などでも使われていたりします。 デコレータとは? まず公式のリンクです。 デコレータとはメタプログラミングに役に立つ機能です。 メタプログラミングとは ユーザが直接触ったり見たりする機能には使われませんが、 開発者が使いやすい道具を提供することに向いています。 例えば、クラスやクラスのメソッドが正しく使われることを保証した

                                  【TypeScript】デコレータを深く学んでみる - Qiita
                                • Pythonのデコレータの基本:使い方から functools.wrapsの利用まで - Qiita

                                  前回の記事 の冒頭で、LINE Bot作成中、そしてその中で分からなかった概念を勉強中である、と書きました。 前回でクロージャについては勉強できたので、次は デコレータ についてまとめます。 LINE Botの公式サンプルは Flaskを利用しているので、コード中に @、すなわち デコレータ が多く出てきます。 やはり少し調べた程度ではピンとこない機能だったので、まとめてみました。 なお、本来の目的に照らし、ここではデコレータの機能の一部に焦点化して解説しています1。 「Flaskで LINE Bot作ろう」 ->「デコレータでルーティングしてる、デコレータ理解してないから勉強しよう」 <- 今ここ ->「デコレータはクロージャを使った仕組みらしいけどクロージャ分からないから勉強しよう」 1. デコレータの理解に必要な知識・仕組み 本記事で紹介する範囲のデコレータの理解に必要な知識・仕組み

                                    Pythonのデコレータの基本:使い方から functools.wrapsの利用まで - Qiita
                                  • 【Python】「デコレータ」「ジェネレータ」「イテレータ」まぎわらしい用語を見比べてみた - Qiita

                                    それぞれの意味を整理してみる デコレータ すでに存在する関数に対して、処理の追加や変更を行うための機能 Python には以下のデコレータが標準で用意されている @classmethod ・・・ クラスメソッド(インスタンス化しなくても直接呼び出せるメソッド)を定義 @staticmethod ・・・ 静的メソッド(クラスメソッドと同じくインスタンス化せずに呼び出し可能)を定義 @property ・・・ 変更できないプロパティを定義 ジェネレータ リストやタプルと同じ機能を持つオブジェクトを生成することができる機能 リストやタプルと同じように for で取り出すことが可能 イテレータ 要素を1つずつ取り出せるオブジェクト リストにできなくて、イテレータオブジェクトにできる機能は、次の要素を尋ねること それぞれの基本形を見比べる デコレータ 'Before the...' と 'After

                                      【Python】「デコレータ」「ジェネレータ」「イテレータ」まぎわらしい用語を見比べてみた - Qiita
                                    • トライアンドエラーで学ぶPythonのデコレータ【その1】 - Qiita

                                      本記事について Pythonのデコレータの理解に滅茶苦茶苦しんだので、備忘録的にメモを残します。 もし誰かの役に立てば幸いです。 全2話予定で、本記事は1話目です。 想定する読者 本記事は「デコレータを学んだけど理解できず折れた人」向けの内容となっています というのも、デコレータの理解の前提になるクロージャ、関数内関数、高階関数などの説明は省略しているためです。 注意事項 ・デコレータの理解を優先していること及び筆者の力量不足から一連のサンプルコードは全く実践的なものではありません。申し訳ございません。 ・タイトルに「トライアンドエラー」とある通り、 こうしたい⇒修正してみた⇒あれうまくいかないぞ⇒原因はこれだ⇒うまくいった! という流れを繰り返します。 くどいくらい繰り返します。 他の人に理解してもらうため…というより、そのくらいしないと自分が理解できなかったからです。 要領の良い人にと

                                        トライアンドエラーで学ぶPythonのデコレータ【その1】 - Qiita
                                      • New Relic の Node.js agent API でデコレータを使って宣言的に Segment を作成する

                                        Segment とは New Relic の Node.js agent API では Transaction の中をさらに細分化する方法として、newrelic.startSegment(name, record, handler, callback) 関数が用意されています。 この関数は第三引数の handler に関数を渡すことである程度の処理のまとまりについて名前をつけて、New Relic のダッシュボード上で閲覧できるようになります。 以下のコードは https://docs.newrelic.com/jp/docs/agents/nodejs-agent/extend-your-instrumentation/nodejs-custom-instrumentation/#expanding-instrumentation にあるサンプルコードです。 try { const c

                                          New Relic の Node.js agent API でデコレータを使って宣言的に Segment を作成する
                                        • [Python] 絶対わかるデコレータの説明 - Qiita

                                          def count_and_sum(func): def wrapper(*args, **kwargs): wrapper.count += 1 result = func(*args, **kwargs) wrapper.sum += result return result wrapper.count = 0 wrapper.sum = 0 return wrapper @count_and_sum def add(x, y): return x + y print(add(1, 2)) # 3 print(add(3, 4)) # 7 print(add(5, 6)) # 11 print("Total count: ", add.count) # 3 print("Total sum: ", add.sum) # 21 @count_and_sumをaddの前に付けると、addが

                                            [Python] 絶対わかるデコレータの説明 - Qiita
                                          • Pythonのデコレータの基礎と応用

                                            アドベントカレンダー「ほぼ横浜の民」の3日目の記事です。 今年は Python のデコレータについて書いています。かなり雑に説明すると、デコレータとは関数についている @staticmethod や @classmethod のことです。OSS を見ているとカスタムのデコレータもあって、これってどのように機能しているんだろう?と気になることが多くなってきたので少し勉強してみました。 この記事を読んでわかること そもそもデコレータって何? デコレータってどうやって定義するの? 引数付きのデコレータはどうやって定義する? 引数付きのデコレータはなぜネストしている? なぜ functools.wraps を使ってデコレータを定義する必要があるの? 機械学習関連の OSS ではどのように使われている? デコレータとは? デコレータは、関数をラップすることで別の関数を返却する関数です。実際にはクラス

                                              Pythonのデコレータの基礎と応用
                                            • TypeScriptでデコレータを学ぼう! | セルフノート

                                              デコレータとは デコレータは、開発者同士で使いやすい機能を提供しあうことに向いています。 百聞は一見に如かずということで、簡単なデコレータを書いてみましょう。 クラスの定義 最初に、デコレータを設定するクラスを定義します。 // Book Classを定義 class Book { title = "Harry Potter"; constructor() { console.log("Creating Book Object..."); } } const b = new Book()

                                                TypeScriptでデコレータを学ぼう! | セルフノート
                                              • [Python]デコレータを理解する

                                                デコレータは関数やクラスの前後に処理を追加するものですが、その動きや書き方がいまいち腑に落ちず、放置していました。 しかし、DjangoやFlaskなど、他のパッケージを触っていると出てきますし、よくわからないまま触るのも気持ちが悪く、この際ちゃんと理解しようと思ってまとめました。

                                                  [Python]デコレータを理解する
                                                1

                                                新着記事