タグ

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

  • 2020年のフロントエンドマスターになりたければこの9プロジェクトを作れ - Qiita

    以下はSimon Holdorf( dev.to/ Twitter / GitHub )による記事、9 Projects you can do to become a Frontend Master in 2020の日語訳です。 9 Projects you can do to become a Frontend Master in 2020 Introduction あなたがプログラミングの初心者であるか、既に経験豊富な開発者であるかにかかわらず、この業界では、急速な変化に追いつくために新しい概念と言語・フレームワークを学び続けることが必要です。 たとえばFacebookが4年前にオープンソース化したReactは、既に世界中のJavaScript開発者にとって第一の選択肢になっています。 もちろんVueAngularにも多くのフォロアーがついています。 さらにはSvelte、Next

    2020年のフロントエンドマスターになりたければこの9プロジェクトを作れ - Qiita
    nabetama
    nabetama 2020/07/04
  • レッドコーダーが教える、競プロ・AtCoder上達のガイドライン【初級編:競プロを始めよう】 - Qiita

    このように、競技プログラミングはコーディングの正確性が問われるコンテストです。 どんな問題が出されるか(2) 競プロは正確性だけではありません。例えば、以下の問題を考えてみてください。 $N$ 枚のカードが一列に並べられています。 左から $i$ 番目のカードには、整数 $A_i$ が書かれています。 あなたは $N$ 枚のカードの中から $2$ 枚同時に選び、取ることができます。取った $2$ 枚に書かれた整数の合計がちょうど $101$ となるような、カードの選び方の通り数を求めてください。 テストデータの制約:$1 \leq N \leq 10^{6}, 1 \leq A_i \leq 10^{9}$ 一番最初に考えられる解法は、以下のように「何枚目と何枚目を選ぶか全探索する」という方法だと思います。つまり、$1 \leq i < j \leq N$ を満たすすべての $(i, j)

    レッドコーダーが教える、競プロ・AtCoder上達のガイドライン【初級編:競プロを始めよう】 - Qiita
    nabetama
    nabetama 2020/07/01
  • レッドコーダーが教える、競プロ・AtCoder上達のガイドライン【中級編:目指せ水色コーダー!】 - Qiita

    ※ ダイクストラ法・ワーシャルフロイド法は最短経路問題を解くアルゴリズムです。 ※ クラスカル法は最小全域木問題を解くアルゴリズムです。 それらのアルゴリズムが学習できる記事たちなどを紹介します。 全探索 全探索には、「全列挙」「ビット全探索」「順列全探索」「再帰関数を用いた全探索」など多くの種類に分かれます。しかし、基的に以下の記事を読めば全部理解できます。 全列挙 たのしい探索アルゴリズムの世界【前編:全探索、bit全探索から半分全列挙まで】 の 2 章 その他の全探索 たのしい探索アルゴリズムの世界【前編:全探索、bit全探索から半分全列挙まで】 の 3 章 二分探索 アルゴリズムの代表例ともいわれる二分探索は、以下の 2 記事で解説されています。 二分探索とは:アルゴリズムを勉強するなら二分探索から始めよう! 『なっとく!アルゴリズム』より 競プロで使える二分探索:二分探索アルゴ

    レッドコーダーが教える、競プロ・AtCoder上達のガイドライン【中級編:目指せ水色コーダー!】 - Qiita
    nabetama
    nabetama 2020/07/01
  • NURO光はセキュリティ的にやばいって話 (安全に使うための方法) - Qiita

    要約 NUROひかりのHGWはデフォルトでIPv6ファイアウオール機能が 無効 または 未搭載 の可能性がある ので、そのまま使うと家庭内LANがインターネットから見えちゃうからちゃんと設定か対策して使おうぜって話。 このドキュメントの対象とする人たち 何も考えずに速度が速いだけでNURO光を使っている、「いんたぁねっとが何かよく分かっていない」人向けです。 ネットワークやセキュリティを理解していて、自分のルータでセキュリティを維持しつつ使える!って人には全く関係ない話なので気にしなくていいです。読まなくていいです。 IPv6 と IPv4 のセキュリティ ここでは IPv6 と IPv4 のアドレスが割り当てられたPCやスマホとかがインターネットからどう見えるのか?について説明します IPv4 の場合 一般的にIPv4アドレスは1契約につき1アドレスが付与され、それをルータ呼ばれる機器を

    NURO光はセキュリティ的にやばいって話 (安全に使うための方法) - Qiita
    nabetama
    nabetama 2020/05/31
  • Spring Bootで環境ごとに設定をわける方法 - Qiita

    このドキュメントについて Spring Bootで番環境と開発環境で設定どうやってわけるねんってなったので、調べたときのメモ Cloud Foundry使ってるのでそこでのやり方も記載する 先にまとめ 環境ごとにapplication-環境名.ymlみたいなファイルをつくる 環境変数か起動時のオプションで変更する Cloud Foundryでやる場合はenvに設定すれば切り替えてくれる application.ymlを環境ごとにつくる ここでは、APIのURIをapplication.ymlで設定しているケースを想定している 下記のそれぞれをresources配下に設置する(ちなみに名前はなんでもいい) application-staging.yml

    Spring Bootで環境ごとに設定をわける方法 - Qiita
    nabetama
    nabetama 2020/02/28
  • 設計要件をギッチギチに詰めたValueObjectで低凝集クラスを爆殺する - Qiita

    /// <summary>契約金額</summary> public class ContractAmount { public int AmountIncludingTax; public decimal SalesTaxRate; } 当然データの入れ物(以後データクラスと呼称)だけでなく、税込み金額を計算するロジックが必要です。ここであまり設計を考えないと、この手の演算ロジックはデータクラスとは別のクラスに実装されることが多いです。以下のようにControllerに実装されることが多いのではないでしょうか。 /// <summary>契約コントローラー</summary> public class ContractController { private ContractAmount _contractAmount; /// <summary>税込金額を計算する。</summary>

    設計要件をギッチギチに詰めたValueObjectで低凝集クラスを爆殺する - Qiita
    nabetama
    nabetama 2019/11/05
  • 5分でわかるReact Hooks - Qiita

    はじめに フックって何がすごいの?クラスと何が違うの?って感じたので学習したことをここにまとめます。 Reactをこれから学ぼうと考えている方でも、 < なるほど!みんなが言っているフックについて理解できたぞ! と思って頂けるような、わかりやすい記事を目指しました! 少しでも参考になればとても嬉しいです フックとはなんぞや? 状態管理などのReactの機能を、クラスを書かずに使えるようになる機能、それがフックです フックとは関数で、React16.8(2019/2~)で追加された機能となります。 フックの具体的な使い方を説明する前に、フックは何ができて、どんなメリットがあるのか。なぜ注目されているのかについてお話します。 フックの登場で何が変わった? Reactには書き方が二種類あります。 クラスコンポーネントと関数コンポーネントです。 フック登場前のReactではクラスコンポーネントで書

    5分でわかるReact Hooks - Qiita
    nabetama
    nabetama 2019/10/18
  • Goを始めて1年間で最高にお世話になったGo関連ブックマークを晒します。 - Qiita

    自分は普段はChromeのブックマークを使ってよく見返す記事を保存しています。Goを一年間書いてきてブックマークを整理したのですが、せっかくなのでお世話になったブックマーク記事を晒します。 Blog & Serial The Go Blog Goの公式ブログ。深いところまでしっかり書かれているので、調べたいトピックはまずはここで調べたい。 https://blog.golang.org/ Practical Go GoのcontributorであるDave Cheneyさんのブログです。Goで開発&運用する上でのアドバイスが書かれており、入門記事だけでは得られないノウハウがふんだんにまとめられています。 https://dave.cheney.net/practical-go Goならわかるシステムプログラミング @shibukawaさんの連載です。Go低レイヤーを学んでいきます。根底の

    Goを始めて1年間で最高にお世話になったGo関連ブックマークを晒します。 - Qiita
    nabetama
    nabetama 2019/10/11
  • AtCoder に登録したら次にやること ~ これだけ解けば十分闘える!過去問精選 10 問 ~ - Qiita

    記事を終えた次は? AtCoder Beginners Selection を終えたら、AtCoder 上の過去問が AtCoder Problems に集大成されていますので、片っ端から埋めるような気持ちで精進していきましょう。記事の続編として AtCoder 版!蟻 (初級編) AtCoder 版!蟻 (中級編) AtCoder 版!蟻 (上級編) AtCoder 版!蟻 (発展的トピック編) も執筆しましたので参考にしていただけたらと思います。また、アルゴリズムとデータ構造に関するトピックを集大成した書籍として、 問題解決力を鍛える!アルゴリズムとデータ構造 (通称、けんちょん) を上梓しました。ぜひ読んでみてください。 1. AtCoder とは AtCoder は以下のコンテストサイトを運営しています。今後常に訪れることになるサイトです: AtCoder コンテスト

    AtCoder に登録したら次にやること ~ これだけ解けば十分闘える!過去問精選 10 問 ~ - Qiita
    nabetama
    nabetama 2019/09/06
  • Vim or NeoVimを使っている人は、すぐにアップデートしましょう [CVE-2019-12735] - Qiita

    Product: Vim < 8.1.1365, Neovim < 0.3.6 Type: Arbitrary Code Execution CVE: CVE-2019-12735 Date: 2019-06-04 Author: Arminius (@rawsec) Option: :set modeline(false)

    Vim or NeoVimを使っている人は、すぐにアップデートしましょう [CVE-2019-12735] - Qiita
    nabetama
    nabetama 2019/06/14
  • JavaScript/TypeScriptの例外ハンドリング戦略を考える - Qiita

    PySpa統合思念体です。あと、 @yosuke_furukawa にも協力いただきました。 基的に、あまりエラーの種別を細かく判定してあげることはJavaScriptでは今までやってこなかったのですが、ちょっとしたメタデータを乗っけてあげるとか(例えばリトライ回数)、何か凝ったことをしたくなったらこういう方針でやればいいのでは、という試行錯誤録です。 エラーと例外の区別が必要か この手の話になると、エラーと例外の違いとか、こっちはハンドリングするもの、こっちはOSにそのまま流すものとかいろんな議論が出てきます。このエントリーではエラーも例外も差をつけずに、全部例外とひっくるめて説明します。 例外というのはすべて、何かしらのリカバリーを考える必要があります。 ちょっとしたネットワークのエラーなので、3回ぐらいはリトライしてみる 原因: ネットワークエラー リカバリー: リトライ サーバー

    JavaScript/TypeScriptの例外ハンドリング戦略を考える - Qiita
    nabetama
    nabetama 2019/06/14
  • Dockerで立ち上げた開発環境をVS Codeで開く! - Qiita

    待望のリモート開発機能がやってきました! Introducing Remote Development for @code 🚀💻🛰️ A new set of extensions that enable you to open any folder in a container, on a remote machine, or in the Windows Subsystem for Linux (WSL) and take advantage of VS Code's full feature set. #remote 👉 https://t.co/ChYGQ89Y5f — Visual Studio Code (@code) 2019年5月2日 発表記事はこちら Remote Development with VS Code この機能を使うと、以下の3つの環境にVSCode

    Dockerで立ち上げた開発環境をVS Codeで開く! - Qiita
    nabetama
    nabetama 2019/05/07
  • JavaScriptの‍ES2019で追加された新機能まとめ - Qiita

    (2021/06/24追記) ES2021の記事を公開しました。 正式仕様リリース! JavaScriptの最新仕様ES2021で追加された新機能まとめ - Zenn (2020/02/03追記) ES2020の記事を公開しました。 JavaScriptの次の仕様ES2020で追加されることが決定した新機能まとめ - ICS MEDIA 記事ではES2019の新機能を解説しています。記事末尾では、個人的に追加を期待していたけれどまだステージ3の機能についても紹介しています。 ES2019仕様書:「ECMAScript® 2019 Language Specification」

    JavaScriptの‍ES2019で追加された新機能まとめ - Qiita
    nabetama
    nabetama 2019/01/31
  • setTimeout()の0秒は4ミリ秒 - Qiita

    window.setTimeout()がコールバックのネストにより連続的に呼ばれたとき、4ミリ秒の遅延が発生します。 たとえば以下のコードでは、countを1000にするのに4秒以上かかります。 let start = new Date().getTime(); let count = 0; let next = () => { count++; if (count === 1000) { console.log((new Date().getTime() - start) / 1000); } else { window.setTimeout(next, 0); } }; let id = window.setTimeout(next, 0); MDNのページで言及されていました。「4ミリ秒」というのはHTML5で標準化された仕様です。 解決策も書かれており、window.postMes

    setTimeout()の0秒は4ミリ秒 - Qiita
    nabetama
    nabetama 2019/01/27
  • フロントエンド開発でパッケージのアップデートを継続的におこなう - Qiita

    フロントエンド開発でパッケージのアップデートを継続的におこなう これは Classi Advent Calendar 2018 1 日目の記事です。 フロントエンドエンジニアの @kasaharu です。 はじめに 昨今のフロントエンド開発はフレームワークと呼ばれるものから便利なライブラリまで幅広いパッケージを使って行われている しかし、これらは導入したときのままであることが多く、バージョンアップすることを怠ると後々問題の原因になったりする バージョンを上げないとセキュリティ問題に対応できなくなったり、パッケージそのものがサポートされなくなったりする また、逆にバージョンを上げることでパフォーマンス改善などの恩恵を受けられる場合もあるが、その機会を損失していたりする 今回は、できるだけ負荷にならずに継続的なパッケージアップデートを習慣化するために Renovate というサービスを使用して

    フロントエンド開発でパッケージのアップデートを継続的におこなう - Qiita
    nabetama
    nabetama 2018/12/11
    良さそう
  • 技術選択編 - #golang で CLI 作るときにいつもつかうやつ - Qiita

    続編 ボイラプレート編 - #golang で CLI 作るときにいつもつかうやつ - Qiita grapi・gex・ery など,今年に CLI を作りまくって見えてきたベストプラクティス集(技術選択編). 基便利パッケージ Cobra - spf13/cobra フラグ処理やサブコマンド・ヘルプメッセージ・補完など,CLI ツールに必要なことはだいたいいい感じにやってくれるライブラリ.有名どころだと docker や kubectl, hugo の実装に利用されている. 使い方イメージ: // cmd/foobar/main.go //---------------------------------------------------------------- func main() { if err := run(); err != nil { fmt.Fprintln(os.

    技術選択編 - #golang で CLI 作るときにいつもつかうやつ - Qiita
  • [Go言語] もしも童話「シンデレラ」が、Goで書かれていたら。 - Qiita

    シンデレラがGoで書かれていたら。 という妄想です。 少し長いですがお付き合いください。 TL;DR ソースはここにおいてます https://github.com/lboavde1121/cinderella あらすじ 以下あらすじ。 シンデレラは、継母とその連れ子である姉たちに日々いじめられていた。 あるとき、城で舞踏会が開かれ、姉たちは着飾って出ていくが、シンデレラにはドレスがなかった。 舞踏会に行きたがるシンデレラを、不可思議な力(魔法使い、仙女、ネズミ、母親の形見の木、白鳩など)が助け、準備を整えるが、魔法は午前零時に解けるので帰ってくるようにと警告される。 シンデレラは、城で王子に見初められる。 零時の鐘の音に焦ったシンデレラは階段にを落としてしまう。 王子は、を手がかりにシンデレラを捜す。 姉2人も含め、シンデレラの落としたは、シンデレラ以外の誰にも合わなかった。 シン

    [Go言語] もしも童話「シンデレラ」が、Goで書かれていたら。 - Qiita
    nabetama
    nabetama 2018/11/20
  • Webパフォーマンス虎の巻

    Webパフォーマンス向上施策のために、今更ながら超速1を読んだので、今までの自分の知見と合わせてまとめてみます。 なるべく柔らかく、改善施策ってまず何をどうすればいいの?という疑問を持った人に向けて書いています。 ▪️格言 そもそもWebは速い。遅くしているのは我々です。大抵は技術の問題ではなくて、人の問題。 引用元: テクニックではなく、今、気で取り組むべきWebパフォーマンス (html5jパフォーマンス部 部長 竹洞さん) 心得 パフォーマンス向上に対する施策は大別すると以下の2通り 軽量化 (単純にやりとりするデータ容量を小さくすること) 圧縮 削除 最適化 (その時に最も適している実装・実行をとること) 経路・順番の変更 非同期 もっとも遅くしている原因を探して、それを対策するのが原則。「対効果」が絶対的正義である。手段から入るのは愚策。まず先に原因を知ることが重要。 ▪️1

    Webパフォーマンス虎の巻
    nabetama
    nabetama 2018/10/26
  • Neo-Async - Qiita

    目次 Async.jsとは Neo-Async.jsとは 作った経緯 速度比較 機能一覧 今後の予定 Async.jsとは jsで非同期系の処理をすると言えばスタンダードなライブラリ githubで★が1万超え Neo-Async.jsとは Asyncより速い Asyncに完全に互換性がある ほぼ全てのメソッドでiteratorに対しbindできる ObjectをいちいちArrayに変換して投げる必要がない ライブラリ内で落ちない 便利なメソッド追加 https://github.com/suguru03/Neo-Async 作った経緯 nullで番サーバ死んだ PRが取り込まれない やりたいことができないことが多い 5月から更新無かった(作ってる間に少し更新された!) 速度比較 結果 series asyncより2.4倍速い parallel asyncより2.8倍速い waterfa

    Neo-Async - Qiita
    nabetama
    nabetama 2018/10/24
  • 実際のところ「ブラウザを立ち上げてページが表示されるまで」には何が起きるのか - Qiita

    9月15日(土) DNSについて追記しました。バックエンド?今はクラウドがきっと上手くやってくれるので深く考える必要は無いんですよ(知らないので書けません😔) 問題のツイート 面接の質問で「ブラウザを立ち上げてページが表示されるまでの仕組みを全て知ってる限り説明してください」ってのをやると結構Web系の知識どれだけあるか分かると思ってる — 🍛🍺 (@tan_go238) September 10, 2018 解釈 今回は「ChromeのURL欄に入力してからページが表示されるまで」をやります。ブラウザの起動云々はWeb系の話じゃないと信じてます。 1. HTTPリクエストが飛ぶ HTTP2のヘッダ圧縮技術に全て書いてありました。 (追記)下のリクエストヘッダはテキストで書かれていますが、実際にはこれをバイナリにしたものが飛んでいるとのことです。segfoさんありがとうございます!

    実際のところ「ブラウザを立ち上げてページが表示されるまで」には何が起きるのか - Qiita
    nabetama
    nabetama 2018/09/14