ãã³ãŒãïŒ
ã¢ã¶ãã»ããã£ãšã: ããã«ã¡ã¯ãç§ã®ååã¯ã¢ã¶ãã»ããã£ãšãã§ããç§ã¯ Mail.ru ã¯ã©ãŠã ãœãªã¥ãŒã·ã§ã³ã® PaaS éçºè ã§ããããã«ç§ãšäžç·ã«ããã®ã¯ããµãŠã¹ããªããžã®ããã«ã»ã»ãªãããã§ããç§ãã¡ã¯ DevOpsDays ã«ã³ãã¡ã¬ã³ã¹ã«åå ããŠããŸãã圌ã¯ããã§ãKubernetes ã䜿çšã㊠DevOps ãæ§ç¯ããæ¹æ³ã«ã€ããŠè¬æŒããŸãããããããæåããªãã§ãããããªãã§ãããªæã話é¡ãªã®ïŒ
ããã«ã»ã»ãªãŽã¡ãã: å®éã«ã¯æãããšã§ã¯ãããŸãããããã¯ãç§ãã¡ããã¯ãããžãŒã®å©ããåããŠã³ãã¥ããã£å ã®å€ãã®åé¡ã解決ããããšããŠãããšããäºå®ã«ã€ããŠã§ãããããŠãç§ãã¡ã¯ãã¯ãããžãŒã®å©ããåããŠãããªãäžæ¹çãªæ¹æ³ã§ç©äºã解決ããããšããŠããŸãã Kubenetes ãåãã§ããããã圌ãã®è²¬ä»»ã§ãããOps ã§ãããšèšã人ãããã§ããããããããç§ãã¡ã¯DevOpsãšã³ãžãã¢ãšããçŽ æŽãããã³ã³ã»ãããæã£ãŠããŸãã DevOps ãšã³ãžãã¢ã¯ Kubernetes ãæ åœããŸããåæã«...ããªãã Kubernetes ãäœæããŠããã®ãšåãããã«ãéçºæ åœè ã¯ããããã¹ãŠã® Kubernetes ã«ã€ããŠãŸã£ããèªèããŠããããKubernetes ã«ãã£ãŠäœãã§ããããã«ãªãã®ããèªèããŠããŸããããããŠããã¹ãŠã圌ãã«ãšã£ãŠãŸã£ããåãããã«çããŠããŸãããããŠãããã¯ãKubernetes ã«ã¯ããã®ãã¯ãããžãŒã䜿çšããŠãã® DevOps ã¢ãããŒããæ¡åŒµããããã®æ¢è£œã®ãœãªã¥ãŒã·ã§ã³ãæ¢è£œã®ããŒã«ãéçºãšéçšã®éã®ã³ãã¥ãã±ãŒã·ã§ã³ãå«ãŸããŠãããšããäºå®ã«ããããããã§ããç§ãã¡ã¯ãã®æ©äŒãã»ãšãã©å©çšããŸãããçŸåšã®æ§é ã DockerãKubernetesãã¯ã©ãŠããªã©ã®ãã¹ãŠã® DevOps ããŒã«ã«ç§»è¡ããŠãããšããäºå®ã«ããããã®ç¶æ³ã¯ããã«æªåããŠããŸãããããŠç§ãã¡ã¯ããŒã«ãæ¬æ¥ã®æå³ãšã¯ç°ãªã䜿ãæ¹ããå§ããŸãããããŠãããããã¹ãŠã®ãã¯ãããžãŒãäžå¿ã«ãã²ã©ãæŸèæãæ§ç¯ãããŠããŸãã
ã¢ã¶ãã»ããã£ãšã: ãªãã»ã©ãå¹ åºãããŒãã®ãããªæ°ãããŸããäŒæ¥ãçŸåšæ±ããŠããæãäžè¬çãªåé¡ã¯äœã ãšæããŸãã? Kubernetes ã䜿çšããŸãã
Pavel Selivanov: Kubernetes ã§æãäžè¬çãªåé¡ã¯ãã³ã³ããã³ã·ãŒã®æ¬ åŠã§ãããã㯠IT åéã§ããããåé¡ã§ããå°é家ã¯åžžã«äžè¶³ããŠããŸããèœåäžè¶³ã¯åžžã«ãããŸãããããŠçŸåšãKubernetes ã§ã¯ååãªã³ã³ããã³ã·ãŒããããŸããããããŠåæã«ãKubernetes ãå ¥æã§ãããã®ã®ãåæã«å¿ èŠãªã³ã³ããã³ã·ãŒãåããŠããªã XNUMX% æ¢æã®ãœãªã¥ãŒã·ã§ã³ãåžå Žã«ãŸã ååšããŠãããççŽã«èšã£ãŠåžå Žã«ã¯ã»ãšãã©ãããŸããããããŠãååšãããã®ã¯ãã¹ãŠãããã€ãã®çåãåŒãèµ·ãããŸãã Kubernetes ã§ã¯ããããç解ã§ãã人æãåžžã«æ¢ããŠããŸããç§ãã¡ã¯éçºãããã«é©å¿ãããããšããŠããŸãã
ã¢ã¶ãã»ã«ãã£ãšã: ãããŠãçŸåšã® IT éšéã®äººæäžè¶³ãèæ ®ãããšãããã¯ãã€ãããã«ãããŸããããããŠä»ããããŸãããã®ãããªç¶æ³äžã§ã©ã®ããã«çããŠããã¹ãã ãšæããŸããïŒã©ããªã©ã€ãããã¯ãããã®ã§ããããïŒ
ããã«ã»ã»ãªããã: ã©ã€ãããã¯ããŸããã¯ã©ãŠãã®èŠ³ç¹ããèŠããšãã©ã€ãããã¯ã¯æ¬¡ã®ããã«ãªããŸããããªãã®ã³ã³ããã³ã·ãŒãããã€ãæããŠãã ããããããŠç§ãã¡ã¯ããããèªåã®ãã®ã«ããŸãããããŠç§ãã¡ã¯ãããèªåèªèº«ã®äžã§è¡ããŸããããã¯ããã§ããã®ã§ãããã ããç§ãã¡ã®èœåã®äžéšãã¯ã©ãŠãããããã€ããŒã«æäŸããã°ã代ããã«æ®éçãªãœãªã¥ãŒã·ã§ã³ãåŸããããšããããšãç解ããããšãéèŠã§ãã ã倧ãŸãã«èšãã°ãéåžžã«ç¹æ®ãªããšãè¡ãããŒã¿ããŒã¹ããããéåžžã«ç¹æ®ãªæ¹æ³ã§æ§æãããŠããŸãããã®ããŒã¿ããŒã¹ãã¯ã©ãŠãã«æäŸããããšã§ãããŒã¿ããŒã¹ ã¯ã©ã¹ã¿ãŒãæ±ã£ãŠãã管çè ã解éã§ããŸããåã Amazon ã Google ããããè¡ã£ãŠãããŸãããããåæã«ãAmazon ã Google ã¯ããŒã¿ããŒã¹ãæ確ã«æ§æããããšãèš±å¯ããŸããã倧èŠæš¡ãªãããžã§ã¯ãã倧äŒæ¥ - ãããã«ããã人çã®ãã段éã§ã¯ã©ãŠã ãœãªã¥ãŒã·ã§ã³ã䜿çšããããã«ãªããŸããããããã«ããŠããããå ·äœçãªãã®ãå¿ èŠã«ãªããããã³ã³ããã³ã·ãŒãèªåèªèº«ã«åãæ»ãããšã«æ»ããŸãã ã
ã¢ã¶ãã»ããã£ãšã: æ®éçãªè§£æ±ºçã¯æªããã®ãªã®ã§ããããããããšããã®è§£æ±ºçã«åºã¥ããŠããã«æ§ç¯ã§ããã®ã§ãããã?
Pavel Selivanov: ããããæ®éçãªãœãªã¥ãŒã·ã§ã³ã¯æ±ºããŠæªããããŸãããæ®éçãªãœãªã¥ãŒã·ã§ã³ã¯è¯ãããšã§ãããŸãã«æ®éçãªãœãªã¥ãŒã·ã§ã³ã§ã...æ®éçã§ãããããç解ããããšãéèŠã§ããããã¯ãå ±éã®ã¹ã¯ãªããã䜿çšãããããªãã®ã§ã... ãã®å ±éã®ã¹ã¯ãªãããå ±éã®ã¢ããªã±ãŒã·ã§ã³ãäžå¿ã«äŒç€Ÿã®ä»äºã®ããžãã¯å šäœãæ§ç¯ã§ããã°ãããã¯ãã°ãããããšã§ãããããŠãäœåã®ããžãã¯ãç°ãªã£ãŠããŠãããã®æ®éçãªè§£æ±ºçãæ®éçãªèæ¬ãæ¡çšãããã¯ããŠã®ããã«å°çåãåŒã£åŒµãå§ãããšããããããã¯è¯ããããŸããããããŠæ®é䞻矩èªäœã«ã¯äœã®åé¡ããããŸããã
ã¢ã¶ãã»ã«ãã£ãšã: ãã®ç®¡çè ããã§ã«ããªãã®ããã«åããŠããã®ã§ããã°ãåé¡ã¯åœŒã®è§£éã«ãããŸããã圌ã¯ãã£ãšã§ããããã«ãªãã ããã
ããã«ã»ã»ãªãŽã¡ãã: ã¯ãã圌ããã«ãŒãã£ã³ãåãäžããŠãã©ããã§èª°ãã«æž¡ããŠãã©ããã§äœã£ãŠããããŸããããããã¯ééããªãè¯ãã¢ãããŒãã§ããããã§éèŠãªã®ã¯ããã®æšæºãœãªã¥ãŒã·ã§ã³ãç¹å®ã®ã±ãŒã¹ã«é©ããŠãããã©ããã§ãã
ã¢ã¶ãã»ã«ãã£ãšã: ç§ã®çµéšããèšãã°ãå€ãã®äŒæ¥ãåãããšããã£ãŠããããšãããããŸãã圌ã㯠Kubernetes ã¯ã©ã¹ã¿ãŒãã»ããã¢ãããããããã¹ã±ãŒãªã³ã°ããããšãæ€èšããŠããŸãããããŠãããããã¹ãŠã®æäœã¯éåžžã«åçŸæ§ããããŸãã
ããã«ã»ã»ãªã¯ãã: ã¯ãã確ãã«ããã§ããããã«ãKubernetes ã«ç¹åããå ŽåãçŸåšåžå Žã«ã¯ Kubernetes ã«é¢ããæ·±ããŠè¯ãç¥èãã»ãšãã©ãªããšããç¹ããããŸãããããŠãKubernetes ã¯éåžžã«å·šå€§ãªã³ã³ã¹ãã©ã¯ã¿ãŒã§ãããããäŒæ¥ã«éçšããå Žåã¯ãããããã¹ãŠããã«ã¿ã€ã ã§è¡ããšã³ãžãã¢ãé£ããŠè¡ãæºåãããŠãã ããããããŠé«äŸ¡ã§ãããããŠããã®ãããªãšã³ãžãã¢ãããäžåºŠæ¢ããŠã¿ãŠãã ãããç§èªèº«ã«ã€ããŠè©±ããšãç§ã¯ã©ã®ã¯ã©ãŠã ãœãªã¥ãŒã·ã§ã³ãããŸã奜ãã§ã¯ãããŸããããªããªããç§ã¯ Kubernetes ãã©ã®ããã«æ©èœãããã«ã€ããŠããªãããç解ããŠããããã§ãããããŠãã¯ã©ãŠãã§ã¯ãç§ãèŠæ±ããããã€ãã®æ©èœãæ¬ ããŠããããšããããããŸããã圌ãã¯ãããããããã¯ã§ããŸããããšèšããŸãããŸãããã®å Žåã¯ç³ãèš³ãªãã§ãããã¯ã©ãŠãããã¯äžæã«ã§ãããšæããŸãããããåæã«ããã«ã¿ã€ã ã®ãšã³ãžãã¢ãããªãå ŽåãKubernetes ãå®è¡ãããšã³ãžãã¢ã«ãéãæããããªãå Žåãå®éšã®ããã ãã«åœŒã«åžžã«å€é¡ã®ãéãæã£ãŠããå Žåãã¯ã©ãŠãã¯åãªããã®ã§ããè¯ããçŽ æŽããã解決çã§ãããªããªããå°ãªããšããããã€ããŒããã§ã«æ¡çšãã人ãã¡ãããã«åº§ã£ãŠããããã§ãããããŠåœŒãã¯èªåãã¡ãäœãããŠããã®ããç¥ã£ãŠããŸããæ¥åžžçã«å¿ èŠãªåºæ¬çãªãã®ã¯ããã«ãããŸãã
Azat Khadiev: Kubernetes ã®çŸç¶ã«ã€ããŠã©ãæããŸãã? XNUMX幎åŸãXNUMX幎åŸã圌ã¯ã©ããªã£ãŠããã§ããããïŒ
ããã«ã»ã»ãªããã: è¯ã質åã§ãããç§ã¯ãã®ä»¶ã«é¢ããŠç§ãã¡ã®ã³ãã¥ããã£ã§äœãèµ·ãã£ãŠããã®ããç¥ã£ãŠããŸãã Kubernetes 以å€ã«ã¯äœãæ®ããªãã®ã§ã¯ãªãããšèãã人ãããŸããæãLinux ã§èµ·ãã£ãç¶æ³ãã€ãŸããLinux ã®å€ã«ã BSD ã䜿çšããŠãã人ã ãããããããã圌ãã¯éåžžã«ç¹æ®ãªã¿ã¹ã¯ãæ±ããŠããŸãã Windows (Windows ãµãŒããŒ) ã§åããŠãã人ãããŸãããããããã圌ããç¹å®ã®ã¿ã¹ã¯ãæ±ããŠããããåã«ãã®åé¡ã«é¢ããŠèœåãæã£ãŠããŠãããããé¢ããæºåãã§ããŠããªãå¯èœæ§ããããŸãããããã«ãããç§ãã¡ã®åéã®æšæºã¯ Linux ã§ãã Kubernetesãåãããã¡ã¯ãã¹ã¿ã³ããŒããšãªããKubernetes以å€ã«äœããªããªããšããæèŠããããŸãã Kubernetes ã¯ãã¢ããªã±ãŒã·ã§ã³ã ãã§ãªãããã®ãããã€ã¡ã³ãããããã€ã¡ã³ããã¹ã±ãŒãªã³ã°ã管çããŸããäžè¬çã«ã¯ããã¹ãŠã管çããŸããçŸåšã圌ãã¯ãã§ã«ãããŒã¿ããŒã¹ã Kubernetes ã«ããã·ã¥ããããšã¯å¯èœã§ãã?ããšå°ããŠããŸããç§ã¯éåžžãããã§ã®åé¡ã¯ Kubernetes ã«ããã®ã§ã¯ãªããDocker ã«ãããšèšããŸããããŒã¿ããŒã¹ãã³ã³ãããŒå ã§å®è¡ããæºåãã§ããŠããå Žåã¯ã次ã®ããã«åäœããŸãã圌ãã¯ç§ã«ããçããŸããã³ã³ããã¯å¿ èŠãããŸããã Kubernetesãå¿ èŠã§ãããããããŒãã«æ¥ãæšããŠãããŸããã€ãŸãããã¹ãŠãçŸç¶ã®ãŸãŸã«ãªããKubernetes ã ãããã¹ãŠã管çããããšã«ãªããŸããããããŠãããã¯å®éã«è¯ãã¢ã€ãã¢ã§ããã€ãŸããäŒç€Ÿã«æ¥ããšãKubernetes ã¯ãã®ãããªãã®ã«ãªããŸããäŒç€Ÿã« Kubernetes ãšãã®äžã«ããã»ã¹ãæ§ç¯ãããŠããå Žåããããç解ããŠãã人ã¯ããããæ°æ¥èŠãã ãã§æ¬¡ã®ããã«èšããŸããç§ã¯ããªãããµããŒãããæºåãã§ããŠããŸããå®å šã«ãå šäœçã«ãç§ã¯ããªãã«ãšã£ãŠç©äºãã©ã®ããã«æ©èœããããç解ããŠããŸããã Kubernetes ã䜿çšããªãã¢ãããŒããšã¯å¯Ÿç §çã«ãããã§ã¯ããã€ãã®æŸèæãæŒã蟌ãŸããããã§ã¯ä»ã®æŸèæãæŒã蟌ãŸããŠããŸãã Ansible ã¯ãã¡ããTerraform ã¯ãã¡ããããã¯èª°ããæžãããã®ã§ããããç解ããã«ã¯XNUMXãæããããŸããããããããã£ãŠãKubernetes ãäºå®äžã®æšæºã«ãªããã©ããã¯ããããŸãããçŸåšã圌ã¯åšå²ã«ååšãã解決çãããã¯ããã«éå¿çã§èªä¿¡ã«æºã¡ãŠããããã«èŠããŸãã
Azat Khadiev: ããã§ãããLinux ãšã®æ¯èŒã¯éåžžã«å€§èã§ãã XNUMX å°ã®ãã·ã³ã§åäœãããããã ãã§ãããããŠãKubernetes ã¯å€ãã®ãã·ã³äžã§åäœããŸããç¡æ°ã®ããªãšãŒã·ã§ã³ãšçç±ãå³åº§ã«æµ®ãã³äžãããŸããã¯ãã倧èã§ãããã ãããã®ãã©ãã€ã ã«ã¯ç«¶åä»ç€Ÿãååšããããšãèæ ®ã«å ¥ããŠãã ãããããšãã°ããµãŒããŒã¬ã¹ããã®ãããªç«¶åä»ç€Ÿã«ãããKubernetes ã¯å±éºã«ãããããŠããã®ã§ãããã?
Pavel Selivanov: ãµãŒããŒã¬ã¹ãã... (ç¬ã) ãµãŒããŒã¬ã¹ - çµå±ã®ãšãããµãŒããŒãååšããããšãç§ãã¡ã¯ãŸã ç解ããŠããŸããæè¿ãã®ä»¶ã«é¢ããå ±éãèããŸãããããã«ã¯ãŸã ãµãŒããŒããããããã¯ã¯ã©ãŠãã§ãããšãã®äººã¯èšããŸããããã ããã¯ã©ãŠãã«ããµãŒããŒãããããšãåžžã«ç解ããŠããå¿ èŠããããŸããå®éã®ããŒããŠã§ã¢ãµãŒããŒãã©ãã¯ãããããããã¯ã©ããã«èšçœ®ãããŠããŸãããããé²ã§ããããã«å ããŠããµãŒããŒããååšããªãããµãŒããŒã¬ã¹ããããŸããããã§åé¡ã¯ãServerless ã Kubernetes ã«åãŠãã§ãããã? Serverless 㯠Kubernetes ã«ç§»è¡ããããã§ãããµãŒããŒã¬ã¹ãæäŸãããããã€ããŒã«ãšã£ãŠãKubernetes ã¯ãããæäŸããéåžžã«äŸ¿å©ãªãã©ãããã©ãŒã ã§ããã¯ããããããããæç¹ã§ãéåžžã®ããžãã¹ ã¢ããªã±ãŒã·ã§ã³ã®éçºãšåæ§ã«ãKubernetes ã«ã€ããŠååçã«è©±ãã®ããããã§ãããããããããããã€ããŒãšãšã³ãžãã¢ã¯ãã®æ·±éšã®ã©ããã« Kubernetes ãæã¡ãããã§ããããã¹ãŠãå®è£ ãããããšã«ãªããŸãã
ã¢ã¶ãã»ããã£ãšãïŒå°ãéã話é¡ã§ãããã«ã¹ã¿ãã¯ãšã³ãžãã¢ãšãããã®ããããŸãã圌ãã«ã€ããŠã©ãæããŸãã?ãããã¯ååšããã®ã§ããããïŒ
Pavel Selivanov: ãããš... ãã«ã¹ã¿ã㯠ãšã³ãžãã¢... ããã§ããããããã®ãã®ãåºå¥ãã䟡å€ãããããã«ç§ã«ã¯æããŸã... ãåç¥ã®ããã«ãT ååã®äººã ã®ãããªãã®ããããŸãããããªäººæãä»ã®æ¥çã«å¿ èŠãªã®ã§ããããïŒã¯ããããã¯ééããªãå¿ èŠã§ããåºãèŠéãæã£ãŠãããšåæã«ãããçãåéã®ã¹ãã·ã£ãªã¹ãã§ããã人æãæ±ããããŠããŸãããããŠãããã§ã®ãã«ã¹ã¿ãã¯ãšã³ãžãã¢ã¯åãã§ãããããããããšãè¡ã人ã§ããããã³ããšã³ãéçºããå§ãŸãããã¹ããããã¯ãšã³ãããµãŒããŒããã®ä»ãã¹ãŠã®ãã®ã倧äŒæ¥ã§ã¯ãåãã©ã¡ãŒã¿ã®çãå°éç¥èãæããªã XNUMX 人ã®äººéããããè¡ãããšã¯ã§ããªããšæããŸãããããåæã«ãããã«ã€ããŠäœãèµ·ãã£ãŠããã®ããç§ã¯äœãç¥ããªããšããçãå°éæ§ã ããæã£ãŠããã ãã§ã¯ããããçŸä»£ã®äžçã§ã¯æ©èœããŸãããã€ãŸããããã§ç§ãèšãããã®ã¯...ãã«ã¹ã¿ãã¯ãšããèšèã¯æšãŠãããšããããšã§ããç§ãã¡ã¯æ¬åœã«ãšã³ãžãã¢ãå¿ èŠãšããŠããŸãã DevOpsãå¿ èŠã§ããè¿ããã¡ã«ãã®ç¬éãåèããããšã«ãªãã®ã§ã¯ãªãããšæããŠããŸãããããŠãããã¯å¿ èŠãªããªãã§ãããã
ã¢ã¶ãã»ããã£ãšã: æãããŠããããŸããïŒ
Pavel Selivanov: ç§ãã¡æ¥çã§ã¯ããããã®éçºãšéçšã®åœ¹å²ã¯éããªããªããªããšããçµè«ã«éããããã«æããŸããã¹ãã·ã£ãªã¹ããå¿ èŠã§ãæ¢ããŠãããšããã... 誰ã ã®éçºè ãå¿ èŠã§ãããããã®ç®¡çè ãå¿ èŠã§ãDevOps ãšã³ãžãã¢ãå¿ èŠã§ããä»ã§ã¯åœŒããããŸãããããããã¯æ¬çªãšã³ãžãã¢ã SRE ãšã³ãžãã¢ãå¿ èŠã«ãªããŸããå®éã«ã¯ãç§ãã¡ãå¿ èŠãšããŠããã®ã¯ãæ¡çšããããšæããšã³ãžãã¢ã§ããèæ¯ã¯æŠããŠéèŠã§ã¯ãããŸããããªããªã⊠ããšãã°ãSRE ã¯ãã€ã³ãã©ã¹ãã©ã¯ãã£ã®åé¡ã¯åžžã«ãœãããŠã§ã¢ã®åé¡ã§ãããšèšã£ãŠããŸããããã§... éçºè ãèããŠã¿ãŸããã - éçºè ã¯ãšã³ãžãã¢ã§ãããšãã芳ç¹ãã - 圌ããã¡ã³ããã³ã¹éšéã«é 眮ãããšã圌ãã¯ã³ãŒãã®å©ããåããŠããžãã¹äžã®åé¡ã解決ããã®ãšåãæ¹æ³ã§ãããã®åé¡ã解決ããŸãããšã³ãžãã¢ãªã³ã°ãã®ãã®ã
ã¢ã¶ãã»ããã£ãšã: ãããŠããã®èŠ³ç¹ãã...ãã®ãããªãšã³ãžãã¢ã«ã€ã³ã¿ãã¥ãŒããã«ã¯ã©ãããã°ããã§ãããã?
ããã«ã»ã»ãªããã: ããããã質åã§ããããããã圌ã¯ããã®äžã§ãã§ã«ç§ã®ç解ãè¶ ããŠããã®ã§ããããããããç§ã¯ã»ãã®äžäŸãæããããšæããŸããé¢æ¥ãšã¯é¢ä¿ãããŸãããããã¯ãã·ã¢ã®æè²å¶åºŠã«é¢ãããã®ã§ãã IT åéã§ã¯ããã·ã¢ã®æè²ã·ã¹ãã ã IT æ¥çã«ãšã£ãŠéåžžã«æ代é ãã§ãããããã¹ããã®ã§ã¯ãªãããšãç§ãã¡ã¯ç¥ã£ãŠããŸããç§ã話ããŠããã®ã¯å¹³åããŠåºå€§ãªãã·ã¢ã«ã€ããŠã§ãããããã§äœãèµ·ãã£ãŠãããã«ã€ããŠã§ããåæ¥åŸã®ç¿æ¥ã«ã¯ Web éçºããã¯ãããžãŒäŒæ¥ã«å°±è·ããæºåããŸã£ããæŽã£ãŠããªã人ã ãåæ¥ããŠããŸãããããŠãããã¯ã¡ãã£ãšæªãã§ãã Android ã iOS åãã®éçºæ¹æ³ãGit ã®äœ¿çšæ¹æ³ãªã©ãæããå¿ èŠãããã«ãããããããç§ãã¡ã¯åœŒãã«å¥åŠãªããšãããã€ãæããŠããŸããå®éã«ã¯ããã§ã¯ãªãããã§ãã倧åŠæ代ã¯äž»ã«èŠªãåŠè²»ãæã£ãŠãããææã§ããããªãã®äžçã®ããã«ããããŠã人çã®XNUMX幎éã培åºçã«åŠã¶ããšã«è²»ããããšãã§ããŸãããããŠããã®Tååããã¹ãŠç 究ããŠãã ãããç 究æã§ããŒãžã§ã³ç®¡çã·ã¹ãã ãšã¯äœããã©ã®ãããªéçºãã¿ãŒã³ãããã®ãââãå šäœããã¹ãããæ¹æ³ãããŒã¿ããŒã¹ããã©ã³ãµãŒã®çš®é¡ã¯äœããªã©ãåŠã¶ããšãã§ããŸãããããŠä»äºã«å°±ããšãç¹å®ã®åéãããã«æ·±ãæãäžãå§ããŸããããããšã³ãžãã¢ã®ç²åŸæ¹æ³ã§ãããããŠããã·ã¢ã®æè²å¶åºŠã¯ãç§ãã¡ãæã£ãŠããããããã£ãšãã®çå®ã«è¿ãã®ã§ããç§ãã¡ã¯åªããæ°åŠçãã¬ãŒãã³ã°ãåããåªããã¢ã«ãŽãªãºã ãã¬ãŒãã³ã°ãåããããã°ã©ãã³ã°èšèªã«ã€ããŠãããçšåºŠã®ç解ãäžããããŠããŸãããããŠã€ã³ã¿ãã¥ãŒã«ã€ããŠã¯ãããã«è¿ããã®ãããããã«æããŸãããšã³ãžãã¢ã«ã€ã³ã¿ãã¥ãŒããå¿ èŠããããŸãã Tååã®å Žåã¯Tã®äžéšãå¿ èŠã§ããæåTã®çžŠç·ãç²åŸããããšã«ãªãããã§ãã
ã¢ã¶ãã»ããã£ãšã: ã¯ããèå³æ·±ãã§ããã倧åŠãåæ¥ããŠXNUMX幎ãçµã¡ãŸããããç§ã®æè²ã¯ã©ããããããå¥åŠã§äžååã§ããããã«æããŸããããããŠãä»äºãé²ã¿ã課é¡ãæ·±ããªãããããžã§ã¯ãã倧ãããªã£ããšãããããããšãŠã倧åãªããšãæããŠããã£ããã ããšæ°ã¥ããŸãããããã«ãããããšããçããã®åçãèãã®ã¯ãšãŠãèå³æ·±ãã£ãã§ããããªãã®å ±åãèããŸãããã
ããã«ã»ã»ãªã¯ãã: ããããšãããããŸãã
åºæïŒ habr.com