タグ

ブックマーク / qiita.com (487)

  • 🎉React 16.8: 正式版となったReact Hooksを今さら総ざらいする - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 来たる 2 月 4 日、ついに React 16.8 の正式版がリリースされます。この React 16.8 には、アルファ版が公開されて以来常に React ユーザーたちの関心をほしいままにしてきたReact Hooksが正式版となって追加されます。 ※追記:アメリカ時間で 2 月 5 日になっても React 16.8 がリリースされませんでした。事前情報で 2 月 4 日と言ってたのに……。いつになったらリリースされるのかはよく分かりません。2 月 6 日に React 16.8 がリリースされました! 熱心な React ユーザ

    🎉React 16.8: 正式版となったReact Hooksを今さら総ざらいする - Qiita
  • Reactアハ体験 - Qiita

    Reactはちょっとしたコツを掴むと一気に理解が進みます。 Googleのデベロッパーであり数々のReactトレーニングを手がけてきたTyler McGinnis氏によるReact "Aha" Momentsが非常に参考になるため、人の許可を得て意訳しました。 誤りやより良い表現などがあればご指摘頂けると助かります。 原文:https://tylermcginnis.com/react-aha-moments/ 私が技術的なコンテンツを教えたり書いたりする時の主な目標の1つは「アハ体験」を最大化することです。アハ体験は物事が突然理解できた瞬間のひらめきです。私たちは皆これを体験してきましたし、私の知る最高の教師たちは聴衆に応じて、それらの瞬間を最大化するための教えを最適化することができます。 ここ数年、私はほぼ全ての一般的なメディアでReactを教えてきました。その間、私はReact習得

    Reactアハ体験 - Qiita
  • おまえはReact hooksを知っているか - Qiita

    よく来たな。おれは毎日すごい量のコードを書いているが、誰にも読ませる気はない。しかし今回はReact hooks という真の男のためのAPIを発見したのでいてもたってもいられずQIITAに記事を書くことにした。 (この記事の文体は、逆噴射聡一郎先生のパロディです。) お前は毎日VUEだとかREACTだとかPWAだとかBBBFFだとかそういう流行に常に振り回されながらフロントエンドというメキシコを生きている。フロントエンドで生まれてくる技術のほとんどは、マッチの火より儚くすぐ消えてなくなるものだ。しかし、流行に乗り遅れるのを恐れているおまえはそういった技術にとびつき、チュートリアルをよみ、すべてを理解したと息巻いてプロダクトに導入し・・・やがてそれの流行がおわり・・・メンテをするのが辛くなり・・・しぬ。フロントエンド界隈ではへなちょこな技術がもてはやされ、しばらく経ってそれが全く使い物になら

    おまえはReact hooksを知っているか - Qiita
  • numpy そっくりなヘッダオンリー C++ ライブラリ NumCpp - Qiita

    はじめに 先日 Twitter でこんなツイートを見ました。 Pythonのいいところって大体ほとんどのライブラリがnumpyのオブジェクト使ってるところな気がする。C++もそういうのあればいいのに、あるかもしらんけど — 🔰😢神😢🔰 (@AllisTheWill) September 3, 2019 確かに numpy はよく出来てて、Python のシンタックスにマッチしたとても便利なライブラリですね。このツイートのレスに以前見つけて遊んだ事のある NumCpp を「numpy そっくりさん」という内容で言及しました。 一応 numpy そっくりさんとして NumCpp もあります。 https://t.co/vamY0Q9qiy — mattn@有益情報 (@mattn_jp) September 3, 2019 ただ NumCpp がどんな使い勝手なのか知らない人も多いと思

    numpy そっくりなヘッダオンリー C++ ライブラリ NumCpp - Qiita
  • スタートアップや小規模チームのテストケース管理には「Qase」がいいかもしれない - Qiita

    はじめに みなさん、テストケースマネジメントしてますか? テストケースマネジメントのツールといえば TestRail や PractiTest 、あるいはRedmineやJIRAなどのプラグインを使うことが多いと思います。 ですが、基的に商用、それもテスターが大勢いるようなQA組織向けのツールが主で、スタートアップなどでQA体制が未成熟なところにフィットする選択肢って少ないですよね。 そんな中、Qaseというツールを見つけたのでご紹介します。 Startup Plan というまさしく上記の悩みにドンピシャなプランが用意されており、複雑な設定が不要であれば無料で利用できるようです。 また、2019/09現在パブリックベータとして公開されており、有償プランの機能も自由に利用できるようです。 https://qase.io/pricing 試さない理由がないですね! というわけでレビューしてい

    スタートアップや小規模チームのテストケース管理には「Qase」がいいかもしれない - Qiita
  • 2020年以降のプログラミング技術のトレンド予想 - Qiita

    こちらの記事は、2019年7月に公開された Indrek Lasn 氏による『 2020 and Beyond Programming Trend Predictions 』の和訳になります。 記事は著者の許可を得て掲載しています。 Thank you for letting us share your knowledge! 著者に何かメッセージがある方は Twitter までご連絡ください。 また記事は転載であり、記事はこちらになります。 はじめに 2020年は、もうすぐそこです。 2020年はSFの世界のように聞こえますが、そろそろ新しい世界のドアをノックする時期になっています。 すぐそこまで来ている未来のプログラミングの世界に興味をお持ちの方は、この文章をこのまま読み続けて下さい。 これから述べることは、間違っているかもしれませんが、私が将来起こると考えていることです。 未来を

    2020年以降のプログラミング技術のトレンド予想 - Qiita
  • create-react-appで作った雛形のコードがService Workerで何をしているのか - Qiita

    create-react-appコマンドを実行すると、React.jsプロジェクトの雛形を作れます。 その雛形のsrcディレクトリ以下にregisterServiceWorker.jsというファイルがあります。 また、ビルドするとservice-worker.jsというファイルが生成がされます。 雛形のコードがService Worker上でしている事と、上記ファイルについてまとめてみました。 Service Workerについて Service Workerとは、リッチなオフライン体験・定期的なバックグラウンド同期・プッシュ通知など、いわゆるPWAの機能を実現するために基盤となる技術です。 (詳しくはGoogleのドキュメントにて解説されています。Service Worker の紹介) Service Workerによって実現できる機能は様々ですが、create-react-appで作っ

    create-react-appで作った雛形のコードがService Workerで何をしているのか - Qiita
  • 宣言的UIはReact Hooksで完成に至り、現代的設計論が必須の時代になる - Qiita

    この記事は、ある程度以上の規模のGUI開発において、React Hooks以後の宣言的UIにより、大規模開発に用いられる設計論に完全に対応できるようになり「ビジネスロジックの変更や追加」に対応するコストを低く保つこと(技術的負債の抑制)ができるようになったことを解説するものです。 技術的負債の抑制には、技術的負債の原因となりがちな「広範囲の密結合」と「適切な疎結合を保つ仕組みの欠如」が欠かせません。それをカバーするのが、大規模開発をクリーンに行える設計論(ここでは「現代的な設計論」とよぶもの)です。クリーンアーキテクチャなんかでGUIによく適用されるHumble Object Patternのようにプレゼンテーションとビューを分離する必然性が無くなるでしょう。 ポイントは ある程度以上の規模で開発するなら設計論をうまく使い設計しないと、技術的負債を抱え込む(ビジネスロジックの変更や追加に対

    宣言的UIはReact Hooksで完成に至り、現代的設計論が必須の時代になる - Qiita
  • これで完璧!今さら振り返る CSRF 対策と同一オリジンポリシーの基礎 - Qiita

    ✎ 基礎知識編 CSRF とは何か? CSRF (Cross-Site Request Forgeries) を意訳すると 「サイトを跨ぐ偽造リクエスト送信」 です。 簡単に言うと,罠サイトを踏んだ結果,自分が無関係な別のサイト上で勝手にアクションをさせられる攻撃です。具体的には,ネットサーフィンをしているうちに知らない間に自分のIPアドレスから掲示板に犯罪予告が書かれていた,といった被害を受けます。 この攻撃を防ぐ責任は「無関係な別のサイト(具体例では掲示板)」側にあります。Web サイト作成者には,利用者が意図しない操作を勝手に実行されないように,利用者を守る責任があります。 また上図からも分かる通り,この攻撃の最大の特徴はアカウントがハッキングされたというわけではないということです。ログイン状態の利用者のWebブラウザを利用して攻撃が行われている,というのが重要です。 オリジンとは何

    これで完璧!今さら振り返る CSRF 対策と同一オリジンポリシーの基礎 - Qiita
  • C++11 or later で JSON 文字列から静的なクラス(or struct)へ値を復元する(StaticJSON, jsoncons, spotify-json, nlohmann json) - Qiita

    C++11 or later で JSON 文字列から静的なクラス(or struct)へ値を復元する(StaticJSON, jsoncons, spotify-json, nlohmann json)C++JSON 背景 C++ で JSON を扱うライブラリはいくつかありますが(picojson, rapidjson, json11, nlohmann json など), 具体的なメッセージ構造(クラス, struct)が決まっているときに復元するのはいろいろ型変換や型チェックのコードを書く必要がありめんどい. (グラフィックスとか機械学習などの用途では, だいたいメッセージ型が決まっているため) protobuf, flatbuffers のように, スキーマ定義などから JSON を具体的な静的な型を持つメッセージに復元したい. たとえば以下のような感じ struct Messa

    C++11 or later で JSON 文字列から静的なクラス(or struct)へ値を復元する(StaticJSON, jsoncons, spotify-json, nlohmann json) - Qiita
  • JavaScriptのエキサイティングな新機能7選 - Qiita

    以下はMostafa Gaafarによる記事、7 New Exciting JavaScript Features You Need to Knowの日語訳です。 7 New Exciting JavaScript Features You Need to Know JavaScript ( ECMA Script ) は進化する言語であり、たくさんのproposalやアイデアが出番を待ち受けています。 TC39 (Technical Committee 39) という委員会がJavaScript標準と新機能の定義を担当しています。 そして今年は彼らの活動が活発になっています。 以下は、現在ステージ3にある提案の一部の紹介です。 ステージ3は完成する直前の段階です。 これはつまり、この機能がブラウザやその他のJavaScriptエンジンにすぐに実装されることを表しています。 実際、以下の

    JavaScriptのエキサイティングな新機能7選 - Qiita
  • printfに4285個アスタリスクをつけるとclang++が死ぬ - Qiita

    def check(n) s = "*"*n f = open("test.cpp","w") f.puts <<EOS #include <cstdio> int main(){ (#{s}printf)("Hello World\\n"); } EOS f.close() return system("clang++ test.cpp") end check(ARGV[0].to_i) $ ruby check.rb 10000 clang: error: unable to execute command: Illegal instruction: 4 clang: error: clang frontend command failed due to signal (use -v to see invocation) Apple LLVM version 10.0.1 (clang

    printfに4285個アスタリスクをつけるとclang++が死ぬ - Qiita
    MonMonMon
    MonMonMon 2019/08/21
    オモロー
  • C で関数に * や & を付けられる件の説明 - Qiita

    規格として C11 (n1570) を参照する。 注意: 途中に入れた図が崩れるようなら、半角・全角比が 1:2 になるようなフォントを使って閲覧してください。 現象 wandbox で実行 ソース: ( &printf)(" &printf = %p\n", &printf); printf (" printf = %p\n", printf); ( *printf)(" *printf = %p\n", *printf); ( **printf)(" **printf = %p\n", **printf); (***printf)("***printf = %p\n", ***printf); この現象を解説する。 関数呼び出し まず、関数呼び出しについての規定を見る。 The expression that denotes the called function shall have

    C で関数に * や & を付けられる件の説明 - Qiita
    MonMonMon
    MonMonMon 2019/08/21
  • Boost.Hana の紹介! - Qiita

    はじめに Boost.Hana は、Boost の新しくて速いメタプログラミングライブラリです。また、公式リファレンスでの説明は以下の通りです。 Hanaは、型と値の両方の計算に適したC++メタプログラミング用のヘッダーオンリーライブラリです。 それが提供する機能は、十分に確立されたBoost.MPLおよびBoost.Fusionライブラリによって提供されるもののスーパーセットです。 C ++ 11/14の実装手法とイディオムを活用することで、Hanaは以前のメタプログラミングライブラリと同等以上のコンパイル時間とランタイムパフォーマンスを誇り、プロセスの表現力を大幅に向上させます。 Hanaはアドホックな方法で簡単に拡張でき、Boost.Fusion、Boost.MPL、および標準ライブラリとすぐに使用できる相互運用を提供します。(主に google 翻訳です) この記事では、この Bo

    Boost.Hana の紹介! - Qiita
  • 事業会社とOSS - Qiita

    最近、社内でよく話をする内容についてまとめました。 企業がOSS化するといろいろメリットがあると思っていて、社内でもそこのコンセンサスはうちの技術横断部門のメンバー間では取れていたりするのですが、自社以外の人とかと話をする時もあるので、いろいろまとめておきます。 なお、この文章では業をOSSにしつつビジネスを回そうみたいなElasticsearchとかMongoDBとかMySQLみたいな話題はとりあげず、業が別にある会社がOSS化する、という部分に特化した話です。 9/13に追記 よく言われるメリットとデメリット メリットは、公開することで開発が自然と進み、コスト削減になる。一方でノウハウの流出などのデメリットがある、みたいなトレードオフ、という理解をしている人が多いようです。 コストは削減にならない OSS化したら多くの人に使ってもらいたいですよね?というのは考えるわけですが、その「

    事業会社とOSS - Qiita
  • Reactを使ったモダンなフロントエンド開発の環境構築 - Qiita

    はじめに Reactを中心としたフロントエンド開発において、以下のような構成を見かけることが多いと思います。 UIライブラリとしてReact 型のある言語としてTypeScript スタイル定義としてstyled-components コンポーネントの開発環境としてStorybook LinterとしてESLint FormatterとしてPrettier この記事では、各種ライブラリについて紹介したのち、それらを使う場合の環境構築についてハンズオン形式で説明します。 ※ アプリケーションを開発する際に必要になる設定が抜けていたので、追記しました。 各種ライブラリの紹介 まず、各ライブラリがどのようなものなのかを簡単に紹介します。 ライブラリの使い方などは公式ドキュメントなどを参照するようにしてください。 ドキュメント ReactUI(ボタンやフォームなど)コンポーネントを作成するための

    Reactを使ったモダンなフロントエンド開発の環境構築 - Qiita
  • 第12回 Raspberry Pi で監視カメラを作ろう! ~動画配信(RTSP)編~ - Qiita

    Raspberry Piと専用のカメラモジュールを使用し、ONVIF対応の監視カメラを作成するシリーズ記事です。 記事はリンク情報システム株式会社の有志が作成しています。 動画配信の方法としては、古くから使われるRTSPや、Apple関係で標準となっているHLS (Http Live Streaming)が考えられます。 HLSは名前の通りHTTPを使用しているため、インターネット環境での親和性が高いのですが、動画ファイルを数秒単位の長さに分割し、細切れに送信するため、再生時には秒単位でのバッファリングが必要となります。 その為、カメラからの動画をリアルタイムで表示する用途には向きません。 今回は、監視カメラとして、ある程度のリアルタイム性も確保したいと考えているため、RTSPを使用して動画配信を作ります。 動画配信 (RTSP) live555を使用してRTSP配信 RTSPによる動画

    第12回 Raspberry Pi で監視カメラを作ろう! ~動画配信(RTSP)編~ - Qiita
  • helm を背に ivy の門を叩く - Qiita

    はじめに ivy は, helm と双璧を成す Emacs の補完システムです.リスト表示された多くの選択肢から,自分が使いたいものを高速に絞り込んで,効率良く選び出す.このシンプル,かつ極めて重要なタスクを, ivy や helm が手助けしてくれます. 過去を振り返れば,特に理由もなく私は anything.el から(強いて言えばメンテナス状況が良かった) helm.el に移行し,そして今回, helm.el から ivy.el に移行することにしました. ivy への移行の理由はいくつかありますが,シンプル軽量であり,ミニバッファで完結するインターフェイスに安定感があり,なにより all-the-icons.el との相性が良いことです. 特に普段からモードラインを表示しない派の方は,全体的にスッキリ・シャープな Emacs に生まれ変わりますので,移行をオススメします. よけれ

    helm を背に ivy の門を叩く - Qiita
    MonMonMon
    MonMonMon 2019/08/04
    これは助かるまとめだ
  • ローカルで開発していたアプリをDocker化してみた(nginx+Flask+postgres) - Qiita

    はじめに ローカルで作った簡易的なブログサービス(こちらの記事を参照)をDocker化してみました。正直この規模だと単一コンテナで十分だと思いますが、折角dockerをお勉強する機会なので、nginx(Webサーバ)とgunicorn+flask(APサーバ)とpostgre(DBサーバ)でコンテナを分けて、docker-composeで全コンテナの統合管理をします。 docker構成 ディレクトリ構成 ローカルの任意の場所にこの構成で作ります。 TutorialBlog ├docker-compose.yml ├nignx/ │ ├nginx.conf │ └Dockerfile ├app/ │ ├templates/ │ │ └(略) │ ├static/ │ │ └(略) │ ├app.py │ ├models.py │ └Dockerfile ├postgres/ │ ├initd

    ローカルで開発していたアプリをDocker化してみた(nginx+Flask+postgres) - Qiita
  • Reactのべからず集 - Qiita

    Reactは便利なライブラリですが、ライブラリの想定を外れる使い方をするとうまく動かないとか、進化が続いているのですでに古くなってしまった書き方とかが存在します。 ここでは、そのような、Reactでやるべきでない書き方についてまとめてみました。 ★★★★ この「★★★★」は、「守らないと正常動作しなくなる」レベルのものについて扱います。 JSXを使うファイルでReactを用意し忘れる JSXはReact.createElementに変換されますので、直接アクセスしているように見えなくても、名前空間内にReactが必要です。 eslint react/react-in-jsx-scope コンポーネント内部からpropを書き換える あくまでpropsは親から子へ渡されるものなので、子の側で書き換えることはReactの枠組みの想定外となります。 setState以外の手段でstateを書き換え

    Reactのべからず集 - Qiita