$30 off During Our Annual Pro Sale. View Details »

俺が好きなのはJavaだけどJavaじゃない ~OSSによる虎の穴通販サイト開発の全貌~

7.2k

 俺が好きなのはJavaだけどJavaじゃない ~OSSによる虎の穴通販サイト開発の全貌~

同人誌市場、売上最大規模を誇るとらのあな通販サイト。
全世界のオタクライフを支える通販サイトは一般的な通販サイトとはかなり異色です。
今回はJavaによる虎の穴通販サイト開発の全てをお話しします!!

虎の穴ラボ株式会社

February 23, 2019
Tweet

More Decks by 虎の穴ラボ株式会社

Transcript

  1. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.

    Java
    Java
    OSS
    "!#
    2019/2/23 OSC 2019
    Tokyo/Spring
    1

    $

    View Slide

  2. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.



    !

    2

    "

    View Slide

  3. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    1(,0.
    243 /'
    343 #!"&$
    4OSS)* 1 CMS
    5OSS)* 2 6+12
    6
    %!
    7-5%!



    3
    %

    View Slide

  4. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    $

    '$
    EC!%
    &"$
    4
    #( $

    View Slide

  5. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    1

    5

    View Slide

  6. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.


    6


    View Slide

  7. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    7
    3
    '"&!@4

    (5.**01
    /);A
    /);
    :=,7 -*
    ?;

    682<# $+9>%%%

    View Slide

  8. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    8





    View Slide

  9. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.

    9




    View Slide

  10. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    10
    =
    1$, (9
    3.8'
    "4#
    :;
    "40-62*%7)+&
    !5

    View Slide

  11. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    11


    94
    35
    353

    View Slide

  12. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    12

    !

    !"
    #

    View Slide

  13. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    13
    "!9
    .%#$+$3*2/
    '$"!7
    "!
    +$&-(&
    51
    46.%

    "!,)80,)
    "

    View Slide

  14. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    14
    !"
    %
    $,#)*"
    -'+
    &(

    .

    View Slide

  15. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    15
    "(
    $%)
    $%


    & "'
    %# !

    View Slide

  16. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    16




    View Slide

  17. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    17

    EC


    !

    View Slide

  18. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    18


    View Slide

  19. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    19
    03(
    " %$&%'!+

    )
    -2,#*.4
    1/

    View Slide

  20. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    20




    View Slide

  21. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    21




    View Slide

  22. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    22
    2



    View Slide

  23. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    23


    EC

    View Slide

  24. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    ೥ؒച্
    ԯԁҎ্
    ಉਓࢽʹ׵ࢉͯ͠໿ ສ࡭ʂ

    ݄ؒ17਺ ໿ ສ17
    औΓѻ͍঎඼਺
    ˞ࡏݿ͋Γ
    ໿ສΞΠςϜ
    24
    EC

    EC

    View Slide

  25. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    &5D;E

    25
    !+ ?K%$>=7L
    82%$J:?N4O4
    !'/-@FBG
    ○ #,0.@F
    ○ (*-0@F
    -&1 HC9<
    I836-&1A


    EC")D; M

    View Slide

  26. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    26
    %O@K *=;2VUX
    %O@K +C#GP8A?#,EI#(M
    /'S +C#GP8A?#(M#$!
    0#"!# "#
    $"#-+#T3W5?#&L
    W5?#T3>6?#G3?#1HR
    J?#73)3;2 etc….
    $QB:D
    .<;2VN4

    ECF9 Y

    View Slide

  27. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    27

    View Slide

  28. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    28




    View Slide

  29. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    29


    https://ec.toranoana.shop/tora_d/digi/item/042000012881/


    View Slide

  30. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    30
    3



    View Slide

  31. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.


    31
    EC

    View Slide

  32. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    &5=CF
    "!%#$
    3-F
    32
    EC"!%#
    ● 4/>100*+
    ● .6400' )(
    ● 7; 19<
    BA02?
    8D
    :@E,
    ;

    View Slide

  33. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    → OSS#"
    33

    EC
    %!$

    View Slide

  34. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    -+
    23 Java
    Web) Apache
    Tomcat
    '*"(* Spring
    ) '* )) Thymeleaf
    OR!* Hibernate
    &*& Maven
    CI Jenkins
    CMS concrete5
    34
    IDE IntelliJ
    *$)0, git
    EC
    %#*&
    "/1 Zabbix
    $4. JobArranger
    for Zabbix

    View Slide

  35. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.

    OSS
    CMS



    35

    View Slide

  36. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    36
    CMS@
    OSSAD N CMS
    )-#JE,'2;
    50M ....K=I ...(+BD ...
    F96...796...
    H:G<298L/4?
    EC"'
    ),-&)-#2;
    $&*%
    CB>3
    ...
    1!$'

    View Slide

  37. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    37
    PortlandLabs, Inc./)(+! "& )2/,8
    *Web$+;7069<


    *PHP-1+#)+!
    *MIT')
    →) 3: %.:
    OSS45 = CMS

    View Slide

  38. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    38
    +0',#
    . &!
    "$-
    +0
    %*Web
    /
    2 )3
    OSS() 1 CMS

    View Slide

  39. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    39
    (@4.Web)#*3D+I6111.J
    (7C
    ( E=?;!":0D+
    (5FD+I%G,EHJ
    →/2A

    OSS9; K CMS
    '!' D+

    View Slide

  40. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    40
    " #

    ! "
    OSS
    $ CMS

    View Slide

  41. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    41
    OSS CMS

    View Slide

  42. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    42
    concrete5
    OSS


    OSS CMS

    View Slide

  43. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.

    OSS


    43

    View Slide

  44. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.


    44
    OSS

    View Slide

  45. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.

    "

    45
    "

    !$&
    OSS % #

    View Slide

  46. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.

    46
    OSS

    View Slide

  47. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    Kotlin
    47
    OSS

    View Slide

  48. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    Kotlin>
    48
    #JetBrains4:3 $"$!"67
    #JVM67;Java',"%)(<
    #Java9.$
    ;KotlinJava
    + OK<
    # 1-*5
    WEB/ &/08
    OSS02 = :367

    View Slide

  49. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    49
    Kotlin

    OSS

    View Slide

  50. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.

    50
    OSS

    View Slide

  51. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    51
    ''
    JavaVM#$ EC%"
    Java !( #$
    IntelliJ IDEA&


    OSS ) & #$

    View Slide

  52. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    52
    ''
    JavaVM#$ EC%"
    Java !( #$
    IntelliJ IDEA&


    OSS ) & #$

    View Slide

  53. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    53
    ''
    JavaVM#$ EC%"
    Java !( #$
    IntelliJ IDEA&


    OSS ) & #$

    View Slide

  54. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    ''
    JavaVM#$ EC%"
    Java !( #$
    IntelliJ IDEA&


    54
    OSS ) & #$

    View Slide

  55. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    #'"
    '"%& Kotlin
    Spark
    Thymeleaf
    Sparkweb
    $!
    55
    OSS! ( '"%&

    View Slide

  56. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    56
    Spark



    OSS

    View Slide

  57. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    Kotlin
    57

    Web
    !
    get Hello World" #
    OSS ' &$%

    View Slide

  58. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    58
    Kotlin



    OSS

    View Slide

  59. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    59
    1:
    Java
    OSS

    View Slide

  60. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    60
    Kotlin...
    OSS

    View Slide

  61. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    61
    1:
    Java
    Kotlin
    val = Java final
    var =

    OK
    OSS !

    View Slide

  62. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    62
    2:

    Java (switch)
    break ....
    14
    ....
    OSS

    View Slide

  63. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    63
    Kotlin...
    OSS

    View Slide

  64. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    64
    2:
    Java (switch) Kotlin (when)

    when

    OSS

    View Slide

  65. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    65
    3:
    Java
    $&

    &
    IDE%! ....
    OSS " * )#'(

    View Slide

  66. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    66
    Kotlin...
    OSS

    View Slide

  67. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    67
    3:

    Kotlin

    &.0!
    &.%/
    $-" '1
    5(
    0#, " 6
    %/
    OSS)*
    7 4+23

    View Slide

  68. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    68
    Java#

    Kotlin ("+-)
    JVM*,Java )
    OSS!$ / .%*,
    ' &$
    Kotlin$

    View Slide

  69. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    69
    JavaEC1
    ,#7

    &95$
    Kotlin &4)/+23
    ● JavaVM23
    '-"
    ● Android ( %-
    →0)/
    !%-
    8
    OSS*- : 6.23

    View Slide

  70. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    ● EC*0
    -.1(
    Java→KotlinScala

    ● ! !
    /,
    ScalaMatsuri2019 # !%&
    Lab2 !)$3
    70

    EC "'&+

    View Slide

  71. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.

    OSS


    71
    EC

    View Slide

  72. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.






    72

    View Slide

  73. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.




    73



    View Slide

  74. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.




    ! …
    74

    # "

    View Slide

  75. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.


    75

    !

    View Slide

  76. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.



    76


    View Slide

  77. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    Developers Summit 2019 "&
    77

    $%
    !
    % #

    View Slide

  78. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    #!,
    (&))
    -%
    0 1
    2 .

    &)
    /3
    *"

    78
    ++$('

    View Slide

  79. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.






    79
    https://yumenosora.co.jp/tora-lab

    View Slide

  80. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.


    !"
    # !
    80

    View Slide

  81. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    81

    #2&2% x IT
    =:3,!
    A
    /)-2'2 0 *1$">4 .2(5<
    #6;79?8
    B #2 +@

    View Slide

  82. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    82





    View Slide

  83. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    83
    '/23.%(( )
    *6
    '1 + ,5-
    '04 2(#
    $&![Fantia]

    7 &" (#

    View Slide

  84. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.

    Go
    )*
    $#(
    '%&"!
    +

    84

    View Slide

  85. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    85




    View Slide

  86. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    $ -1"%
    &'0(
    $ ')
    , *+
    x IT
    86
    ./ #!

    View Slide

  87. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    (
    !
    87
    "#$
    "'&
    ")
    !!%+
    (*!

    View Slide

  88. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    (

    )*$"!&.
    '# /
    0%+ ,/1
    88
    (- "!

    View Slide

  89. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    /0+(!$-,*
    '(#&"%)"Lab

    89
    .1# (!$

    View Slide

  90. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    57(4'18'Lab
    ● >@9BM15209
    ● ',8"8?:
    ● -38wifi
    ● KC$8.4
    ● /6&#(8I<
    90
    G :
    A;)2% EH
    7&+07*
    =DL
    https://news.toranoana.jp/64239
    FJ!(# 7&+

    View Slide

  91. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    91
    2/19 420=ALT!&F.8
    2/25 16>3*
    3/4 spanner&&
    3/5 Java %$#&+D*
    3/6 bmxug.tokyo C79?*#8 Code Patterns
    3/7 420=ALT!&G.8
    3/12 16>3*
    @/<;$"(,
    :B&


    LabC,!&
    3545C,!&C,-)'E

    View Slide

  92. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.


    x IT

    92

    View Slide

  93. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.

    93

    View Slide

  94. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.



    94

    View Slide

  95. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.



    95

    View Slide

  96. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.



    96


    View Slide

  97. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    97

    75B?BAC3/
    *+0>(@
    2#!'94...

    .& %',:@

    &"16
    -<;
    $%8=)-

    View Slide

  98. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    $
    #!& '
    %"
    '
    98

    View Slide

  99. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.

    0<D.AG5
    .
    L!$)2%M
    K(9:N2/23(,)15:15 &-N5077/
    "$
    !-
    >J8 #=?”I+”
    68.;E+81H
    4.100*CBM
    .@'O.;"F3"O

    View Slide

  100. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.
    2 25( ) →

    3 12()

    100

    https://yumenosora.connpass.com/

    View Slide

  101. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.




    101

    View Slide

  102. Copyright (C) 2019 Toranoana Inc. All Rights Reserved.

    102
    ←312

    View Slide