Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Drupalでアプリケーション開発を始めよう #devboost / Get started ...

Drupalでアプリケーション開発を始めよう #devboost / Get started developing applications with Drupal

More Decks by アクイアジャパン Acquia Japan

Other Decks in Programming

Transcript

  1. • 1991೥10݄29೔ ੜ·Ε • ಠཱܥιϑτ΢ΣΞ։ൃձࣾͰιϑτ΢ΣΞΤϯδχΞ • ͷͪΤόϯδΣϦετͱͯ͠ϓϩμΫτͷܒ໤׆ಈ • 2019೥8݄ ΞΫΠΞʹδϣΠϯ

    • ΢ΣϒαΠτͷίϯςϯπͷ
 ٕज़຋༁΍ϩʔΧϥΠζΛ୲౰ Ruby / Rails / Web API / Docker / AWS ϥʔϝϯ / εΠʔπ / Ωϟϯϓ൧ / ొࢁ ͰDrupalهࣄ࿈ࡌதʂ Profile ΞΫΠΞδϟύϯ ؙࢁͻ͔Δ ςΫχΧϧτϥϯεϨʔλʔ
  2. Έͳ͞ΜͷDrupalͷҹ৅Λڭ͍͑ͯͩ͘͞ – ੲฉ͍ͨ͜ͱ͕͋Γ·͢ – ॳΊͯฉ͖·ͨ͠ – ݹ͍ҹ৅͕͋Γ·͢ – WordPressͱԿ͕ҧ͏ΜͰ͔͢ʁ –

    ւ֎Ͱ͸ଟ͍ͱฉ͖·͕͢ɺ
 ೔ຊͰ͸ར༻ऀ͕গͳ͍ͷͰ͸ʁ – ӳޠ͹͔ΓͰ೔ຊޠͷࢿྉ͕গͳ͍
  3. Έͳ͞ΜͷDrupalͷҹ৅Λڭ͍͑ͯͩ͘͞ – ੲฉ͍ͨ͜ͱ͕͋Γ·͢ – ॳΊͯฉ͖·ͨ͠ – ݹ͍ҹ৅͕͋Γ·͢ – WordPressͱԿ͕ҧ͏ΜͰ͔͢ʁ –

    ւ֎Ͱ͸ଟ͍ͱฉ͖·͕͢ɺ
 ೔ຊͰ͸ར༻ऀ͕গͳ͍ͷͰ͸ʁ – ӳޠ͹͔ΓͰ೔ຊޠͷࢿྉ͕গͳ͍ ຊηογϣϯ ର৅ऀ
  4. • 2001೥ʹ஀ੜͨ͠PHP੡ͷΦʔϓϯιʔεCMS • σδλϧମݧΛఏڙ͢ΔͨΊͷϓϥοτϑΥʔϜ • ݸਓϒϩά͔Βେن໛ͳWebαʔϏε·Ͱ
 ෯޿͘ར༻͞ΕΔ 100ສ+ WebαΠτͰՔ ಇ

    46,000ਓ+
 Drupal։ൃऀ 8,000ਓ+ ίϯτϦϏϡʔ λʔ 130ສਓ+ ίϛϡχςΟ 51%+
 ੒௕཰(લ೥ൺ) ಛ௃ • ݎ࿚ͳηΩϡϦςΟ • ύϑΥʔϚϯεͱ
 εέʔϥϏϦςΟ • ଟݴޠରԠ • ίϯςϯπ࡞੒ • Content as a ServiceʢCaaSʣ
  5. DrupalͷγεςϜ ݱࡏͷ࠷৽όʔδϣϯ Drupal 9.1.xʢ2020೥12݄ݱࡏʣ 
 ελοΫ - PHP - MySQL

    - Apache, Nginx ϥΠϒϥϦ Drupal 8͔Β Symfony 
 ϑϨʔϜϫʔΫ͕࠾༻ - Composer - Twig - PHPUnit
  6. ୭͕࡞ͬͨͷ͔ υϦεɾόΠλϧτʢDries Buytartʣ - ΞΫΠΞͷڞಉઃཱऀ ݉ CTO - ݱࡏ΋DrupalϓϩδΣΫτϦʔυΛ຿Ίɺ
 ੵۃతʹ׆ಈத


    - ΞΫΠΞͱDrupalͷؔ܎ - DrupalͷPaaSͱαϙʔτΛఏڙ - Drupal։ൃʹίϛοτ͢ΔΤϯδχΞΛ࠾༻ - Drupal 8ͷ্Ґ20ਓͷߩݙऀͷ͏ͪ - 5ਓ͕ΞΫΠΞʹॴଐ - ੈքͰ།ҰɺDrupalೝఆࢼݧΛఏڙ - ...etc
  7. ͙͢ʹ࢖͑Δɿ࠷ॳ͔Βؚ·ΕΔඪ४ػೳʢίΞػೳʣ – ؅ཧUI – ίϯςϯπͷ࡞੒ɺ؅ཧ – ϑΟʔϧυ؅ཧ – Ϣʔβʔ࡞੒ɺݖݶ؅ཧ –

    Views(ΫΤϦϏϧμʔ) – ଟݴޠ – Ωϟογϯά – ঝೝϫʔΫϑϩʔ – ߏ੒؅ཧπʔϧ – Rest API – ...etc
  8. Drupalͷσʔλ - ݩʑɺBBSʢܝࣔ൘ʣ γεςϜ͔Βੜ·ΕͨCMS - ίϯςϯπλΠϓʢχϡʔεهࣄɺళฮ৘ใͳͲͷίϯςϯπͷΧςΰϦʣ
 ͱϑΟʔϧυΛࣗ༝ʹઃఆ - ίϯςϯπͷ࠶ར༻ੑ -

    ϒϩοΫ - ߴੑೳΫΤϦϏϧμʔ - DrupalͷΤϯςΟςΟ - ϊʔυɺϢʔβʔɺϑΝΠϧɺλΫιϊϛʔ...etc - ಠࣗͰΤϯςΟςΟλΠϓΛఆٛՄೳ - Rest APIͷඪ४૷උ
  9. ଍Γͳ͍ػೳ͚ͩίʔσΟϯά 1. GUIͰαΠτߏங
 ଍Γͳ͍ػೳ͕͋Δʁ → No
 ↓ Yes 2. Drupal.org

    Ͱެ։͞Ε͍ͯΔ
 ϞδϡʔϧΛ୳͢ 4ສݸҎ্!
 ଍Γͳ͍ػೳ͕͋Δʁ → No
 ↓ Yes 3. ϞδϡʔϧΛࣗ࡞ ͢Ͱʹ͋Δ΋ͷΛ׆༻͠εϐʔσΟʔʹߏங DrupalΤίγεςϜΛ
 ϑϧ׆༻&อकੑ޲্
  10. Drupal 7 -> 8 ௧Έͷ൐͏Ξοϓσʔτ ΞʔΩςΫνϟΛ࡮৽͓͔ͨ͛͠Ͱɾɾ - Drupal 8Ͱଟ͘ͷػೳΛϦϦʔε -

    ϨΠΞ΢τϏϧμʔʗϝσΟΞ؅ཧʗComposerʗJSON:API
 ʗߏ੒؅ཧʗঝೝϫʔΫϑϩʔʗ...etc - 2015೥11݄ - Symfonyͷ࠾༻
 → ΄΅׬શͳ࡞Γ௚͠ - ·ͩDrupal 7͔Β৐Γ׵͑ΒΕͳ͍
  11. Drupal 9Ͱͷ৽͍͠ػೳ • ओཁͳґଘؔ܎ͷΞοϓσʔτ • Symfony 3.4 → 4.4 •

    Twig 1 → 2 • ͍͔ͭ͘ͷjQuery UI Componentsͷ࡟আ • PHPUnit 8 ͷαϙʔτ • ͦͷଞ ͍͔ͭ͘ͷΞοϓσʔτ
 (Doctrine, Diactoros, Zend/Laminas, etc.) Drupal 9 ͷγεςϜཁ݅ • PHP minimum 7.3 • MySQL minimum 5.7.8 • MariaDB minimum 10.2.7 • PostgreSQL minimum 10
 with pg_trgm extension • SQLite minimum 3.26 • Only Drush 10 supports Drupal 9 Drupal 8 -> 9 ௚ۙ10೥Ͱ࠷΋؆୯ͳΞοϓάϨʔυ
  12. Drupalͷ͜Ε͔Βᶄ Drupal 10 ʹ޲͚ͯͷऔΓ૊Έ͕ൃද - 2022೥6݄ϦϦʔε༧ఆ - 5ͭͷΠχγΞνϒ - Drupal

    10ͷ४උ - ͙͢ʹ࢖͑Δ؆୯ͳΤΫεϖϦΤϯε - ৽͍͠ϑϩϯτΤϯυςʔϚʢOliveroʣ - ηΩϡϦςΟϦϦʔεͷࣗಈߋ৽ - JSϝχϡʔίϯϙʔωϯτ https://dri.es/state-of-drupal-presentation-july-2020
  13. άϩʔόϧ Ϗδϣϯɿ
 ”ੈք࠷ߴͷσδλϧମݧΛ૑଄͢ΔΫϥ΢υϓϥοτϑΥʔϜΛఏ ڙ” ຊࣾɿถࠃϘετϯ ૑ۀɿ2007೥ ΦʔϓϯιʔεCMSͷDrupalΛ։ൃͨ͠ɺ Dries Buytaert͕૑ۀ ೔ຊΛؚΉ8Χࠃ

    15ڌ఺ɺࣾһɿ1,000໊ ސ٬ɿ4,000ࣾɺύʔτφʔɿ800ࣾ ձࣾ֓ཁ ©2019 Acquia Inc. — Confidential and Proprietary 33 ೔ຊ๏ਓ ॴࡏ஍ɿ౦ژ౎ौ୩۠ौ୩2-24-12
 ौ୩εΫϥϯϒϧεΫΤΞWeWork 39F ઃཱɿ2018೥10݄ ಋೖ࣮੷ɿେखॏ޻ۀϝʔΧʔɺΞύϨϧϝʔ Χʔɺେख੡ༀձࣾ ΞΫΠΞࣾʹ͍ͭͯ