SlideShare ist ein Scribd-Unternehmen logo
1 von 14
Downloaden Sie, um offline zu lesen
ちょっと詳しくJavaScript 特別編【悪霊の神々】
2011年07月08日




                           株式会社ランチェスター
                           TEL: 03-5775-3395 Fax:03-5775-3396
                           URL: http://www.lanches.co.jp/
名前空間的なもの - 序説
JavaScriptにおける関数定義、変数、クラス的なものなどはすべて何か
のオブジェクトのプロパティとして保持されるため、普通に宣言してしま
うと全てグローバルオブジェクトに属してしまう。
そのため、ライブラリなどで同じ名前があると「後勝ち」してしまい、意図
しない動作を引き起こすことがある。
これを避けるため、グローバルオブジェクトへの定義(汚染)を少なくする
テクニックが生み出された。

それが「名前空間」。

他言語における名前空間、また次世代で検討されているECMAScriptと
しての名前空間とは全く別なので注意してください。



             Proprietary and Confidential to Lanchester Co.,LTD.   Page 1
名前空間的なもの - 実践その1
実はそんなに難しい話じゃないです。

js1.js
function hello() { alert("Hello!"); }

js2.js
function hello() { alert("HELLO!!!"); }

こんなソース2つを読み込むと読み込む順番によってhello関数が上書
きされてしまう。
読み込みの順番を既定したり命名ルールで避ける方法もあるけど、外
部ライブラリを使う場合にはそうも行かないことが・・・



                       Proprietary and Confidential to Lanchester Co.,LTD.   Page 2
名前空間的なもの - 実践その2
js1.js
if(typeof(window.lanchester)=="undefined") {
        window.lanchester = {};
}

window.lanchester.one = {
      hello: function() {
               alert("Hello!");
      }
};

グローバルオブジェクトに変数がすでに存在するかを確認し、ない場合
にはオブジェクトを生成する。
その下に(必要に応じて)ライブラリ名を付け、関数を作成していく。
(js2.jsも同様に)
                       Proprietary and Confidential to Lanchester Co.,LTD.   Page 3
名前空間的なもの - 実践その3
使用する際はそのまま

lanchester.one.hello();
lanchester.two.hello();

となる。

最上位の「lanchester」プロパティのみがグローバルオブジェクトに置か
れ、被害(?)が最小限になる。




                      Proprietary and Confidential to Lanchester Co.,LTD.   Page 4
無名関数作成即実行
関数を作って即実行、その関数は使い捨てたい。
var a = function(){ … };
a();
でもこうするとインスタンスaが出来ちゃう。勿体ない!!

( function(){ … } )();
これで解決!

関数の中で一時変数をたーくさん使ってもグローバルに置かれないので
いろいろ安心できる!

動作的に意味を持たせたいなー・・・なら
( { init: function(){ … } } ).init();
こんなことも!

                     Proprietary and Confidential to Lanchester Co.,LTD.   Page 5
無名関数作成即実行、実例!?
<style type="text/css">
#t { width: 100%; border-collapse:collapse; }
#t td { border: 1px solid #000; }
#t tr.hover { background: #fcc; }
</style>

<table id="t">
             <tr><td>1-1</td><td>1-2</td><td>1-3</td></tr>
             <tr><td>2-1</td><td>2-2</td><td>2-3</td></tr>
             <tr><td>3-1</td><td>3-2</td><td>3-3</td></tr>
</table>

<script type="text/javascript">
for(var i=0, o=document.getElementById("t").getElementsByTagName("tr"), n=o.length; i<n; i++) {
             o[i].addEventListener("mouseover", (function(_tr) {
                          return function() {
                                        _tr.className = "hover";
                          }
             })(o[i]), false);
             o[i].addEventListener("mouseout", (function(_tr) {
                          return function() {
                                        _tr.className = "";
                          }
             })(o[i]), false);
}
</script>
                                     Proprietary and Confidential to Lanchester Co.,LTD.          Page 6
try~catch~finally
try {
         nothingFunction();             // そんな関数はないのに実行
} catch(e) {                            // エラーオブジェクト
         alert(e);                      // nothingFunction is not defined等
} finally {
         …                              // catchされてもされなくても
         …                              // 確実に実行される
}

エラーオブジェクトは各実装で保持しているプロパティが違うのでcatch
した後の扱い方に困る・・・




                      Proprietary and Confidential to Lanchester Co.,LTD.   Page 7
try~catch~finally、実例
var xhr = null;
try {
         xhr = new XMLHttpRequest();
} catch(e) {
         try {
                 xhr = new ActiveXObject("Microsoft.XMLHTTP");
         } catch(e) {
                 try {
                         xhr = new ActiveXObject("Msxml2.XMLHTTP");
                 } catch(e) {
                         alert("Ajax非対応ブラウザ乙ww");
                 }
         }
}

今ではjQueryとかが勝手に作ってくれるAjax用の通信オブジェクト。
昔はこうやって自分で頑張ってつk(ry
                        Proprietary and Confidential to Lanchester Co.,LTD.   Page 8
try~catch~finallyがあるからにはthrowも
function f() {
        throw "can't find";
}

function g() {
        try {
               f();
        } catch(e) {
               alert(e);
        }
}

任意のオブジェクトをthrowすることができる。


                       Proprietary and Confidential to Lanchester Co.,LTD.   Page 9
JavaScriptにおける継承の例 - 定義
function TV(name) {
         this.name = name;
}
TV.prototype.myName = function() { alert(this.name); }
TV.prototype.watch = function() { alert("Watch TV!"); }


function TVwithDVD(name) {
         this.name = name;
}
TVwithDVD.prototype = new TV(); // ここが肝!
TVwithDVD.prototype.play = function() { alert("Play DVD!") }
TVwithDVD.prototype.record = function() { alert("Recording...") }

継承する場合はprototypeへの親クラス代入をコンストラクタ内に書け
ないので注意。
またコンストラクタを継承するのは難易度が高く、実用的ではない。
                          Proprietary and Confidential to Lanchester Co.,LTD.   Page 10
JavaScriptにおける継承の例 - 実践
var tv = new TV("Panazonic");
var dvd = new TVwithDVD("TOSHIVA");

try {
        tv.myName();   // Panazonic
        tv.watch();    // Watch TV!
        tv.play();     // 実行不可
        tv.record();   // 実行不可
} catch(e) {}    // エラー握りつぶし用(本来は非推奨)

try {
        dvd.myName(); // TOSHIVA
        dvd.watch();   // Watch TV!
        dvd.play();    // Play DVD!
        dvd.record();  // Recording...
} catch(e) {}    // エラー握りつぶし用(本来は非推奨)



                       Proprietary and Confidential to Lanchester Co.,LTD.   Page 11
JavaScriptにおける継承の例 - 雑感
JavaScriptにおける継承は、その用途によって多種多様な方法があり
ます。
今回挙げた例はそのうちの一つでしかないので、必要に応じて適した
形を選択する必要があるので、Google等で
「JavaScript 継承」
などで調べることをお奨めします。

クラスベース言語の継承のような機能を提供してくれるライブラリも存
在します。

また、そもそも関連性が希薄なため「継承を使わない」というのも選択
肢の一つに入れておくと良いかもしれません。



            Proprietary and Confidential to Lanchester Co.,LTD.   Page 12
株式会社ランチェスター
TEL: 03-5775-3395 Fax:03-5775-3396
URL: http://www.lanches.co.jp/

Weitere ähnliche Inhalte

Was ist angesagt?

非同期処理の基礎
非同期処理の基礎非同期処理の基礎
非同期処理の基礎信之 岩永
 
effective modern c++ chapeter36
effective modern c++ chapeter36effective modern c++ chapeter36
effective modern c++ chapeter36Tatsuki SHIMIZU
 
C++ マルチスレッドプログラミング
C++ マルチスレッドプログラミングC++ マルチスレッドプログラミング
C++ マルチスレッドプログラミングKohsuke Yuasa
 
TypeScript 言語処理系ことはじめ
TypeScript 言語処理系ことはじめTypeScript 言語処理系ことはじめ
TypeScript 言語処理系ことはじめYu Nobuoka
 
Swift 2.0 の Error Handling #yhios
Swift 2.0 の Error Handling #yhiosSwift 2.0 の Error Handling #yhios
Swift 2.0 の Error Handling #yhiosTomohiro Kumagai
 
C#次世代非同期処理概観 - Task vs Reactive Extensions
C#次世代非同期処理概観 - Task vs Reactive ExtensionsC#次世代非同期処理概観 - Task vs Reactive Extensions
C#次世代非同期処理概観 - Task vs Reactive ExtensionsYoshifumi Kawai
 
BoostAsioで可読性を求めるのは間違っているだろうか
BoostAsioで可読性を求めるのは間違っているだろうかBoostAsioで可読性を求めるのは間違っているだろうか
BoostAsioで可読性を求めるのは間違っているだろうかYuki Miyatake
 
xv6から始めるSPIN入門
xv6から始めるSPIN入門xv6から始めるSPIN入門
xv6から始めるSPIN入門Ryousei Takano
 
規格書で読むC++11のスレッド
規格書で読むC++11のスレッド規格書で読むC++11のスレッド
規格書で読むC++11のスレッドKohsuke Yuasa
 
冬のLock free祭り safe
冬のLock free祭り safe冬のLock free祭り safe
冬のLock free祭り safeKumazaki Hiroki
 
メディア・アートII 第2回 openFrameworks基礎 配列、くりかえし、乱数 ベクトルを使用したアニメーション
メディア・アートII  第2回 openFrameworks基礎 配列、くりかえし、乱数 ベクトルを使用したアニメーションメディア・アートII  第2回 openFrameworks基礎 配列、くりかえし、乱数 ベクトルを使用したアニメーション
メディア・アートII 第2回 openFrameworks基礎 配列、くりかえし、乱数 ベクトルを使用したアニメーションAtsushi Tadokoro
 
async/await のしくみ
async/await のしくみasync/await のしくみ
async/await のしくみ信之 岩永
 
Async design with Unity3D
Async design with Unity3DAsync design with Unity3D
Async design with Unity3DKouji Hosoda
 
Kanazawa.js.Next
Kanazawa.js.NextKanazawa.js.Next
Kanazawa.js.Nextdynamis
 
Scalamacrosについて
ScalamacrosについてScalamacrosについて
Scalamacrosについてdekosuke
 
Shibuya JVM Groovy 20150418
Shibuya JVM Groovy 20150418Shibuya JVM Groovy 20150418
Shibuya JVM Groovy 20150418Uehara Junji
 
Observable Everywhere - Rxの原則とUniRxにみるデータソースの見つけ方
Observable Everywhere  - Rxの原則とUniRxにみるデータソースの見つけ方Observable Everywhere  - Rxの原則とUniRxにみるデータソースの見つけ方
Observable Everywhere - Rxの原則とUniRxにみるデータソースの見つけ方Yoshifumi Kawai
 
Reactive Extensions v2.0
Reactive Extensions v2.0Reactive Extensions v2.0
Reactive Extensions v2.0Yoshifumi Kawai
 

Was ist angesagt? (20)

非同期処理の基礎
非同期処理の基礎非同期処理の基礎
非同期処理の基礎
 
effective modern c++ chapeter36
effective modern c++ chapeter36effective modern c++ chapeter36
effective modern c++ chapeter36
 
C++ マルチスレッドプログラミング
C++ マルチスレッドプログラミングC++ マルチスレッドプログラミング
C++ マルチスレッドプログラミング
 
TypeScript 言語処理系ことはじめ
TypeScript 言語処理系ことはじめTypeScript 言語処理系ことはじめ
TypeScript 言語処理系ことはじめ
 
C++ マルチスレッド 入門
C++ マルチスレッド 入門C++ マルチスレッド 入門
C++ マルチスレッド 入門
 
Swift 2.0 の Error Handling #yhios
Swift 2.0 の Error Handling #yhiosSwift 2.0 の Error Handling #yhios
Swift 2.0 の Error Handling #yhios
 
C#次世代非同期処理概観 - Task vs Reactive Extensions
C#次世代非同期処理概観 - Task vs Reactive ExtensionsC#次世代非同期処理概観 - Task vs Reactive Extensions
C#次世代非同期処理概観 - Task vs Reactive Extensions
 
BoostAsioで可読性を求めるのは間違っているだろうか
BoostAsioで可読性を求めるのは間違っているだろうかBoostAsioで可読性を求めるのは間違っているだろうか
BoostAsioで可読性を求めるのは間違っているだろうか
 
xv6から始めるSPIN入門
xv6から始めるSPIN入門xv6から始めるSPIN入門
xv6から始めるSPIN入門
 
規格書で読むC++11のスレッド
規格書で読むC++11のスレッド規格書で読むC++11のスレッド
規格書で読むC++11のスレッド
 
冬のLock free祭り safe
冬のLock free祭り safe冬のLock free祭り safe
冬のLock free祭り safe
 
メディア・アートII 第2回 openFrameworks基礎 配列、くりかえし、乱数 ベクトルを使用したアニメーション
メディア・アートII  第2回 openFrameworks基礎 配列、くりかえし、乱数 ベクトルを使用したアニメーションメディア・アートII  第2回 openFrameworks基礎 配列、くりかえし、乱数 ベクトルを使用したアニメーション
メディア・アートII 第2回 openFrameworks基礎 配列、くりかえし、乱数 ベクトルを使用したアニメーション
 
async/await のしくみ
async/await のしくみasync/await のしくみ
async/await のしくみ
 
Async design with Unity3D
Async design with Unity3DAsync design with Unity3D
Async design with Unity3D
 
Kanazawa.js.Next
Kanazawa.js.NextKanazawa.js.Next
Kanazawa.js.Next
 
Scalamacrosについて
ScalamacrosについてScalamacrosについて
Scalamacrosについて
 
Shibuya JVM Groovy 20150418
Shibuya JVM Groovy 20150418Shibuya JVM Groovy 20150418
Shibuya JVM Groovy 20150418
 
Go guide for Java programmer
Go guide for Java programmerGo guide for Java programmer
Go guide for Java programmer
 
Observable Everywhere - Rxの原則とUniRxにみるデータソースの見つけ方
Observable Everywhere  - Rxの原則とUniRxにみるデータソースの見つけ方Observable Everywhere  - Rxの原則とUniRxにみるデータソースの見つけ方
Observable Everywhere - Rxの原則とUniRxにみるデータソースの見つけ方
 
Reactive Extensions v2.0
Reactive Extensions v2.0Reactive Extensions v2.0
Reactive Extensions v2.0
 

Ähnlich wie ちょっと詳しくJavaScript 特別編【悪霊の神々】

第三回ありえる社内勉強会 「いわががのLombok」
第三回ありえる社内勉強会 「いわががのLombok」第三回ありえる社内勉強会 「いわががのLombok」
第三回ありえる社内勉強会 「いわががのLombok」yoshiaki iwanaga
 
Ecmascript2015とその周辺について
Ecmascript2015とその周辺についてEcmascript2015とその周辺について
Ecmascript2015とその周辺について豊明 尾古
 
Visual C++で使えるC++11
Visual C++で使えるC++11Visual C++で使えるC++11
Visual C++で使えるC++11nekko1119
 
Unit testing JavaScript with JUnit/JavaFX
Unit testing JavaScript with JUnit/JavaFXUnit testing JavaScript with JUnit/JavaFX
Unit testing JavaScript with JUnit/JavaFXShinya Mochida
 
GroovyなAndroidテスト #atest_hack
GroovyなAndroidテスト #atest_hackGroovyなAndroidテスト #atest_hack
GroovyなAndroidテスト #atest_hackTakahiro Yoshimura
 
ちょっと詳しくJavaScript 第2回【関数と引数】
ちょっと詳しくJavaScript 第2回【関数と引数】ちょっと詳しくJavaScript 第2回【関数と引数】
ちょっと詳しくJavaScript 第2回【関数と引数】株式会社ランチェスター
 
TypeScript 1.0 オーバービュー
TypeScript 1.0 オーバービューTypeScript 1.0 オーバービュー
TypeScript 1.0 オーバービューAkira Inoue
 
JavaのGenericsとは?
JavaのGenericsとは?JavaのGenericsとは?
JavaのGenericsとは?Kenji Nakamura
 
ECMAScript6による関数型プログラミング
ECMAScript6による関数型プログラミングECMAScript6による関数型プログラミング
ECMAScript6による関数型プログラミングTanUkkii
 
Inside frogc in Dart
Inside frogc in DartInside frogc in Dart
Inside frogc in DartGoro Fuji
 
絶対落ちないアプリの作り方
絶対落ちないアプリの作り方絶対落ちないアプリの作り方
絶対落ちないアプリの作り方Fumihiko Shiroyama
 
Scalaで型クラス入門
Scalaで型クラス入門Scalaで型クラス入門
Scalaで型クラス入門Makoto Fukuhara
 
20090121 J QueryからはじめるJava Script~初級編~
20090121 J QueryからはじめるJava Script~初級編~20090121 J QueryからはじめるJava Script~初級編~
20090121 J QueryからはじめるJava Script~初級編~Hiromu Shioya
 
おいしいFragment #antama_ws
おいしいFragment #antama_wsおいしいFragment #antama_ws
おいしいFragment #antama_wsTakahiro Yoshimura
 
Flutterを体験してみませんか
Flutterを体験してみませんかFlutterを体験してみませんか
Flutterを体験してみませんかcch-robo
 

Ähnlich wie ちょっと詳しくJavaScript 特別編【悪霊の神々】 (20)

第三回ありえる社内勉強会 「いわががのLombok」
第三回ありえる社内勉強会 「いわががのLombok」第三回ありえる社内勉強会 「いわががのLombok」
第三回ありえる社内勉強会 「いわががのLombok」
 
Ecmascript2015とその周辺について
Ecmascript2015とその周辺についてEcmascript2015とその周辺について
Ecmascript2015とその周辺について
 
Visual C++で使えるC++11
Visual C++で使えるC++11Visual C++で使えるC++11
Visual C++で使えるC++11
 
ちょっと詳しくJavaScript 第3回【prototype】
ちょっと詳しくJavaScript 第3回【prototype】ちょっと詳しくJavaScript 第3回【prototype】
ちょっと詳しくJavaScript 第3回【prototype】
 
Unit testing JavaScript with JUnit/JavaFX
Unit testing JavaScript with JUnit/JavaFXUnit testing JavaScript with JUnit/JavaFX
Unit testing JavaScript with JUnit/JavaFX
 
GroovyなAndroidテスト #atest_hack
GroovyなAndroidテスト #atest_hackGroovyなAndroidテスト #atest_hack
GroovyなAndroidテスト #atest_hack
 
ちょっと詳しくJavaScript 第2回【関数と引数】
ちょっと詳しくJavaScript 第2回【関数と引数】ちょっと詳しくJavaScript 第2回【関数と引数】
ちょっと詳しくJavaScript 第2回【関数と引数】
 
20141129-dotNet2015
20141129-dotNet201520141129-dotNet2015
20141129-dotNet2015
 
JavaScript入門
JavaScript入門JavaScript入門
JavaScript入門
 
Testman
TestmanTestman
Testman
 
TypeScript 1.0 オーバービュー
TypeScript 1.0 オーバービューTypeScript 1.0 オーバービュー
TypeScript 1.0 オーバービュー
 
JavaのGenericsとは?
JavaのGenericsとは?JavaのGenericsとは?
JavaのGenericsとは?
 
Ajax 応用
Ajax 応用Ajax 応用
Ajax 応用
 
ECMAScript6による関数型プログラミング
ECMAScript6による関数型プログラミングECMAScript6による関数型プログラミング
ECMAScript6による関数型プログラミング
 
Inside frogc in Dart
Inside frogc in DartInside frogc in Dart
Inside frogc in Dart
 
絶対落ちないアプリの作り方
絶対落ちないアプリの作り方絶対落ちないアプリの作り方
絶対落ちないアプリの作り方
 
Scalaで型クラス入門
Scalaで型クラス入門Scalaで型クラス入門
Scalaで型クラス入門
 
20090121 J QueryからはじめるJava Script~初級編~
20090121 J QueryからはじめるJava Script~初級編~20090121 J QueryからはじめるJava Script~初級編~
20090121 J QueryからはじめるJava Script~初級編~
 
おいしいFragment #antama_ws
おいしいFragment #antama_wsおいしいFragment #antama_ws
おいしいFragment #antama_ws
 
Flutterを体験してみませんか
Flutterを体験してみませんかFlutterを体験してみませんか
Flutterを体験してみませんか
 

Mehr von 株式会社ランチェスター

【Web esSense】これぐらいは知っておきたい景表法の基礎知識
【Web esSense】これぐらいは知っておきたい景表法の基礎知識【Web esSense】これぐらいは知っておきたい景表法の基礎知識
【Web esSense】これぐらいは知っておきたい景表法の基礎知識株式会社ランチェスター
 
【web esSense】やりなおしのアクセス解析ツール学習~主にGoogle Analytics~
【web esSense】やりなおしのアクセス解析ツール学習~主にGoogle Analytics~【web esSense】やりなおしのアクセス解析ツール学習~主にGoogle Analytics~
【web esSense】やりなおしのアクセス解析ツール学習~主にGoogle Analytics~株式会社ランチェスター
 
【らぼ★ろぐ】Web情報セキュリティ入門(OWASPのご紹介)
【らぼ★ろぐ】Web情報セキュリティ入門(OWASPのご紹介)【らぼ★ろぐ】Web情報セキュリティ入門(OWASPのご紹介)
【らぼ★ろぐ】Web情報セキュリティ入門(OWASPのご紹介)株式会社ランチェスター
 
【書籍紹介】こころを動かすマーケティング
【書籍紹介】こころを動かすマーケティング【書籍紹介】こころを動かすマーケティング
【書籍紹介】こころを動かすマーケティング株式会社ランチェスター
 
【らぼ★ろぐ】VM上のsendmailから外部へのメールを遮断したい!!
【らぼ★ろぐ】VM上のsendmailから外部へのメールを遮断したい!!【らぼ★ろぐ】VM上のsendmailから外部へのメールを遮断したい!!
【らぼ★ろぐ】VM上のsendmailから外部へのメールを遮断したい!!株式会社ランチェスター
 
【書籍紹介】ノンプログラマのためのJavaScript
【書籍紹介】ノンプログラマのためのJavaScript【書籍紹介】ノンプログラマのためのJavaScript
【書籍紹介】ノンプログラマのためのJavaScript株式会社ランチェスター
 

Mehr von 株式会社ランチェスター (20)

【Web esSense】これぐらいは知っておきたい景表法の基礎知識
【Web esSense】これぐらいは知っておきたい景表法の基礎知識【Web esSense】これぐらいは知っておきたい景表法の基礎知識
【Web esSense】これぐらいは知っておきたい景表法の基礎知識
 
【書籍紹介】未来の働き方を考えよう
【書籍紹介】未来の働き方を考えよう【書籍紹介】未来の働き方を考えよう
【書籍紹介】未来の働き方を考えよう
 
【書籍紹介】型システム入門
【書籍紹介】型システム入門【書籍紹介】型システム入門
【書籍紹介】型システム入門
 
【web esSense】やりなおしのアクセス解析ツール学習~主にGoogle Analytics~
【web esSense】やりなおしのアクセス解析ツール学習~主にGoogle Analytics~【web esSense】やりなおしのアクセス解析ツール学習~主にGoogle Analytics~
【web esSense】やりなおしのアクセス解析ツール学習~主にGoogle Analytics~
 
【らぼ★ろぐ】jPlayerの紹介
【らぼ★ろぐ】jPlayerの紹介【らぼ★ろぐ】jPlayerの紹介
【らぼ★ろぐ】jPlayerの紹介
 
【書籍紹介】統計学が最強の学問である
【書籍紹介】統計学が最強の学問である【書籍紹介】統計学が最強の学問である
【書籍紹介】統計学が最強の学問である
 
【書籍紹介】伝え方が9割
【書籍紹介】伝え方が9割【書籍紹介】伝え方が9割
【書籍紹介】伝え方が9割
 
【らぼ★ろぐ】Web情報セキュリティ入門(OWASPのご紹介)
【らぼ★ろぐ】Web情報セキュリティ入門(OWASPのご紹介)【らぼ★ろぐ】Web情報セキュリティ入門(OWASPのご紹介)
【らぼ★ろぐ】Web情報セキュリティ入門(OWASPのご紹介)
 
【書籍紹介】こころを動かすマーケティング
【書籍紹介】こころを動かすマーケティング【書籍紹介】こころを動かすマーケティング
【書籍紹介】こころを動かすマーケティング
 
【Web es sense】MultipeerConnectivityについて
【Web es sense】MultipeerConnectivityについて【Web es sense】MultipeerConnectivityについて
【Web es sense】MultipeerConnectivityについて
 
【書籍紹介】勝ち続ける意志力
【書籍紹介】勝ち続ける意志力【書籍紹介】勝ち続ける意志力
【書籍紹介】勝ち続ける意志力
 
【書籍紹介】ドメイン駆動設計
【書籍紹介】ドメイン駆動設計【書籍紹介】ドメイン駆動設計
【書籍紹介】ドメイン駆動設計
 
【Web essense】KPIはじめました
【Web essense】KPIはじめました【Web essense】KPIはじめました
【Web essense】KPIはじめました
 
【らぼ★ろぐ】VM上のsendmailから外部へのメールを遮断したい!!
【らぼ★ろぐ】VM上のsendmailから外部へのメールを遮断したい!!【らぼ★ろぐ】VM上のsendmailから外部へのメールを遮断したい!!
【らぼ★ろぐ】VM上のsendmailから外部へのメールを遮断したい!!
 
【書籍紹介】ノンプログラマのためのJavaScript
【書籍紹介】ノンプログラマのためのJavaScript【書籍紹介】ノンプログラマのためのJavaScript
【書籍紹介】ノンプログラマのためのJavaScript
 
【書籍紹介】ゆるす力
【書籍紹介】ゆるす力【書籍紹介】ゆるす力
【書籍紹介】ゆるす力
 
【Web esSense】KPIって何だ??
【Web esSense】KPIって何だ??【Web esSense】KPIって何だ??
【Web esSense】KPIって何だ??
 
【書籍紹介】よくわかるJavaScriptの教科書
【書籍紹介】よくわかるJavaScriptの教科書【書籍紹介】よくわかるJavaScriptの教科書
【書籍紹介】よくわかるJavaScriptの教科書
 
Passbookとは_株式会社ランチェスター
Passbookとは_株式会社ランチェスターPassbookとは_株式会社ランチェスター
Passbookとは_株式会社ランチェスター
 
エンジニア的pinterest考察
エンジニア的pinterest考察エンジニア的pinterest考察
エンジニア的pinterest考察
 

Kürzlich hochgeladen

業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 

Kürzlich hochgeladen (9)

業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 

ちょっと詳しくJavaScript 特別編【悪霊の神々】