クロージャとオブジェクト クロージャに初めて触れたとき、全く理解できなかった記憶があります。クロージャを正しく理解するには、JavaScriptのコア知識が少なからず必要です。簡単かつ迅速に理解するには、MDNのクロージャパートの上段に書かれている内容が適切なようです。 Closures a…
2016.07.05
1,047
JavaScriptの大きな特徴の1つは、「シングルスレッド」基盤の言語だという点です。スレッドが1つということは、同時に1つの作業だけを処理できるということです。しかし、実際にJavaScriptが使われる環境を考えてみると、多くの作業が同時に処理されていることが分かります。例えば、Webブラウザ…
2016.06.22
9,058
Overview Objective Cでのマルチコアプロセッシング技術であるGCDと、GCDの基盤であるBlock Coding、そしてこれらを有したLLVMについて調べてみよう。 まさしくLLVMの時代 現在(2016/6/15時点)は、LLVMの時代といっても過言ではありません。 …
2016.06.15
2,149
はじめに 毎日溢れ出るES6の記事を見ていると、単に遠い未来の話だという気がします。ES6でサービスを開発するには、バージョン別のブラウザ使用率が足を引っ張っているからです。B2Cはまだ良いですが、B2Bはいろいろな制約からWindows XPを使用しているユーザーもいます。さらに、最新ブラウ…
2016.05.20
443
システムを開発する上で技術と同様に重要なものがドメインに関する知識です。広告システムを開発することも例外ではありません。プログラムを作成するよりも、ドメイン知識がもっと重要で困難なこともあります。今回はオンライン広告のうち、ディスプレイ広告の基礎的な知識を紹介したいと思います。 ディスプレイ広告と…
521
Webサービスを開発していると、しばしばデータをチャートで表現しなければならないことがあります。過去には、別途イメージを作成して添付していましたが、最近は主にチャート作成ライブラリを使用しています。チャートライブラリを使用すると、データをすぐに表現できる利点がありますが、設置、生成、デザイン変更の難…
2016.05.09
709
oEmbedを使ってWebコンテンツをより効率的に共有できる方法がありましたので、簡単に内容を紹介したいと思います。 1.はじめに YouTubeのビデオをコミュニティ掲示板や、SNSで共有したい場合、リンクをUPしたり、<iframe>で構成されたソースコードを入れておく必要があり…
2016.04.26
1,290
Webサービスにおいて、JavaScriptの依存度は増加傾向にあります。 GitHubに登録されたプロジェクト(2018年度調査資料)を見ても、JavaScriptの割合が最も高いですね。皆さんもこのような経験はありませんか? 1.他の開発者がすでに作ってあるコードがあったが、知らずに重複…
2016.04.25
512
1. Prototype vs Class JavaScriptは基本的にクラスがありません。その代わり、プロトタイプという概念があり、「オブジェクト間の継承」を実装できます。すべてがオブジェクトとして扱われるため、見方を変えると、JavaScriptは他のクラス基盤の言語よりもOOP言語に近…
2016.04.18
957
1.はじめに JavaScriptコードを実装する際に「パフォーマンスを考慮して避けるべきコーディングスタイルがあるか」質問されたことがあります。そこで今回は、JavaScriptエンジンについて共有したいと思います。単に動作だけを説明するのではなく、エンジンの立場から、良いコードとはどのよう…
571