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

PHP未経験者を育てる独自フレームワークの作り方

Takayuki
February 11, 2020

 PHP未経験者を育てる独自フレームワークの作り方

弊社、株式会社Re:Buildは現在、沖縄拠点で全社員で7人。エンジニアインターン1人。そのうち正社員でエンジニアが6人いますが、ほぼ全員Web開発初心者の状態で入社しました。
また、大学生インターンや若手Web開発初心者の採用も積極的に行ってきました。採用後は7人という少人数の会社ながらも3ヶ月の研修カリキュラムをみっちり行って頂き、Laravelで実務開発するまでサポートしてきました。実際に昨年の1月にWeb開発初心者で入社した方は3ヶ月の研修を経て、今では設計から開発、Laravel、Vue.jsでのSPAのWebアプリ開発までこなすまで成長してくれています。

Takayuki

February 11, 2020
Tweet

More Decks by Takayuki

Other Decks in Programming

Transcript

  1. Copyright Re:Build.inc All Rights Reserved. ࣗݾ঺հ 1 ◆໊લ ླ໦ ޹೭(Suzuki

    Takayuki) ※ಉ੏ಉ໊ଟͯ͘ࠔͬͯ·͢ɻɻɻ ◆ࣗݾ঺հ ɾ1990೥ɺਆಸ઒ݝੜ·Εɻ ɾࣾձਓʹͳ͔ͬͯΒɺϓϩάϥϛϯάΛ࢝ΊΔɻ ɾ2015೥ʹϑϧεϐʔυʹೖࣾ͠ɺ2017೥ʹಠཱɻ ɾϑϦʔϥϯεͰϦϞʔτϫʔΫΛ൒೥΄Ͳ΍ͬͨޙʹԭೄͰىۀ ◆झຯ ίεϓϨɺԻָϥΠϒɺϚϥιϯେձʹग़Δɺ໺ٿ؍ઓ ◆εΩϧ ɾPHP, Symfony2,CakePHP3,Laravel6 ɾJavaScript, backbone.js,Angular4,Vue.js,Nuxt.js BDD(Ϗʔνۦಈ։ൃ)
  2. Copyright Re:Build.inc All Rights Reserved. ձࣾ঺հ 1 ◆ձ໊ࣾ גࣜձࣾRe:Build ◆ॅॴ

    ԭೄݝಹ೼ࢢٱໜ஍2-2-2 λΠϜεϏϧ ◆ࣄۀ಺༰ ɾࣗࣾWEBαʔϏεͷاըɾ։ൃɻ ɾडୗ։ൃ ◆ࣾһ 7໊ ◆ΤϯδχΞͷಇ͖ํ ϦϞʔτϫʔΫՄೳͳࣗ༝ͳಇ͖ํΛਪ঑ͯ͠·͢ʂ
  3. Copyright Re:Build.inc All Rights Reserved. 7 ɾαʔϏε໊ Tadoru
 https://tadoru.work/
 


    ɾγεςϜ֓ཁ ΤϯδχΞಛԽܕͷ ϦϑΝϥϧ Ϋϥ΢υιʔγϯά 1 ձࣾ঺հ
  4. ฐࣾͰͷ-BSBWFM࣮຿·Ͱͷ4UFQ εΫʔϧ΍ಠֶͰHTMLɺ CSSɺJS͘Β͍͸΍͓ͬͯ ͍ͯ΋Β͏ ݚमᶃ ੜͷPHPͰಠࣗ ϑϨʔϜϫʔΫͰϒϩά੍࡞ ݚमᶄ LaravelͰϒϩά੍࡞ ݚमᶅ

    LaravelͰ࣮຿ 200࣌ؒ 150࣌ؒ~300࣌ؒ (2ϲ݄ΠϯλʔϯͰݚम) ਓʹΑͬͯਐḿΛݟͯมಈ 300࣌ؒ (2ϲ݄ΠϯλʔϯͰݚम) OJT։࢝
  5. ݚम಺༰ ੜͷPHPͰಠࣗϑϨʔϜϫʔΫͰϒϩά੍࡞ # PHPͰͷϒϩά࡞੒ݚम ## ཁ݅ - ੜͷPHPͷΈͰ࡞੒͢Δ͜ͱ(ϑϨʔϜϫʔΫ͸࢖Θͳ͍) ## ػೳҰཡ

    ɹ- Ϣʔβొ࿥ػೳ ɹ- ϩάΠϯػೳ ɹ- ϩάΞ΢τػೳ ɹ- هࣄొ࿥ػೳ ɹ- هࣄ࡟আػೳ ɹ- هࣄݕࡧػೳ ɹ- هࣄฤूػೳ ɹ- هࣄҰཡϖʔδϯάػೳ ɹ- ΧςΰϦొ࿥ػೳ ɹ- ΧςΰϦ࡟আػೳ ɹ- ΧςΰϦฤूػೳ ɹ- ΧςΰϦҰཡػೳ ɹ- λάొ࿥ػೳ ɹ- λά࡟আػೳ ɹ- λάฤूػೳ ɹ- λάҰཡػೳ ## ηΩϡϦςΟରࡦ ɹ- CSRFରࡦग़དྷ͍ͯΔࣄ ɹ- XSSରࡦ͕ग़དྷ͍ͯΔࣄ ɹ- SQLΠϯδΣΫγϣϯରࡦ͕ग़དྷ͍ͯΔࣄ ## MVCϞσϧ͕࣮ݱͰ͖͍ͯΔ͜ͱ ## ֤ೖྗ߲໨ʹରͯ͠όϦσʔγϣϯ͕ग़དྷ͍ͯΔࣄ(PHPଆͰߦ͏) - ඞਢνΣοΫ - ਺ࣈνΣοΫ - ϝʔϧΞυϨεܗࣜνΣοΫͳͲ ## psr-12ʹ४ڌ͍ͯ͠Δ͔ https://www.php-fig.org/psr/psr-12/ ## ࢖༻͢Δٕज़ php7,apache,mysql ## ظݶ ◦/◦◦·Ͱ
  6. ݚम ੜͷPHPͰಠࣗϑϨʔϜϫʔΫͰϒϩά੍࡞ index.php router controller Model View Database 1 2

    3 4 5 9 6 7 8 DB͔ΒσʔλΛऔಘ σʔλΛऔಘ όΠϯυͨ͠HTMLΛฦ٫ σʔλΛHTMLʹόΠϯυ HTMLΛฦ٫ ࠷ॳ͸index.phpΛ ܦ༝͢Δ /loginͷURL͕ ୟ͔ΕΔ URLʹඥͮ͘ Controller͸ݺ͹ΕΔ શମߏ੒ਤ ਤͷࢀߟ:https://railstutorial.jp/chapters/toy_app?version=4.2
  7. ݚम ੜͷPHPͰಠࣗϑϨʔϜϫʔΫͰϒϩά੍࡞ index.php router controller Model View Database 1 2

    3 4 5 9 6 7 8 DB͔ΒσʔλΛऔಘ σʔλΛऔಘ όΠϯυͨ͠HTMLΛฦ٫ σʔλΛHTMLʹόΠϯυ HTMLΛฦ٫ ࠷ॳ͸index.phpΛ ܦ༝͢Δ /loginͷURL͕ ୟ͔ΕΔ URLʹඥͮ͘ Controller͸ݺ͹ΕΔ શମߏ੒ਤ ਤͷࢀߟ:https://railstutorial.jp/chapters/toy_app?version=4.2 ໾ׂ ɾΤϯτϦʔϙΠϯτ ɾΦʔτϩʔυ ɾrouterΛݺͼग़͢
  8. ݚम ੜͷPHPͰಠࣗϑϨʔϜϫʔΫͰϒϩά੍࡞ index.php router controller Model View Database 1 2

    3 4 5 9 6 7 8 DB͔ΒσʔλΛऔಘ σʔλΛऔಘ όΠϯυͨ͠HTMLΛฦ٫ σʔλΛHTMLʹόΠϯυ HTMLΛฦ٫ ࠷ॳ͸index.phpΛ ܦ༝͢Δ /loginͷURL͕ ୟ͔ΕΔ URLʹඥͮ͘ Controller͸ݺ͹ΕΔ શମߏ੒ਤ ਤͷࢀߟ:https://railstutorial.jp/chapters/toy_app?version=4.2 ޻෉఺ ɾCSRFରࡦೖΕΔ ɾϩάΠϯνΣοΫೖΕΔ ͳͲ