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

Railsアップグレード / UIリニューアル 「レガシーコード改善」の道のり

Railsアップグレード / UIリニューアル 「レガシーコード改善」の道のり

スタディストで実施しました、Railsアップグレード、UIリニューアルを通じてどのように「レガシーコード改善」に立ち向かったかについてまとめています

Avatar for debucchi

debucchi

March 29, 2019

Other Decks in Programming

Transcript

  1. 10 $PQZSJHIU $  4UVEJTU$PSQPSBUJPO"MM3JHIUT3FTFSWFE $POGJEFOUJBM 401͕͋ͬͨͱͯ͠΋ɺ จࣈͩΒ͚Ͱ͸ػೳෆશɺखॱ͕ਖ਼͘͠఻ΘΒͳ͍ ֎ࠃਓ ಡΊͳ͍

    ಡΉͷ ͍ͨ΁Μ ·͕ͪ͑ ΍͍͢ ཧղ ͠ʹ͍͘ Θ͔Γʹ͍͘΋ͷ͸ɺ࡞ۀΛਖ਼͘͠࠶ݱͰ͖ͳ͍ɻ7JTVBMϕʔε͕ඞਢ 
  2. 12  $PQZSJHIU $  4UVEJTU$PSQPSBUJPO"MM3JHIUT3FTFSWFE $POGJEFOUJBM 5FBDINF#J[7JTVBM401NBOBHFNFOU1MBUGPSN  ύιίϯΛҰ੾࢖ΘͣɺεϚʔτϑΥϯ͚ͩͰ

    ϏδϡΞϧϕʔεͷखॱॻΛ ࡞੒ɺ഑৴ ɺ Ӿཡ؅ཧ ·ͰՄೳ λϒϨοτ εϚϗ͚ͩ΋ ࡞੒͕Մೳ ΋ͪΖΜ ύιίϯ΋ 0,
  3. 13 $PQZSJHIU $  4UVEJTU$PSQPSBUJPO"MM3JHIUT3FTFSWFE $POGJEFOUJBM 5FBDINF#J[ͷλʔήοτۀछʢΦϖϨʔγϣϯΛ࿑ಇू໿ܕͰӡӦ͍ͯ͠Δۀछʣ  ੡଄ۀ ं྆੡଄ɺݐઃػցɺ෦඼Ճ޻

    ͔ΒԽֶϓϥϯτ౳ͷاۀ༷ ॅ༑Խֶ༷ɺੴҪ޻࡞ݚڀॴ༷ ͳͲ খചۀ ஍৔εʔύʔɺυϥοάɺඦ՟ళ ઐ໳ళΛӡӦ͍ͯ͠Δاۀ༷ ϕΠγΞ༷ɺ෋࢜ༀ඼༷ɺ খాٸඦ՟ళ༷ɺจ໌ಊ༷ͳͲ ҿ৯ۀ νΣʔϯల։͍ͯ͠Δҿ৯ۀɺ ΧϑΣ౳ΛӡӦ͍ͯ͠Δاۀ༷ ͔͍͢Βʔ༷͘ɺ+3౦೔ຊϑʔυ༷ ໦ી࿏༷ɺΩϦϯγςΟ༷ͳͲ ॓ധۀ νΣʔϯల։͍ͯ͠Δ॓ധࢪઃ ࢪઃӡӦΛडୗ͍ͯ͠Δاۀ༷ ੕໺Ϧκʔτ༷ɺϫγϯτϯϗςϧϓ ϥβ༷ɺϑΥϧπΞ༷ͳͲ ෺ྲྀۀ τϥοΫ౳ͷ෺ྲྀ͔Βྲྀ௨ ηϯλʔΛӡӦ͍ͯ͠Δاۀ༷ ϠϚτάϧʔϓ֤༷ࣾɺ҆ా૔ݿ༷ ϫίʔϧྲྀ௨༷ͳͲ Ϗϧϝϯςφϯε ࢪઃͷਗ਼૟ɺϏϧઃඋػցͷอक ఺ݕۀ຿Λडୗ͍ͯ͠Δاۀ༷ ΠΦϯσΟϥΠτ༷ɺେ੒גࣜձ༷ࣾ ΞΠϯά༷ͳͲ Ξϛϡʔζϝϯτ εϙʔπɾޘָࢪઃήʔϜ ηϯλʔ౳ΛӡӦ͍ͯ͠Δاۀ༷ ηΨ༷ɺϥ΢ϯυϫϯ༷ ϧωαϯε༷ͳͲ
  4. 19    l   l  

      l    l  l   
  5. 21         

          ͟Θɾɾ͟Θɾɾ͟Θɾɾ     
  6. 24 *(+&,0&,   823  > #-'"%+75!$.)/1 23 *(+49

    &,= :; ?6  *(+ &,A  0 @< 
  7. 32 l 2 A 2 7 l - l I

    0 1 l 8 8 
  8. 34 Controller view model Javascript css Rails Ruby U HTML

    I javascript css JQuery DOM 
  9. 35   Controller view model component Rails  

       Vue.js action state mutation     
  10. 38 l 8 0 l ( l % ) 

       
  11. 39 ! l   l I - - l

    - l # " l - l - d l i e l    l U U -
  12. 40         

     http://bit.ly/2F5sq6u
  13. 43 U Controller model Rails  I API ver1 API

    I UI () I UI I API  • -API • http status
  14. 45 I Controller model Rails I   I API

    ver1 UI V2 API ver2 blueprint U -
  15. 58 l 6 l 10 31.. 36 % 1 .6

    ) l 35 1 12 6) l 8% 6 % 6( -
  16. 62 / )(5#3.$'6 l 0+ 47 l 5# $' 

    l -!*2%, 1 "&47   -
  17. 65 &! %*1#"$3. l #"$ %8  ' 6 %025(

     l #"$,/  %4   7-    7)+