気になるもののコードは読むべし、ということで。 ちなみにコードを読み始めた時点でのバージョンは、`v3.23.2`です。 自分のコードリーディング用のメモ記事なので、他の人が読んでわかりやすいかは保証できません! 読みすすめ方 GitHub - sveltejs/svelte: Cybernetically enhanced web apps Svelteには、`runtime`と`compiler`のコードがある。 いずれはどっちにも目を通すつもりでいるけど、まずは`compiler`から読んでいく。 ただ`compiler`のコードをそのまま使うことはほぼないと思うので、実際にモジュールとしてどういう使われ方をするのかが知りたい場合は、Rollupなどバンドラーのプラグインのコードも見ることになりそう。 この記事ではコードの中身を1行ずつ(もちろん端折るけど)読んでいく。 svelte
Series: Compile Svelte in your head SvelteJavaScript Background Introduction Creating an element Updating an element Removing an element Adding style to an element Listen for click events on an element Svelte syntax Compile Svelte in your Head create_fragment - c() - m(target, anchor) - d(detaching) export default class App extends SvelteComponent Adding data Updating data - p(ctx, dirty) instance
10分で作るSvelteマークダウンエディタ 参考: Build a Svelte JS App: Magic Framework (Svelte 3 Tutorial) - Snipcart Svelteとは これを見るとSvelteが何なのかだいたい分かる https://youtu.be/AdNJ3fydeao これを読むとなぜSvelteを作ろうとしたかだいたい分かる https://svelte.dev/blog/virtual-dom-is-pure-overhead マークダウンエディタを作る プロジェクトセットアップ まず雛形を作る: npx degit sveltejs/template svelte-markdown-editor cd svelte-markdown-editor && npm i マークダウンをパースするライブラリを入れる markedをインストール
コロナ禍の中、11日から丸善インテックアリーナ大阪で始まった全日本卓球選手権、通称「全日本」。そこに35歳にして初めて男子シングルスに出場する男がいる。奈良県代表の岩城禎(いわき・ただし)だ。 日本卓球協会に登録している男子選手は約22万人(2019年度)。そのうち都道府県予選を勝ち抜いて一般男子シングルスに出られるのは248人、わずか0.1%だ。協会に登録していない競技者はその数倍以上もいるため、実際の競争率はさらに厳しいものとなる。 卓球の低年齢化が進んだ現代では、全日本に出場する選手の多くは、遅くても小学生時代から卓球を始め、練習がないのは年に数日という生活を送り、高校や大学も卓球で入るという半分プロのような卓球エリートたちで占められる。ほとんどの卓球人にとって、全日本とは勝つどころか出ることさえ叶わない夢の舞台だ。 卓球エリートのみが出場を許される全日本卓球。この舞台に立てるのは卓
挿入ソートのアルゴリズム 与えられた配列をソートする際、挿入ソートを用いるとする。 与えられた配列を、ソート済みの配列(長さは1)と未ソートの配列に分割する。未ソートの配列の中から一つ選び、ソート済みの配列に挿入する。挿入された値と、隣り合う要素同士を比較し、インデックスを入れ替えながら配列を並び替えていく。 アルゴリズム実装 O(n2) TypeScript export function insertionSort(array: number[]) { for (let i = 0; i < array.length; i++) { let j = i; while (j > 0 && array[j] < array[j - 1]) { const tmp = array[j]; array[j] = array[j - 1]; array[j - 1] = tmp; j -= 1;
Rudolf Lidl, Gunter Pilz: Applied Abstract Algebra, Springer, 1998
TypeScriptで実装するデータ構造 GitHub - uraway/data-structures.ts at master TOC LinkedList Stack Queue HashTable Tree Heap Trie BinarySearchTree Graph 参考 LinkedList LinkedListは、各要素が次の要素を参照を持っているシーケンスなデータ構造です。配列と似た形でデータを保存しますが、インデックスによるアクセスは苦手で、時間計算量は配列がO(1)であるのに対して、LinkedListは最悪O(n)です。 仕様 push(value) - O(1): データを追加する pop() - O(1): 最後に追加されたデータを削除する find(index) - O(n): indexの要素を検索する findBy(callback) - O(n): 要
昨今の代表的なJavaScriptフレームワーク(React、Vue.jsなど)には「仮想DOM(Virtual DOM)」という概念が採用されているので、フロントエンド界隈の人は一度は耳にしたことがあるだろう。ただ、仮想DOMについて学ぼうと検索してもヒットするのは「フレームワークの使い方」ばかり。踏み込んでいても概念の説明どまりで、仮想DOMがどのように実装されているか解説した記事はすくない。 ということで、当記事では理解を深めるために仮想DOMを使ったフレームワークを自作し、仮想DOMに入門する! そして、ReactやVue.jsを単なるブラックボックスのフレームワークではなく、中身を理解して使えるようになることを、当記事の目標とする。 フレームワークが完成すると以下のようなWebアプリケーションがつくれるようになる。 TOC 記事が長くなりそうなのでも目次 そもそもDOMとは? D
「当たり前のように使っていたOSSのせいで訴えられた!」なんてことがないように、OSSを賢く利用するためのポイントを解説します。 第1回から第3回にわたってOSS(オープンソースソフトウェア)の理念やライセンス、OSSを公開する際に気を付けるべきポイントを紹介しました。今回は本連載の最終回としてOSSにまつわるリスクを最小限に減らして賢く活用する方法を解説します。 ライセンス確認、脆弱性管理は不可欠 OSSを活用する際にすべきことは大きく2つあります。1つ目は、「どのようにOSSを利用するか?」を前もって決めることです。OSSにどのような形態があるかは第1回で説明しましたが、端的にいうと「OSSを改変して利用する」「ソースコードを取り込んで利用する」「バイナリコードとリンクする」の3つです。使用しているOSSがコピーレフト型のライセンスを適用している場合は、改変部分や自社独自で開発した部分
どうも、@yuyaaar です。 最近は Next.js アプリを見ることが多くなってきました。もはや JAM スタックの王道、と言っても過言ではないかもしれません。 ですが、やっぱりフルスタックとなると、データベースや認証などが必要になってきて、その辺のやり方がいまいちよくわからない、という人も多いのではないでしょうか。 自分もその一人でした。😅 いろいろ調べたり作ったりした結果、今現在もっとも最強コンビであろう、 Next.jsPrismaNextAuth.jsReact Queryでのフルスタックアプリケーションの作り方をこの記事では書いていきます。 今回は、チュートリアルアプリでよくある Todo アプリを作って、vercel にデプロイ、というのをやってみたいと思います。 まずは最初に Next.js ボイラープレートアプリを作りましょう。 作成できたら、まずは TypeScr
家具日用品大手のニトリが販売した、けいそう土のバスマットなどに基準を超えるアスベストが含まれているおそれがあることが分かり、回収が進められることになりました。 基準を超えるアスベストが含まれているおそれがあるのは「ニトリホールディングス」が4年前から、ことしまでに販売した、けいそう土のバスマットとコースター、合わせて9種類の製品です。 削ったり割ったりするとアスベストが飛散するおそれがあるということです。 厚生労働省によりますと、これらの製品はいずれも中国で製造され、これまでに合わせて240万点余りが売れたということです。 ニトリでは、これらの製品について回収を進めることになり、現在、具体的な回収方法を検討しています。 また、けいそう土の別の製品、合わせて29種類についても、アスベストが含まれていないか調査を進めているということです。 ニトリでは、これらの製品について使用をすぐに中止し、回
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く