SlideShare a Scribd company logo
1 of 36
Download to read offline
プロトタイプベースOOP
   ライブラリmix.js
  Web技術勉強会 2011/11/12
Ryuichi TANAKA(@mapserver2007)
mix.jsとは
• https://github.com/mapserver2007/mixjs
• プロトタイプベースオブジェクト指向プログラミ
  ングを支援するライブラリ
• 親子関係が持てる
• 簡単に継承(mix-in)できる
• IEでも動く
JavaScriptで継承はやりづらい
• 「JavaScript」「継承」とかで検索するとでてくる
  が、どれも微妙。
• A.prototype = new B();
  – ありがち
  – そもそも親子関係になってない
• jQuery.extend
  – プロパティを上書きするだけ
  – やっぱり親子関係になってない
継承は親子を作る
• 継承というからには親子関係が普通ある
• JavaScriptはそれをやるのがすごく大変
とにかく簡単に継承
• var obj = A.mix(B)
• これだけで継承(mix-in)が完了
• とにかく簡単
バグは収束した
• mix.jsベースでコードを書き直し中
• 動作問題なし
• バグはほぼ潰しきった(はず)
機能を簡単に説明
モジュールを定義する
• モジュールという単位でクラスに相当するも
  のを定義する
• モジュールを組み合わせて一つのオブジェク
  ト(インスタンスに相当)を作る
• mix-inした順番通りに親子関係が構築される
モジュールを定義する
Mixjs.module(“Iphone”, {
  name: function() {
     return “iPhone”;
  }
});
// Iphone.name();
モジュールを定義する
var namespace = {}:
Mixjs.module(“Iphone”, namespace, {
   name: function() {
     return “iPhone”;
   }
});
// namespace.Iphone.name();
モジュールをmix-inする
var obj = Iphone.mix(Feature);
var obj2 = Iphone.mix(Feature).mix(Telephone);
var obj3 = Iphone.mix(Feature, Telephone);
親にしかないメソッドにアクセス
var obj2 = Iphone.mix(Feature).mix(Telephone);
// Telephone#getType()にアクセスしたい
// Iphone, FeatureはgetType()を持っていない
obj2.getType(); // これでOKOK

IE以外ではプロトタイプチェーンで取得、IEでは
  mix-in時に親のメソッドを自身にコピーする
親にある同じ名前のメソッドにアクセ
       スしたい
var obj2 = Iphone.mix(Feature).mix(Telephone);
// name()はIphone, Feature, Telephone全員が
// もっている
obj2.name(); // Iphone#name()
obj2.parent.name(); // Feature#name()
obj2.parent.parent.name(); // Telephone#name()
あらかじめmix-in済みのモジュールを
       定義したい
• これまでのmix-inは外部mix-in
• 外部mix-inはモジュール定義後に動的にmix-
  inする
• モジュール定義時に親子関係が確定してい
  る場合は静的にmix-inするほうが自然
静的にmix-in(内部mix-in)
 Mixjs.module(“Iphone”, {
   include: Feature,
   name: function() {
      return “iPhone”;
   }
 });
静的にmix-in(内部多重継承)
  Mixjs.module(“Iphone”, {
    include: [Feature, Telephone],
    name: function() {
       return “iPhone”;
    }
  });
mix-in済みモジュールか判定
var obj = Iphone.mix(Feature);
obj.has(Iphone); // true
obj.has(Telephone); //false
自分自身の参照位置を基底に移動
Mixjs.module(“Feature”, {
    name: function() {
          // this.name()だと参照できない
          // this.baseを使うと参照位置を継承済みオブジェクトの最も子供の
          // 位置に移動させることができる
          this.base.name();
    }
});
Mixjs.module(“Iphone”, {
    include: Feature,
    name: function() {
          return “iphone”;
    }
});
Iphone.parent.name(); // iphone
同じモジュールはmix-inできない
• エラーにはならないが同じモジュールはmix-
  inできない
var obj = Iphone.mix(Iphone);
obj.hasOwnProperty(“parent”); // false
継承のルール
1.通常のmix-in

• M1 mix M2      M1 -> M2
• M1 mix M2 mix M3
     M1 -> M2 -> M3
2.多重継承

• M1 mix (M2, M3)
     M1 -> (M2->M3) # ()内でまずmix-in
       M1 -> (M2’)
           M1 -> M2-> M3
通常のmix-inのチェーンとはmix-in順が異なる
3.同じモジュールをmix-in

• T1 mix T1   T1
3.同じモジュールをmix-in

• T1 mix T1      T1
• T1 mix T2 mix T1    T1 -> T2
4.mix-in済みモジュールをmix-in
• T1 mix (T2 mix T1) mix T1
       T1 -> T2’ -> T1
        T1 -> T2’
          T1 -> T2 -> T1
T2’はT2ともT1とも等しくないためこ
  のようにmix-inされる
5.同じmix-in済みモジュールが複数
     ある場合のmix-in
T1 mix (T2 mix T1) mix (T2 mix T1)
       T1 -> T2’ -> T2’
        T1 -> T2’
         T1 -> T2 -> T1
T2’は2つあるので1つはmix-inさ
 れない
6.すべて異なるモジュールだが同じ
        mix-in順序が含まれる
T1 mix (T3 mix T2 mix T1) mix (T2 mix
  T1)
       T1 -> T3’ -> T2’
         T1 -> T3->T2->T1->T2->T1
          Cyclic Error
T2->T1が繰り返されていると循環参
  照エラーとなる。
パフォーマンス測定
前提条件
• 測定環境
 – Core2Duo P8700 2.53GHz
 – Mem 4GB
 – WindowsVista Ultimate SP2
• 実行環境
 – Chrome15.0.874.106 m
 – IE8
 – Firefox8
測定ツール
• benchmark.js
  – http://benchmarkjs.com/
• 実行プログラム
  – https://gist.github.com/1358167
測定結果
           include: [Test1, Test2, Test3]




                 include: [Test1, Test2]




                           include: Test1



                                                                                  IE8
(Test1.mix(Test2)).mix(Test3.mix(Test4))
                                                                                  Firefox
                                                                                  Chrome

          Test1.mix(Test2, Test3, Test4)




            Test1.mix(Test2).mix(Test3)




                        Test1.mix(Test2)



                                            0   0.2   0.4   0.6   0.8   1   1.2
Chrome
Pettern                                    ops/sec    msec
Test1.mix(Test2)                             55,646 0.017971
Test1.mix(Test2).mix(Test3)                   9,264 0.107945
Test1.mix(Test2, Test3, Test4)               13,588 0.073594
(Test1.mix(Test2)).mix(Test3.mix(Test4))     13,639 0.073319
include: Test1                               11,232 0.089031
include: [Test1, Test2]                       3,750 0.266667
include: [Test1, Test2, Test3]                2,374   0.42123
IE8
Pettern                                    ops/sec   msec
Test1.mix(Test2)                              7526 0.132873
Test1.mix(Test2).mix(Test3)                   1739 0.575043
Test1.mix(Test2, Test3, Test4)                3244 0.308261
(Test1.mix(Test2)).mix(Test3.mix(Test4))      2200 0.454545
include: Test1                                3009 0.332336
include: [Test1, Test2]                       1338 0.747384
include: [Test1, Test2, Test3]                 877 1.140251
Firefox
Pettern                                    ops/sec   msec
Test1.mix(Test2)                             19123 0.052293
Test1.mix(Test2).mix(Test3)                   6644 0.150512
Test1.mix(Test2, Test3, Test4)                6109 0.163693
(Test1.mix(Test2)).mix(Test3.mix(Test4))      6925 0.144404
include: Test1                                7437 0.134463
include: [Test1, Test2]                       3006 0.332668
include: [Test1, Test2, Test3]                2661 0.375799
結論
• Chromeで一番速い
 – まあまあ予想通り
• IEは突出して遅い
 – 予想通りだが内部実装が違うことも多少影響か
• includeによる内部mix-inは外部mix-inに比べ極
  端に遅い
 – 改善の余地あり
• mix-inチェーンより多重継承でまとめてmix-inす
  るほうが速い
 – 要原因調査
まとめ
• mix.jsのメリット
  – 親子関係を構築できる
  – 簡単
  – IEでも動く
  – 他ライブラリに依存しない
• 今後の予定
  – mix.jsでアプリを作る
  – パフォーマンス改善

More Related Content

Viewers also liked

Web技術勉強会 20110723
Web技術勉強会 20110723Web技術勉強会 20110723
Web技術勉強会 20110723龍一 田中
 
Web技術勉強会 20110611
Web技術勉強会 20110611Web技術勉強会 20110611
Web技術勉強会 20110611龍一 田中
 
Web技術勉強会 20120728
Web技術勉強会 20120728Web技術勉強会 20120728
Web技術勉強会 20120728龍一 田中
 
Web技術勉強会 第37回
Web技術勉強会 第37回Web技術勉強会 第37回
Web技術勉強会 第37回龍一 田中
 
Web技術勉強会 20130525 - Google Cloud Messaging入門
Web技術勉強会 20130525 - Google Cloud Messaging入門Web技術勉強会 20130525 - Google Cloud Messaging入門
Web技術勉強会 20130525 - Google Cloud Messaging入門龍一 田中
 
Presentatie socialmedia sessie bij Altrecht
Presentatie socialmedia sessie bij AltrechtPresentatie socialmedia sessie bij Altrecht
Presentatie socialmedia sessie bij AltrechtMartijn Hulst
 
Content is King/SocialMediaCampNYC-feb2011
Content is King/SocialMediaCampNYC-feb2011Content is King/SocialMediaCampNYC-feb2011
Content is King/SocialMediaCampNYC-feb2011Mardy Sitzer
 
@htkymtksユーザ会のご案内
@htkymtksユーザ会のご案内@htkymtksユーザ会のご案内
@htkymtksユーザ会のご案内Kenichi Takahashi
 
Powerpoint edited
Powerpoint editedPowerpoint edited
Powerpoint editedtracifiles
 
Nielsen social-media-report
Nielsen social-media-reportNielsen social-media-report
Nielsen social-media-reportDorrine Mendoza
 
Web技術勉強会 20120609
Web技術勉強会 20120609Web技術勉強会 20120609
Web技術勉強会 20120609龍一 田中
 
Web技術勉強会 20120114 - JenkinsでJava/PHP/Ruby/JavaScriptをビルドする
Web技術勉強会 20120114 - JenkinsでJava/PHP/Ruby/JavaScriptをビルドするWeb技術勉強会 20120114 - JenkinsでJava/PHP/Ruby/JavaScriptをビルドする
Web技術勉強会 20120114 - JenkinsでJava/PHP/Ruby/JavaScriptをビルドする龍一 田中
 
WebSocketでリアルタイム処理をする
WebSocketでリアルタイム処理をするWebSocketでリアルタイム処理をする
WebSocketでリアルタイム処理をする龍一 田中
 
WebSocketのキホン
WebSocketのキホンWebSocketのキホン
WebSocketのキホンYou_Kinjoh
 

Viewers also liked (16)

Web技術勉強会 20110723
Web技術勉強会 20110723Web技術勉強会 20110723
Web技術勉強会 20110723
 
Web技術勉強会 20110611
Web技術勉強会 20110611Web技術勉強会 20110611
Web技術勉強会 20110611
 
Web技術勉強会 20120728
Web技術勉強会 20120728Web技術勉強会 20120728
Web技術勉強会 20120728
 
Web技術勉強会 第37回
Web技術勉強会 第37回Web技術勉強会 第37回
Web技術勉強会 第37回
 
Web技術勉強会 20130525 - Google Cloud Messaging入門
Web技術勉強会 20130525 - Google Cloud Messaging入門Web技術勉強会 20130525 - Google Cloud Messaging入門
Web技術勉強会 20130525 - Google Cloud Messaging入門
 
Presentatie socialmedia sessie bij Altrecht
Presentatie socialmedia sessie bij AltrechtPresentatie socialmedia sessie bij Altrecht
Presentatie socialmedia sessie bij Altrecht
 
Content is King/SocialMediaCampNYC-feb2011
Content is King/SocialMediaCampNYC-feb2011Content is King/SocialMediaCampNYC-feb2011
Content is King/SocialMediaCampNYC-feb2011
 
@htkymtksユーザ会のご案内
@htkymtksユーザ会のご案内@htkymtksユーザ会のご案内
@htkymtksユーザ会のご案内
 
Tweet!tweet!
Tweet!tweet!Tweet!tweet!
Tweet!tweet!
 
Twitter101
Twitter101Twitter101
Twitter101
 
Powerpoint edited
Powerpoint editedPowerpoint edited
Powerpoint edited
 
Nielsen social-media-report
Nielsen social-media-reportNielsen social-media-report
Nielsen social-media-report
 
Web技術勉強会 20120609
Web技術勉強会 20120609Web技術勉強会 20120609
Web技術勉強会 20120609
 
Web技術勉強会 20120114 - JenkinsでJava/PHP/Ruby/JavaScriptをビルドする
Web技術勉強会 20120114 - JenkinsでJava/PHP/Ruby/JavaScriptをビルドするWeb技術勉強会 20120114 - JenkinsでJava/PHP/Ruby/JavaScriptをビルドする
Web技術勉強会 20120114 - JenkinsでJava/PHP/Ruby/JavaScriptをビルドする
 
WebSocketでリアルタイム処理をする
WebSocketでリアルタイム処理をするWebSocketでリアルタイム処理をする
WebSocketでリアルタイム処理をする
 
WebSocketのキホン
WebSocketのキホンWebSocketのキホン
WebSocketのキホン
 

Similar to Web技術勉強会 20111112

テスティングフレームワークに入門してみた - Swift編
テスティングフレームワークに入門してみた - Swift編テスティングフレームワークに入門してみた - Swift編
テスティングフレームワークに入門してみた - Swift編Hisakuni Fujimoto
 
Java scriptによるテスト駆動開発
Java scriptによるテスト駆動開発Java scriptによるテスト駆動開発
Java scriptによるテスト駆動開発Hidekazu Nakamura
 
Java scriptによるテスト駆動開発
Java scriptによるテスト駆動開発Java scriptによるテスト駆動開発
Java scriptによるテスト駆動開発Hidekazu Nakamura
 
タダで始めるテストファースト入門 ~ C# Express + NUnit
タダで始めるテストファースト入門 ~ C# Express + NUnitタダで始めるテストファースト入門 ~ C# Express + NUnit
タダで始めるテストファースト入門 ~ C# Express + NUnitYasuhiko Yamamoto
 
第4回勉強会 単体テストのすすめ
第4回勉強会 単体テストのすすめ第4回勉強会 単体テストのすすめ
第4回勉強会 単体テストのすすめhakoika-itwg
 
はこだてIKA 第4回勉強会 単体テスト
はこだてIKA 第4回勉強会 単体テストはこだてIKA 第4回勉強会 単体テスト
はこだてIKA 第4回勉強会 単体テストSeiji KOMATSU
 
究極のバッチフレームワーク(予定)
究極のバッチフレームワーク(予定)究極のバッチフレームワーク(予定)
究極のバッチフレームワーク(予定)fumoto kazuhiro
 
C# から java へのプログラム移植で体験したtddの効果は?
C# から java へのプログラム移植で体験したtddの効果は?C# から java へのプログラム移植で体験したtddの効果は?
C# から java へのプログラム移植で体験したtddの効果は?Shinichi Hirauchi
 
Unit testで定時帰宅!
Unit testで定時帰宅!Unit testで定時帰宅!
Unit testで定時帰宅!Funato Takashi
 
関西Php勉強会のlimeの話
関西Php勉強会のlimeの話関西Php勉強会のlimeの話
関西Php勉強会のlimeの話Hisateru Tanaka
 
Ruby初級者向けレッスン 第46回 ─── Test::Unit
Ruby初級者向けレッスン 第46回 ─── Test::UnitRuby初級者向けレッスン 第46回 ─── Test::Unit
Ruby初級者向けレッスン 第46回 ─── Test::Unithigaki
 
Tokyor14 - R言語でユニットテスト
Tokyor14 - R言語でユニットテストTokyor14 - R言語でユニットテスト
Tokyor14 - R言語でユニットテストYohei Sato
 
xUnit Test Patterns - Chapter16
xUnit Test Patterns - Chapter16xUnit Test Patterns - Chapter16
xUnit Test Patterns - Chapter16Takuto Wada
 
大規模な負荷でもドキドキしない為のJava EE
大規模な負荷でもドキドキしない為のJava EE大規模な負荷でもドキドキしない為のJava EE
大規模な負荷でもドキドキしない為のJava EETaiichilow Nagase
 
TDD勉強会キックオフ for Java
TDD勉強会キックオフ for JavaTDD勉強会キックオフ for Java
TDD勉強会キックオフ for JavaYuta Kawadai
 
ありえるえりあ勉強会@五反田~テスト編~ Part3
ありえるえりあ勉強会@五反田~テスト編~ Part3ありえるえりあ勉強会@五反田~テスト編~ Part3
ありえるえりあ勉強会@五反田~テスト編~ Part3Tomoyuki Sato
 

Similar to Web技術勉強会 20111112 (20)

Spock's world
Spock's worldSpock's world
Spock's world
 
Beyond JUnit3
Beyond JUnit3Beyond JUnit3
Beyond JUnit3
 
テスティングフレームワークに入門してみた - Swift編
テスティングフレームワークに入門してみた - Swift編テスティングフレームワークに入門してみた - Swift編
テスティングフレームワークに入門してみた - Swift編
 
FlexUnit4とMockitoFlex
FlexUnit4とMockitoFlexFlexUnit4とMockitoFlex
FlexUnit4とMockitoFlex
 
Java scriptによるテスト駆動開発
Java scriptによるテスト駆動開発Java scriptによるテスト駆動開発
Java scriptによるテスト駆動開発
 
Java scriptによるテスト駆動開発
Java scriptによるテスト駆動開発Java scriptによるテスト駆動開発
Java scriptによるテスト駆動開発
 
タダで始めるテストファースト入門 ~ C# Express + NUnit
タダで始めるテストファースト入門 ~ C# Express + NUnitタダで始めるテストファースト入門 ~ C# Express + NUnit
タダで始めるテストファースト入門 ~ C# Express + NUnit
 
第4回勉強会 単体テストのすすめ
第4回勉強会 単体テストのすすめ第4回勉強会 単体テストのすすめ
第4回勉強会 単体テストのすすめ
 
はこだてIKA 第4回勉強会 単体テスト
はこだてIKA 第4回勉強会 単体テストはこだてIKA 第4回勉強会 単体テスト
はこだてIKA 第4回勉強会 単体テスト
 
究極のバッチフレームワーク(予定)
究極のバッチフレームワーク(予定)究極のバッチフレームワーク(予定)
究極のバッチフレームワーク(予定)
 
C# から java へのプログラム移植で体験したtddの効果は?
C# から java へのプログラム移植で体験したtddの効果は?C# から java へのプログラム移植で体験したtddの効果は?
C# から java へのプログラム移植で体験したtddの効果は?
 
Unit testで定時帰宅!
Unit testで定時帰宅!Unit testで定時帰宅!
Unit testで定時帰宅!
 
関西Php勉強会のlimeの話
関西Php勉強会のlimeの話関西Php勉強会のlimeの話
関西Php勉強会のlimeの話
 
Ruby初級者向けレッスン 第46回 ─── Test::Unit
Ruby初級者向けレッスン 第46回 ─── Test::UnitRuby初級者向けレッスン 第46回 ─── Test::Unit
Ruby初級者向けレッスン 第46回 ─── Test::Unit
 
Tokyor14 - R言語でユニットテスト
Tokyor14 - R言語でユニットテストTokyor14 - R言語でユニットテスト
Tokyor14 - R言語でユニットテスト
 
xUnit Test Patterns - Chapter16
xUnit Test Patterns - Chapter16xUnit Test Patterns - Chapter16
xUnit Test Patterns - Chapter16
 
大規模な負荷でもドキドキしない為のJava EE
大規模な負荷でもドキドキしない為のJava EE大規模な負荷でもドキドキしない為のJava EE
大規模な負荷でもドキドキしない為のJava EE
 
TDD勉強会キックオフ for Java
TDD勉強会キックオフ for JavaTDD勉強会キックオフ for Java
TDD勉強会キックオフ for Java
 
ありえるえりあ勉強会@五反田~テスト編~ Part3
ありえるえりあ勉強会@五反田~テスト編~ Part3ありえるえりあ勉強会@五反田~テスト編~ Part3
ありえるえりあ勉強会@五反田~テスト編~ Part3
 
CLRH_120414_WFTDD
CLRH_120414_WFTDDCLRH_120414_WFTDD
CLRH_120414_WFTDD
 

More from 龍一 田中

Web技術勉強会 20110528
Web技術勉強会 20110528Web技術勉強会 20110528
Web技術勉強会 20110528龍一 田中
 
Web技術勉強会 20110514
Web技術勉強会 20110514Web技術勉強会 20110514
Web技術勉強会 20110514龍一 田中
 
Web技術勉強会 20100925
Web技術勉強会 20100925Web技術勉強会 20100925
Web技術勉強会 20100925龍一 田中
 
Web技術勉強会 20100424
Web技術勉強会 20100424Web技術勉強会 20100424
Web技術勉強会 20100424龍一 田中
 
Web技術勉強会 第38回
Web技術勉強会 第38回Web技術勉強会 第38回
Web技術勉強会 第38回龍一 田中
 
Web技術勉強会 第34回
Web技術勉強会 第34回Web技術勉強会 第34回
Web技術勉強会 第34回龍一 田中
 
Web技術勉強会 第33回
Web技術勉強会 第33回Web技術勉強会 第33回
Web技術勉強会 第33回龍一 田中
 
Web技術勉強会 第31回
Web技術勉強会 第31回Web技術勉強会 第31回
Web技術勉強会 第31回龍一 田中
 
Web技術勉強会 第30回
Web技術勉強会 第30回Web技術勉強会 第30回
Web技術勉強会 第30回龍一 田中
 
Web技術勉強会 第29回
Web技術勉強会 第29回Web技術勉強会 第29回
Web技術勉強会 第29回龍一 田中
 
Web技術勉強会 第28回
Web技術勉強会 第28回Web技術勉強会 第28回
Web技術勉強会 第28回龍一 田中
 
Web技術勉強会 第26回
Web技術勉強会 第26回Web技術勉強会 第26回
Web技術勉強会 第26回龍一 田中
 
Web技術勉強会 第25回
Web技術勉強会 第25回Web技術勉強会 第25回
Web技術勉強会 第25回龍一 田中
 
Web技術勉強会23回目
Web技術勉強会23回目Web技術勉強会23回目
Web技術勉強会23回目龍一 田中
 
Web技術勉強会 第19回
Web技術勉強会 第19回Web技術勉強会 第19回
Web技術勉強会 第19回龍一 田中
 
Web技術勉強会 第18回
Web技術勉強会 第18回Web技術勉強会 第18回
Web技術勉強会 第18回龍一 田中
 
Web技術勉強会12回目
Web技術勉強会12回目Web技術勉強会12回目
Web技術勉強会12回目龍一 田中
 
Web技術勉強会11回目
Web技術勉強会11回目Web技術勉強会11回目
Web技術勉強会11回目龍一 田中
 
Web技術勉強会10回目(Slideshare用)
Web技術勉強会10回目(Slideshare用)Web技術勉強会10回目(Slideshare用)
Web技術勉強会10回目(Slideshare用)龍一 田中
 
Web技術勉強会9回目2(Slideshare用)
Web技術勉強会9回目2(Slideshare用)Web技術勉強会9回目2(Slideshare用)
Web技術勉強会9回目2(Slideshare用)龍一 田中
 

More from 龍一 田中 (20)

Web技術勉強会 20110528
Web技術勉強会 20110528Web技術勉強会 20110528
Web技術勉強会 20110528
 
Web技術勉強会 20110514
Web技術勉強会 20110514Web技術勉強会 20110514
Web技術勉強会 20110514
 
Web技術勉強会 20100925
Web技術勉強会 20100925Web技術勉強会 20100925
Web技術勉強会 20100925
 
Web技術勉強会 20100424
Web技術勉強会 20100424Web技術勉強会 20100424
Web技術勉強会 20100424
 
Web技術勉強会 第38回
Web技術勉強会 第38回Web技術勉強会 第38回
Web技術勉強会 第38回
 
Web技術勉強会 第34回
Web技術勉強会 第34回Web技術勉強会 第34回
Web技術勉強会 第34回
 
Web技術勉強会 第33回
Web技術勉強会 第33回Web技術勉強会 第33回
Web技術勉強会 第33回
 
Web技術勉強会 第31回
Web技術勉強会 第31回Web技術勉強会 第31回
Web技術勉強会 第31回
 
Web技術勉強会 第30回
Web技術勉強会 第30回Web技術勉強会 第30回
Web技術勉強会 第30回
 
Web技術勉強会 第29回
Web技術勉強会 第29回Web技術勉強会 第29回
Web技術勉強会 第29回
 
Web技術勉強会 第28回
Web技術勉強会 第28回Web技術勉強会 第28回
Web技術勉強会 第28回
 
Web技術勉強会 第26回
Web技術勉強会 第26回Web技術勉強会 第26回
Web技術勉強会 第26回
 
Web技術勉強会 第25回
Web技術勉強会 第25回Web技術勉強会 第25回
Web技術勉強会 第25回
 
Web技術勉強会23回目
Web技術勉強会23回目Web技術勉強会23回目
Web技術勉強会23回目
 
Web技術勉強会 第19回
Web技術勉強会 第19回Web技術勉強会 第19回
Web技術勉強会 第19回
 
Web技術勉強会 第18回
Web技術勉強会 第18回Web技術勉強会 第18回
Web技術勉強会 第18回
 
Web技術勉強会12回目
Web技術勉強会12回目Web技術勉強会12回目
Web技術勉強会12回目
 
Web技術勉強会11回目
Web技術勉強会11回目Web技術勉強会11回目
Web技術勉強会11回目
 
Web技術勉強会10回目(Slideshare用)
Web技術勉強会10回目(Slideshare用)Web技術勉強会10回目(Slideshare用)
Web技術勉強会10回目(Slideshare用)
 
Web技術勉強会9回目2(Slideshare用)
Web技術勉強会9回目2(Slideshare用)Web技術勉強会9回目2(Slideshare用)
Web技術勉強会9回目2(Slideshare用)
 

Recently uploaded

新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxAtomu Hidaka
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directoryosamut
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdffurutsuka
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000Shota Ito
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 

Recently uploaded (9)

新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdf
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
 

Web技術勉強会 20111112