VB.NETã®åºç€ç¥è
VB.NETãšã¯ïŒæŠèŠãšç¹åŸŽ
VB.NETã¯ããã€ã¯ããœãã瀟ã«ãã£ãŠéçºãããããã°ã©ãã³ã°èšèªã§ããã匷åãª.NETãã¬ãŒã ã¯ãŒã¯äžã§åäœããŸãããã®æ倧ã®ç¹åŸŽã®äžã€ã¯ãè¡šçŸåè±ããªæ§æãæã€ããšã§ãå¯èªæ§ãé«ãããã°ã©ããŒã«ãšã£ãŠæžããããèšèªã§ãããŸãããªããžã§ã¯ãæåããã°ã©ãã³ã°ãå®å šã«ãµããŒãããããšã§ãåå©çšå¯èœãªã³ãŒããã¢ãžã¥ãŒã«ã®äœæã容æã«ãªããŸãã
VB.NETã¯ã€ãã³ãé§ååã®ããã°ã©ã ã«é©ããŠãããWindows FormsãWebã¢ããªã±ãŒã·ã§ã³ãªã©ã®éçºãè¡ããããã§ããããã«ãçµ±åéçºç°å¢ã§ããVisual Studioã䜿çšããããšã«ãããè¿ éãã€å¹ççãªãã¶ã€ã³ãšãããã°äœæ¥ãå®çŸããŸãã
ãã®èšèªã¯ããšã©ãŒåŠçãå å®ããŠããããšãå©ç¹ã§ããäŸå€åŠçæ©èœãéããŠãäºæãã¬ãšã©ãŒã«å¯Ÿããå ç¢ãªå¯Ÿå¿ãå¯èœã§ãããéçºè ãå®å¿ããŠããã°ã©ã ãéçºã§ããç°å¢ãæäŸããŸãã
VB.NETã®æŽå²çèæ¯ãšçºå±
VB.NETã¯Visual Basicèšèªã®åŸç¶ãšããŠã2000幎代åé ã«ç»å ŽããŸããããã®èšèªã¯ãå ã ã®Visual Basicã®å©äŸ¿æ§ãä¿ã£ãäžã§ã.NETãã¬ãŒã ã¯ãŒã¯ãšã®çµ±åãå³ãããªããžã§ã¯ãæåæ©èœã匷åããŠããŸãããã€ã¯ããœããã¯VB.NETãéããŠãããã¢ãã³ã§åŒ·åãªã¢ããªã±ãŒã·ã§ã³éçºãå¯èœã«ããŸããã
VB.NETã¯ãªãªãŒã¹ä»¥æ¥ãå€ãã®ããŒãžã§ã³ã¢ããããŒããéããåžžã«ææ°ã®æè¡ãã¬ã³ãã«å¯Ÿå¿ããŠããŸãããç¹ã«ã.NETãã¬ãŒã ã¯ãŒã¯èªèº«ã®é²åã«äŒŽããããã©ãŒãã³ã¹ã®åäžãšãšãã«æ°ããã©ã€ãã©ãªãããŒã«ãé 調ã«è¿œå ãããŠããŸãã
ããã°ã©ãã³ã°ã³ãã¥ããã£ããã®ãã£ãŒãããã¯ãç©æ¥µçã«åãå ¥ããªãããVB.NETã¯ç¶ç¶ããŠæ¹è¯ãå ããããŠãããçŸåšã§ãå€ãã®äŒæ¥ãå人éçºè ã«å©çšãããŠããéèŠãªèšèªã®äžã€ã§ãã
VB.NETãšä»ã®ããã°ã©ãã³ã°èšèªãšã®æ¯èŒ
VB.NETã¯ãä»ã®.NETèšèªã§ããC#ãšãã°ãã°æ¯èŒãããŸããC#ãã·ã³ã¿ãã¯ã¹ã®å³æ Œããšããã©ãŒãã³ã¹ã®åŒ·ãã«éãã眮ããŠããã®ã«å¯ŸããVB.NETã¯äœ¿ãããããšã¢ã¯ã»ã·ããªãã£ãåªå ããŠããŸããããã¯VB.NETãæè²çŸå ŽãååŠè ã«ãæšå¥šãããçç±ã®äžã€ã§ãã
ãŸããVB.NETãšJavaãPythonãªã©ã®èšèªãšæ¯èŒãããšãç¹ã«WindowsããŒã¹ã®ã¢ããªã±ãŒã·ã§ã³éçºã«ãããŠåªäœæ§ãæã¡ãŸãããã€ã¯ããœãã補åãšã®èŠªåæ§ã®é«ãããVisual Studioã®è±å¯ãªæ©èœãVB.NETã®åŒ·ã¿ãšãªã£ãŠããŸãã
äžæ¹ã§ãã¯ãã¹ãã©ãããã©ãŒã æ§ããªãŒãã³ãœãŒã¹éçºè ã³ãã¥ããã£ã®ãµã€ãºãšãã£ãé¢ã§ã¯ãC#ãJavaãPythonãVB.NETãããåªããŠãããšè©äŸ¡ãããããšããããŸããããããããžãã¹ã¢ããªã±ãŒã·ã§ã³ãªã©ç¹å®ã®é åã«ãããVB.NETã®å©äŸ¿æ§ã¯éåžžã«é«ããšèšããŸãã
VB.NETã䜿ãããåé
VB.NETã¯ç¹ã«Windowsãã¹ã¯ãããã¢ããªã±ãŒã·ã§ã³ã®éçºã«ãããŠåºã䜿ãããŠããŸããWindowsã®GUIãå©çšããã¢ããªã±ãŒã·ã§ã³ãè¿ éã«éçºã§ãããããæ¥åæ¯æŽããŒã«ãããŒã¿ç®¡çã·ã¹ãã ãªã©ãäŒæ¥ã¬ãã«ã®ãœãããŠã§ã¢éçºã«ãããŠåªããéžæè¢ãšãªã£ãŠããŸãã
ãŸããWEBã¢ããªã±ãŒã·ã§ã³éçºã«ããã®é©æ§ãçºæ®ããŠãããASP.NETãã¬ãŒã ã¯ãŒã¯ãšçµã¿åãããããšã§ãã€ã³ã¿ã©ã¯ãã£ããªãµã€ãããŠãŒã¶ãŒå¯Ÿå¿åãµãŒãã¹ã®æ§ç¯ãå¯èœã§ãããšã³ã¿ãŒãã©ã€ãºã¬ãã«ã®ã·ã¹ãã éçºã«ãããŠãããã°ãã°VB.NETãé©çšãããŠããããšãèŠåããããŸãã
ãã®ä»ã«ããã¢ãã€ã«ã¢ããªã®éçºããã²ãŒã éçºãæè²çšã®ããã°ã©ãã³ã°ãªã©ãVB.NETã®æŽ»èºã®å Žã¯å€å²ã«ããã£ãŠããŸãããã®ããã«ãVB.NETã¯å€æ§ãªã¢ããªã±ãŒã·ã§ã³éçºã«å©çšå¯èœãªæè»æ§é«ãèšèªã§ãããå€ãã®éçºè ã«ãšã£ãŠéèŠãªããŒã«ã®äžã€ã§ãããšèšããã§ãããã
VB.NETã®ç°å¢èšå®ãšéçºããŒã«
å¿ èŠãªãœãããŠã§ã¢ãšç°å¢èšå®æé
VB.NETã䜿ãããã«ãŸãå¿ èŠãªã®ã¯ãé©åãªéçºç°å¢ãæ§ç¯ããããšã§ããMicrosoft Visual Studioãäžè¬çãªéžæè¢ãšãªããŸãããã®IDEã¯èšèªã ãã§ãªãã.NET Frameworkã.NET CoreããµããŒãããŠãããæé©ãªVB.NETéçºãšã¯ã¹ããªãšã³ã¹ãåŸãããšãã§ããŸããVB.NETãå§ããã«ã¯ãVisual Studioã®ææ°çãMicrosoftã®å ¬åŒãµã€ãããããŠã³ããŒãããã€ã³ã¹ããŒã«ããå¿ èŠããããŸãã
次ã«ãVisual Studioãèµ·åããæ°ãããããžã§ã¯ããäœæããŸããããã§ãVisual Basicããéžæããåžæãããããžã§ã¯ãã¿ã€ãïŒWindows ãã©ãŒã ã¢ããªã±ãŒã·ã§ã³ãã³ã³ãœãŒã«ã¢ããªã±ãŒã·ã§ã³ãªã©ïŒãæå®ããŸããèšå®ã倧åã§ãæ£ãããã¬ãŒã ã¯ãŒã¯ããŒãžã§ã³ãéžæãããããžÐµÐºÑã®ããããã£ã調æŽããå¿ èŠããããŸãã
æåŸã«ãããžã§ã¯ããã³ãã¬ãŒãã«æ²¿ã£ãŠé©åãªãã¡ã€ã«æ§é ãæ§ç¯ããŠãããŸããåç §èšå®ãªã©ãéèŠã§ããããããžã§ã¯ãå ã§äœ¿çšããåçš®ã©ã€ãã©ãªãããŒã«ãšã®æŽåæ§ã確ä¿ããããã«é©åãªèšå®ãè¡ããŸãããããã®ã¹ãããã«åŸãããšã§ãVB.NETã«ããããã°ã©ãã³ã°ãã¹ã ãŒãºã«é²ããããŸãã
Visual StudioãšVB.NETã®é£æº
Visual Studioã¯ãVB.NETã®ã³ãŒãã£ã³ã°ã«æé©ãªç°å¢ãæäŸããŠããŸããIntelliSenseãšããã³ãŒãè£å®æ©èœããAPIãã¡ãœãããç°¡åã«åç §ã§ããããã«ããããšã§ããã°ã©ãã³ã°ãå¹çåããŸãããŸããVisual Studioã¯ãããã°æ©èœãéåžžã«å å®ããŠããããã¬ãŒã¯ãã€ã³ããèšå®ããããã¹ãããå®è¡ããããšãå¯èœã§ãã
ããã«ããããžã§ã¯ã管çããŒã«ãšããŠãåªããŠããããœãªã¥ãŒã·ã§ã³ãšã¯ã¹ãããŒã©ãŒãéããŠãã¡ã€ã«ããããžã§ã¯ãã®æ§æãç°¡åã«ç¢ºèªã§ããŸããã³ãŒãã®å€æŽå±¥æŽã管çããããã®ããŒãžã§ã³ç®¡çã·ã¹ãã ãšã®çµ±åãå¯èœã§ãã
Visual Studioã«ã¯ãã³ãŒãã®èªåæžåŒèšå®ããªãã¡ã¯ã¿ãªã³ã°ããŒã«ãªã©ãVB.NETã®ããã°ã©ãã³ã°ããµããŒãããå€ãã®è£å©æ©èœãå«ãŸããŠããŸãããããã®ããŒã«ã¯VB.NET éçºè ã«ãšã£ãŠéåžžã«äŸ¡å€ãé«ããããé«å質ãªã³ãŒããçæããããã®æéãšåŽåãçãããšãã§ããŸãã
è¿œå ããŒã«ãšãšã¯ã¹ãã³ã·ã§ã³ã®æŽ»çš
é«å質ãªãœãããŠã§ã¢ãè¿ éã«éçºããããã«ã¯ãVisual Studioæ¬äœä»¥å€ã«ãããŸããŸãªè¿œå ããŒã«ããšã¯ã¹ãã³ã·ã§ã³ã掻çšããããšã倧åã§ããäŸãã°ãReSharperãCodeRushã¯ã³ãŒãã®ãªãã¡ã¯ã¿ãªã³ã°ãå質æ¹åãå©ããçç£æ§ãé«ããŸãããããã®ããŒã«ã¯IDEãè¶ ããã¢ããªã·ã¹æ©èœã匷åãªã³ãŒããžã§ãã¬ãŒã·ã§ã³æ©èœãæäŸããæ¥ã ã®éçºäœæ¥ãå©ããŸãã
ãŸããNuGetã¯.NETéçºè ã«ãšã£ãŠäžå¯æ¬ ãªããã±ãŒãžç®¡çããŒã«ã§ããããã掻çšããããšã§å€éšã©ã€ãã©ãªã®ã€ã³ã¹ããŒã«ãã¢ããããŒããéåžžã«ç°¡åã«ãªãããããžã§ã¯ãã®äŸå管çãç°¡åã«è¡ããŸããNuGetããã±ãŒãžãããŒãžã£ãŒãéããŠãå¿ èŠãªã³ã³ããŒãã³ããæ€çŽ¢ãããããžã§ã¯ãã«è¿ éã«çµ±åãå¯èœã§ãã
ããã«ãVisual Studioã®ãšã¯ã¹ãã³ã·ã§ã³ããŒã±ãããã¬ã€ã¹ã掻çšããããšã§ãã³ãŒãã®å質ãåäžãããããç¹å®ã®éçºã¿ã¹ã¯ã容æã«ããããã®æ¡åŒµæ©èœãèŠã€ããããšãã§ããŸãããããã¯ãã°ãã°ã³ãã¥ããã£ã«ãã£ãŠéçºãããç¡æãŸãã¯ææã§æäŸãããŠããŸãã
éçºç°å¢ã®ã«ã¹ã¿ãã€ãº
å¹ççãªéçºãè¡ãããã«ã¯ãåã ã®éçºè ã«åãããéçºç°å¢ã®ã«ã¹ã¿ãã€ãºã倧åã§ããVisual Studioã§ã¯ãããã¹ããšãã£ã¿ã®ãã©ã³ããµã€ãºãè²ã調æŽããããšãå¯èœã§ããããŠã£ã³ããŠã®ã¬ã€ã¢ãŠããèªç±ã«é 眮ãå€æŽå¯èœã§ããéçºè ã®å¥œã¿ãããŒãºã«åãããã«ã¹ã¿ãã€ãºãè¡ãããšã§ãäžæ¥äžå¿«é©ã«ã³ãŒããæžãç¶ããããšãã§ããŸãã
ããŒããŒãã·ã§ãŒãã«ããã®èšå®ãéèŠãªã«ã¹ã¿ãã€ãºã®äžã€ã§ããé »ç¹ã«äœ¿çšããæ©èœãã³ãã³ãã«ã¯ã·ã§ãŒãã«ãããå²ãåœãŠãŠããããšã§ãããŠã¹æäœãæžããé床ãäžããããšãã§ããŸãããŸããVisual Studioã®ãªãã·ã§ã³ãéããŠããã«ãããããã°ããããã€ãšãã£ãéçºããã»ã¹ãåã ã®ããŒãºã«åãããŠã«ã¹ã¿ãã€ãºã§ããŸãã
ããã«ãåå¥ã®ãããžã§ã¯ãããšã«ç°å¢èšå®ãã«ã¹ã¿ãã€ãºããããšã§ããããžã§ã¯ãåºæã®èŠä»¶ã«å¿ããéçºãå¯èœã«ãªããŸããäŸãã°ãã³ãŒãã£ã³ã°ã¹ã¿ã€ã«ãã«ãŒã«ã»ããã®æå®ãç¹å®ãããžã§ã¯ãã«å°çšã®ãšã¯ã¹ãã³ã·ã§ã³ãé©çšãããªã©ã§ãã现ããèšå®ã®èª¿æŽã«ãã£ãŠãéçºå¹çã®åäžãšãã°ã®ãªã¹ã¯äœæžãæåŸ ã§ããŸãã
VB.NETã®ããã°ã©ãã³ã°åºç€
ææ³ãšåºæ¬çãªæ§æ
VB.NET (Visual Basic .NET)ã¯ããŠãŒã¶ãŒãã¬ã³ããªãŒãªããã°ã©ãã³ã°èšèªã§ããã.NETãã¬ãŒã ã¯ãŒã¯äžã§åäœããŸãããã®ææ³ã¯è±èªã«è¿ããèŠããããããŒã¯ãŒãã䜿çšããŠããŸããäŸãã°ããµãã«ãŒãã³ãéå§ããéã«ã¯ãSubãããŒã¯ãŒãã䜿çšããçµäºæã«ã¯ãEnd Subãã䜿ããŸããããã«ãããã³ãŒãã®èªã¿æžãã容æã«ãªããŸãã
VB.NETã§ã¯ãå³å¯ãªåãã§ãã¯ãè¡ããããšã©ãŒãæªç¶ã«é²ãããšãã§ããŸãããŸãããªããžã§ã¯ãæåèšèªã§ãããããã¯ã©ã¹ãç¶æ¿ãããªã¢ãŒãã£ãºã ãšãã£ãæŠå¿µã掻çšããããšãå¯èœã§ãããããã¯ãããžã§ã¯ãã倧ãããªã£ãéã«ãã³ãŒãã®åå©çšæ§ãšä¿å®æ§ãé«ããããã«éèŠãšãªããŸãã
åºæ¬çãªæ§æã¯ãä»ã®ããã°ã©ãã³ã°èšèªãšå ±éããéšåãå€ãã§ãããVB.NETç¹æã®ãWithãæ§æãªã©ãçç£æ§ãåäžãããããã®æ©èœãè±å¯ã«åãã£ãŠããŸãããã®ãããéçºéçšã«ãããŠè¿ éãã€å¹ççãªã³ãŒãã£ã³ã°ãå¯èœãšãªã£ãŠããŸãã
ããŒã¿åãšå€æ°ã®äœ¿ãæ¹
VB.NETã«ãããããŒã¿åã«ã¯ããIntegerã(æŽæ°)ããDoubleã(æµ®åå°æ°ç¹æ°)ããStringã(æåå)ãšãã£ãåºæ¬çãªåããããŸããããããæ£ãã䜿ãåããããšã¯ãå¹çã®è¯ãããã°ã©ã ãäœæããããã«äžå¯æ¬ ã§ããç¹ã«ãæ°å€èšç®ãè¡ãéã«ã¯ãå¿ èŠãªç²ŸåºŠãšã¡ã¢ãªäœ¿çšéãèæ ®ããŠé©åãªããŒã¿åãéžæããå¿ èŠããããŸãã
å€æ°ã䜿çšããããšã§ãèšç®çµæããŠãŒã¶ãŒå ¥åãšãã£ãããŒã¿ãããã°ã©ã å ã§äžæçã«ä¿åã§ããŸããVB.NETã§ã¯å€æ°å®£èšæã«ãDimããšããããŒã¯ãŒãã䜿ããããŒã¿åãæ確ã«æå®ããããšã«ãã£ãŠåå®å šæ§ãä¿ã¡ãŸããäŸãã°ããDim count As Integerããšå®£èšããããšã§ãcountå€æ°ãæŽæ°åã§ããããšã宣èšããŠããŸãã
ãŸããå®æ°ã䜿çšããããšã§ãããã°ã©ã å šäœã§å€æŽãããªãå€ãäžç®æã§ç®¡çã§ãããããä¿å®æ§ã®èŠ³ç¹ãããæå¹ã§ããå®æ°ã¯ãConstãããŒã¯ãŒããçšããŠå®£èšãããäŸãã°ãConst Pi As Double = 3.14159ããšãã£ã圢åŒã§äœ¿çšããŸãã
å¶åŸ¡æ§é ïŒæ¡ä»¶æãšç¹°ãè¿ãæ
VB.NETããã°ã©ã å ã§ã®æµãã管çããã«ã¯ãæ¡ä»¶æãšç¹°ãè¿ãæãäžå¯æ¬ ã§ããæ¡ä»¶æã«ã¯ãIf … Then … Elseããšããæ§æã䜿ãããæ¡ä»¶ã«å¿ããŠç°ãªãã³ãŒããããã¯ãå®è¡ããããšãã§ããŸãããã®æè»æ§ã¯ããŠãŒã¶ãŒã®å ¥åãèšç®çµæã«åºã¥ããŠç°ãªãã¢ã¯ã·ã§ã³ãåãå¿ èŠãããå Žåã«ç¹ã«æçšã§ãã
ç¹°ãè¿ãæã«ã¯ããFor … NextãããWhile … End WhileãããDo … Loopããšãã£ãè€æ°ã®åœ¢åŒããããããããã«äžå®ã®æ¡ä»¶ãæºãããããŸã§ã³ãŒããããã¯ãç¹°ãè¿ãå®è¡ãã圹å²ãæã£ãŠããŸããããšãã°ãããäžèŠ§ã®ãã¹ãŠã®ã¢ã€ãã ã«å¯ŸããŠåŠçãè¡ãããå Žåããç¹å®ã®æ¡ä»¶ãæºãããããŸã§åŠçãç¹°ãè¿ãããå Žåã«äœ¿ããŸãã
ãããã®å¶åŸ¡æ§é ãé©åã«äœ¿ãåããããšã§ãããã°ã©ã ã®è«çæ§é ãæ確ã«ãªããèªã¿ãããä¿å®ããããã³ãŒããäœæã§ããŸãããŸããç¡çšãªèµ°æ»ãé¿ããããã®ãExitãããŒã¯ãŒãããããã«ãŒããæ¡ä»¶æããå³æã«æãåºãããšãå¯èœã§ãã
ãšã©ãŒåŠçãšäŸå€ç®¡ç
ãœãããŠã§ã¢éçºã«ãããŠãšã©ãŒåŠçã¯æ¬ ãããªãèŠçŽ ã§ãããVB.NETã«ãããäŸå€ç®¡çæ©èœã¯éåžžã«åŒ·åã§ããããã°ã©ã å®è¡äžã«äºæãã¬ãšã©ãŒãçºçããå ŽåãäŸå€ãã¹ããŒããããããé©åã«ãTry … Catch … Finallyããããã¯ã§ææãåŠçããããšãã§ããŸãã
ãTryããããã¯å ã«ã¯ãšã©ãŒãçºçããå¯èœæ§ã®ããã³ãŒããèšè¿°ãããCatchããããã¯ã§ã¯å ·äœçãªäŸå€ã¿ã€ããæå®ããããšã§ãããããã®ãšã©ãŒç¶æ³ã«å¿ãã察åŠãè¡ããŸããäŸå€ãçºçããªãã£ãå Žåã§ãããFinallyããããã¯ãå®è¡ããããªãœãŒã¹ã®è§£æŸãã¯ãªãŒã³ã¢ããäœæ¥ãªã©ã確å®ã«è¡ãããšãã§ããŸãã
ãã®äŸå€ç®¡çæ©èœã掻çšããããšã§ãããã°ã©ã ã®å®å®æ§ãšä¿¡é Œæ§ãé«ãããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãåäžãããããšãå¯èœã§ãããšã©ãŒã¡ãã»ãŒãžããŠãŒã¶ãŒã«é©åã«è¡šç€ºããããšã§ãçºçããåé¡ã«ã€ããŠã®ç解ãå©ããããšãã§ããŸãã
VB.NETãšã¯ïŒ.NETãã¬ãŒã ã¯ãŒã¯ã§ã®ããã°ã©ãã³ã°
VB.NETã§ã®ãªããžã§ã¯ãæåããã°ã©ãã³ã°
VB.NETã¯ãMicrosoftã«ãã£ãŠéçºããããªããžã§ã¯ãæåããã°ã©ãã³ã°èšèªã§ããã.NETãã¬ãŒã ã¯ãŒã¯äžã§åäœããŸããé¡äŒŒèšèªã®C#ãšäžŠã³ã.NETã®ç°å¢ã§åŒ·åãªã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ããããã®äž»èŠãªèšèªãšããŠåºã䜿ãããŠããŸãã
ãªããžã§ã¯ãæåããã°ã©ãã³ã°ã®æŠå¿µã¯ãVB.NETã®æ žãšãªãéšåã§ãããéçºè ãã¢ãžã¥ã©ãŒãã€åå©çšå¯èœãªã³ãŒããæžããããã«èšèšãããŠããŸãããããã®æŠå¿µã«ã¯ãã¯ã©ã¹ãšãªããžã§ã¯ãã®å®çŸ©ãç¶æ¿ãããªã¢ãŒãã£ãºã ãã«ãã»ã«åãã€ã³ã¿ãŒãã§ãŒã¹ã®äœ¿çšãªã©ãå«ãŸããŸãã
ãã®èšäºã§ã¯ããããã®åºæ¬çãªãªããžã§ã¯ãæåæŠå¿µã«ã€ããŠèª¬æããVB.NETã§ã®ããã°ã©ãã³ã°ãå§ããéã«ç解ããŠããã¹ãèŠçŽ ãã玹ä»ããŸãã
ã¯ã©ã¹ãšãªããžã§ã¯ãã®å®çŸ©
ã¯ã©ã¹ã¯VB.NETã«ããããªããžã§ã¯ãæåããã°ã©ãã³ã°ã®åºç€çãªæ§é ã§ããã¯ã©ã¹ã¯ãããããã£ãã¡ãœãããã€ãã³ããªã©ã®ã¡ã³ããŒãæã€ããŒã¿åãè¡šãããªããžã§ã¯ãã®èšèšå³ã®åœ¹å²ãæãããŸãã
ãªããžã§ã¯ãã¯ã¯ã©ã¹ããã€ã³ã¹ã¿ã³ã¹åãããå®äœã§ãããã°ã©ã äžã§æ±ããŸããåãªããžã§ã¯ãã¯ã¯ã©ã¹ãå®çŸ©ããæ¯ãèããç¹åŸŽãæã¡ãç¬ç«ããç¶æ ãä¿æããããšãã§ããŸãã
ã¯ã©ã¹ãå¹æçã«äœ¿çšããããšã§ãéçºè ã¯ããŒã¿ãšæ©èœæ§ãäžã€ã«ãŸãšããŠãä¿å®æ§ã®é«ãã³ãŒããæžãããšãã§ããŸãããŸãããªããžã§ã¯ãã®åå©çšã«ãã£ãŠéçºããã»ã¹ãå éãããããšãå¯èœã«ãªããŸãã
ç¶æ¿ãããªã¢ãŒãã£ãºã ãã«ãã»ã«å
ç¶æ¿ã¯ãªããžã§ã¯ãæåã®éèŠãªæŠå¿µã§ãæ¢åã®ã¯ã©ã¹ããæ°ããã¯ã©ã¹ãäœæããããã»ã¹ã§ããVB.NETã«ãããŠç¶æ¿ã¯ãã³ãŒãã®åå©çšæ§ãé«ããè€éããæžå°ãããå©ãã«ãªããŸãã
ããªã¢ãŒãã£ãºã ã¯ãåäžã®ã€ã³ã¿ãŒãã§ãŒã¹ãæã¡ãªãããç°ãªãæ¯ãèããå®çŸããææ³ã§ããããã«ãããéçºè ã¯äžã€ã®åã§ç°ãªããªããžã§ã¯ããžã®åç §ãç°¡åã«äº€æããããšãå¯èœã«ãªããŸãã
ã«ãã»ã«åã¯ããªããžã§ã¯ãããã®å éšå®è£ ãé èœããå€éšããçŽæ¥ã¢ã¯ã»ã¹ãããªãããã«ããããã»ã¹ã§ããVB.NETã§ã¯ãããããã£ãã¡ãœããã®ã¢ã¯ã»ã¹ä¿®é£Ÿåã«ãã£ãŠå®çŸãããŸããã«ãã»ã«åã䜿çšããããšã§ããªããžã§ã¯ãã®äžæ£æäœãé²ããããŒã¿ã®æŽåæ§ãä¿ã€ããšãã§ããŸãã
ã€ã³ã¿ãŒãã§ãŒã¹ã®å©çšãšå®è£
ã€ã³ã¿ãŒãã§ãŒã¹ã¯ããã®ã¡ãœãããäœãè¡ããã§ã¯ãªããã©ã®ã¡ãœãããæã€ãã®ã¿ãå®çŸ©ããŸããVB.NETã«ãããŠã¯ãã¯ã©ã¹ãã€ã³ã¿ãŒãã§ãŒã¹ãå®è£ ããããšã§ãç¹å®ã®æ©èœãä¿èšŒããŸãã
ã€ã³ã¿ãŒãã§ãŒã¹ã¯ãç°ãªãã¯ã©ã¹ãå ±éã®å¥çŽãå ±æããããšãã§ããããã«ããç¹ã«ç°ãªãçš®é¡ã®ãªããžã§ã¯ãéã§ã®çžäºéçšæ§ãå®çŸããéã«åœ¹ç«ã¡ãŸãã
ã€ã³ã¿ãŒãã§ãŒã¹ã䜿çšããããšã§ãéçºè ã¯æè»æ§ãšäœçµåãªèšèšãæšé²ããããšãå¯èœã§ããããã¯ç¹ã«å€§èŠæš¡ãªã·ã¹ãã ããå€æ§ãªã³ã³ããŒãã³ããçžäºäœçšããã¢ããªã±ãŒã·ã§ã³ã«ãããŠéèŠãšãªããŸãã
ãžã§ããªãã¯ã¹ãšã³ã¬ã¯ã·ã§ã³
ãžã§ããªãã¯ã¹ã¯ãåå®å šãªã³ãŒããæžãããã®VB.NETã®æ©èœã§ãç°ãªãåã®ããŒã¿ãæ±ãéã«æè»æ§ãšåå©çšæ§ãæäŸããŸãããžã§ããªãã¯ã¹ãå©çšããããšã§ãåæå®ãäžè¬åããä»»æã®åã§åäœããã³ãŒããäœæã§ããŸãã
ã³ã¬ã¯ã·ã§ã³ã¯ããªããžã§ã¯ãã®ã°ã«ãŒããæäœããããã®åŒ·åãªæ段ã§ããVB.NETã§ã¯ãListãDictionaryãHashSetãªã©ãããŸããŸãªãžã§ããªãã¯ã³ã¬ã¯ã·ã§ã³ã¯ã©ã¹ãæäŸãããŠããããããã䜿çšããããšã§éçºè ã¯ããŒã¿ã®ç®¡çãç°¡åã«è¡ãããšãã§ããŸãã
ãžã§ããªãã¯ã³ã¬ã¯ã·ã§ã³ã®äœ¿çšã«ãããéçºè ã¯åå®å šãªã³ãŒããä¿ã¡ã€ã€ãããã©ãŒãã³ã¹ã®æ¹åãšã³ãŒãã®ã·ã³ãã«åãå®çŸããããšãã§ããŸããããã¯ãç¹ã«å€§éã®ããŒã¿ãæ±ãã¢ããªã±ãŒã·ã§ã³éçºã«ãããŠãéèŠã§ãã
VB.NETã®é«åºŠãªæ©èœãšãã¯ããã¯
VB.NETã¯ãã€ã¯ããœããã«ãã£ãŠéçºããã.NETãã¬ãŒã ã¯ãŒã¯äžã§åäœããããã°ã©ãã³ã°èšèªã®äžã€ã§ããã·ã³ãã«ãªæ§æã«ããåå¿è ã«ã芪ãã¿ããããåæã«ãããã§ãã·ã§ãã«ãªéçºè ãå¿ èŠãšããé«åºŠãªæ©èœãæäŸããŸãã以äžã§VB.NETã®é«åºŠãªç¹åŸŽãšãã¯ããã¯ã«ã€ããŠè§£èª¬ããŸãã
ããŒã¿ããŒã¹ãšã®æ¥ç¶ãšæäœ
VB.NETã§ã¯ADO.NETãšããããŒã¿ã¢ã¯ã»ã¹ã³ã³ããŒãã³ãã䜿çšããŠãåçš®ããŒã¿ããŒã¹ãšæ¥ç¶ããå¹ççã«æäœãè¡ãããšãå¯èœã§ããADO.NETã掻çšããããšã§ãããŒã¿ã®èªã¿èŸŒã¿ãæŽæ°ãåé€ãªã©ã®CRUDæäœãç°¡åã«è¡ããŸãã
æ¥ç¶æååãçšããŠããŒã¿ããŒã¹ãžã®æ¥ç¶ã確ç«ããããšããå§ãŸããã³ãã³ããªããžã§ã¯ãã䜿çšããŠSQLã¯ãšãªãå®è¡ããããŒã¿ãæäœããŸãããã®éããã©ã¡ãŒã¿ãŒã掻çšããããšã§SQLã€ã³ãžã§ã¯ã·ã§ã³æ»æããä¿è·ããããšãéèŠã§ãã
ããã«ãVB.NETã§ã¯DataSetãDataTableãçšããŠãããŒã¿ãã¡ã¢ãªäžã«æ ŒçŽãããªãã©ã€ã³ã§ã®ããŒã¿æäœãè¡ãããšãã§ããŸããããã«ãããæäœã®å¹çåããã³ããã©ãŒãã³ã¹ã®åäžãå³ãããšãã§ããŸãã
ãã¡ã€ã«IOãšãªãœãŒã¹ç®¡ç
VB.NETã§ã¯System.IOåå空éãçšããããšã§ããã¡ã€ã«ããã£ã¬ã¯ããªã®æäœãçŽæçã«è¡ããŸãããã¡ã€ã«ã®èªã¿æžãã¯FileStreamãStreamReaderãStreamWriterã䜿ã£ãŠè¡ãããšãã»ãšãã©ã§ãã
ãã¡ã€ã«IOã«é¢é£ããŠããªãœãŒã¹ã®ç®¡çãéèŠãªåŽé¢ã§ããVB.NETã§ã¯Usingæã䜿çšããããšã§ã察å¿ãããªãœãŒã¹ãé©åã«è§£æŸãããããšãä¿èšŒããŸããããã«ãããã¡ã¢ãªãªãŒã¯ã®ãªã¹ã¯ãæžãããªãããã³ãŒãã®å®å šæ§ãåäžãããããšãã§ããŸãã
å ããŠãPathã¯ã©ã¹ãå©çšããããšã§ããã¡ã€ã«ãã¹ã®æäœããã簡䟿ã«è¡ãããšãå¯èœã§ãããã®ã¯ã©ã¹ã¯ããã¡ã€ã«ãã¹ã®çµåãå解ãæ¡åŒµåã®ååŸãªã©ããã¡ã€ã«ã«é¢é£ããå€ãã®äŸ¿å©ãªæ©èœãæäŸããŸãã
ãã«ãã¹ã¬ããã£ã³ã°ãšäžŠè¡åŠç
ã¢ãã³ãªã¢ããªã±ãŒã·ã§ã³éçºã«ã¯ãè€æ°ã®åŠçãåæã«è¡ããã«ãã¹ã¬ããã£ã³ã°ã䞊è¡åŠçãäžå¯æ¬ ã§ããVB.NETã§ã¯System.Threadingåå空éãçšããŠã¹ã¬ãããäœæãã管çããããšãå¯èœã§ãã
Taskã¯ã©ã¹ã䜿çšããããšã§ãããã¯ã°ã©ãŠã³ãã§éåæçã«åŠçãè¡ãããšãã§ããUIãããªãŒãºããããšãªãããŠãŒã¶ãŒäœéšãåäžãããããšãå¯èœã§ãããŸããParallelã¯ã©ã¹ãå©çšããããšã§ãç°¡æãªåœ¢ã§ããŒã¿ã®äžŠååŠçãè¡ãããšãã§ããŸãã
ããããã¹ã¬ããã®ç«¶åãé¿ããããã«ã¯ãããã¯æ©æ§ãé©åã«äœ¿çšãããªã©ãåæåã®ãã¯ããã¯ãå¿ èŠã§ããããã«ã¯Monitorã¯ã©ã¹ãMutexãSemaphoreãªã©ãå©çšã§ããå®å šãªäžŠè¡åŠçã®å®çŸãå©ããŸãã
ãªãã¬ã¯ã·ã§ã³ãšå±æ§
ãªãã¬ã¯ã·ã§ã³ã¯ãå®è¡æã«ãªããžã§ã¯ãã®åæ å ±ã調æ»ããåçã«ã¡ã³ããŒïŒã¡ãœãããããããã£ãã€ãã³ãçïŒã«ã¢ã¯ã»ã¹ããæ©èœã§ããVB.NETã§ã¯System.Reflectionåå空éãéããŠãªãã¬ã¯ã·ã§ã³ãå©çšããããšãã§ããŸãã
ãªãã¬ã¯ã·ã§ã³ãå©çšããããšã§ãããã°ã©ã å ã®ã¡ã¿ããŒã¿ãèªã¿èŸŒãã ããå±æ§ãçšããŠã¯ã©ã¹ãã¡ã³ããŒã«è¿œå æ å ±ãäžããããšãã§ããŸãããŸããæ°ãããªããžã§ã¯ãã€ã³ã¹ã¿ã³ã¹ã®äœæãããªãã¬ã¯ã·ã§ã³ãçšããŠè¡ãããšãå¯èœã§ãã
ããã«ãå±æ§ã¯ããŒã¿æ€èšŒãã·ãªã¢ã©ã€ãŒãŒã·ã§ã³å¶åŸ¡ãã€ã³ã¿ãŒãªãã©ããªãã£ãªã©æ§ã ãªã¢ã¹ãã¯ãã§éåžžã«åœ¹ã«ç«ã¡ãŸããäŸãã°ãã«ã¹ã¿ã å±æ§ãäœæããŠã¡ãœãããããããã£ã«è¿œå ããããšã§ãããã°ã©ã ã®æ¡åŒµæ§ãåå©çšæ§ãåäžãããããšãã§ããŸãã
ãVB.NETãããžã§ã¯ãã®ç®¡çãšãã¹ããã©ã¯ãã£ã¹ããšããããŒãã¯VB.NETéçºãè¡ãéã«éåžžã«éèŠã§ããé«å質ã§ä¿å®å¯èœãªãœãããŠã§ã¢ãéçºããããã«ã¯ãæé©ãªãããžã§ã¯ã管çãšéçºãã©ã¯ãã£ã¹ãç解ããé©çšããããšãå¿ é ã§ãã
VB.NETã¯Microsoftã®.NETãã¬ãŒã ã¯ãŒã¯äžã§åäœããããã°ã©ãã³ã°èšèªã§ãããVisual Basicã®åŸç¶èšèªãšããŠäœçœ®ã¥ããããŠããŸãããã®èšèªã¯è±å¯ãªã©ã€ãã©ãªãããŒã«ããã¬ãŒã ã¯ãŒã¯ã«ã¢ã¯ã»ã¹ã§ããWindowsã¢ããªã±ãŒã·ã§ã³ã ãã§ãªãããŠã§ããã¢ãã€ã«ã¢ããªã±ãŒã·ã§ã³ã®éçºã«ãå©çšãããŠããŸãã
ããã§ã¯ãVB.NETãããžã§ã¯ããå¹ççã«ç®¡çããéçºã®ãã¹ããã©ã¯ãã£ã¹ãé©çšããããã®ã¬ã€ããšããŠãããã€ãã®éèŠãªãã€ã³ãã«çŠç¹ãåœãŠãŠãããŸãã
ãããžã§ã¯ãæ§é ãšã¢ãžã¥ãŒã«å
VB.NETãããžã§ã¯ãã管çããäžã§æåã«èæ ®ãã¹ãã¯ãé©åãªãããžã§ã¯ãæ§é ãšã¢ãžã¥ãŒã«åã®æ¡çšã§ããåããããããããžã§ã¯ãæ§é ã¯ãéçºããã»ã¹ãã¹ã ãŒãºã«ããããŒã ã¡ã³ããŒéã®å ±åäœæ¥ãå¹çåããŸãã
ã¢ãžã¥ãŒã«åã¯ãã³ãŒãã®åå©çšæ§ãé«ããããšã«è²¢ç®ãã倧ããªãããžã§ã¯ãã§ã®äœæ¥ãã·ã³ãã«ã«ããããšãã§ããŸããåæ©èœãã³ã³ããŒãã³ããç¬ç«ããã¢ãžã¥ãŒã«ãšããŠèšèšããããããçµã¿åãããŠããã°ã©ã å šäœãæ§ç¯ããŸãããã®ã¢ãããŒãã«ãããä¿å®æ§ãšæ¡åŒµæ§ãåäžããŸãã
ãããžã§ã¯ãæ§é ãèšèšããéã«ã¯ãåå空éã®é©åãªäœ¿çšããã©ã«ãã®éå±€åãªã©ããããžã§ã¯ãã®èŠæš¡ãããŒã ã®ããŒãºã«å¿ããæ¹æ³ãéžæããããšã倧åã§ãã
ãœãŒã¹ã³ãŒã管çãšããŒãžã§ã³ç®¡ç
ãããžã§ã¯ãã®æé·ã«äŒŽããå¹æçãªãœãŒã¹ã³ãŒã管çãšããŒãžã§ã³ç®¡çã®éèŠæ§ã¯é«ãŸããŸããããã«ãããããŒã ã¡ã³ããŒãåæã«äœæ¥ãè¡ãéã®ã³ã³ããªã¯ããé¿ããéå»ã®ããŒãžã§ã³ã«ç°¡åã«æ»ããããã«ãªããŸãã
ãœãŒã¹ã³ãŒã管çã·ã¹ãã ïŒSCMïŒã®äœ¿çšã¯ããã®ããã»ã¹ã容æã«ããŸããGitãSubversionïŒSVNïŒã¯ãæ¥çã§åºãæ¡çšãããŠããSCMããŒã«ã®äŸã§ãããããã®ããŒã«ã¯ããŒãžã§ã³ã®è¿œè·¡ãå€æŽã®å·®åæ¯èŒãããŒãžæ©èœãæäŸãããããžã§ã¯ãã®é²æãäžå 管çããããšãã§ããŸãã
ããŒãžã§ã³ç®¡çæŠç¥ãšããŠã»ãã³ãã£ã㯠ããŒãžã§ãã³ã°ãªã©ã®ã«ãŒã«ãæ¡çšãããšããªãªãŒã¹ã®äºå®ãšç®¡çãããåççã«è¡ããããã«ãªããŸãã
ãããã°ãšããã©ãŒãã³ã¹æé©å
VB.NETã¢ããªã±ãŒã·ã§ã³ã®éçºã«ãããŠãããã°ã¯äžå¯æ¬ ã§ããããã¡ããšãããããã°ããã»ã¹ãå°å ¥ããããšã¯ããšã©ãŒã®çºèŠãšä¿®æ£ãè¿ éåãããŸãã
çµ±åéçºç°å¢ïŒIDEïŒã§ããVisual Studioã¯VB.NETã«å¯Ÿå¿ãã匷åãªãããã°ããŒã«ãæäŸããŠããããã¬ãŒã¯ãã€ã³ãã®èšå®ãã¹ãããå®è¡ãå€æ°ã®ç£èŠãªã©è©³çŽ°ãªãããã°æäœãè¡ãããšãã§ããŸããåé¡ã®åå ãç¹å®ããå¹ççã«åé¡è§£æ±ºããããã«ãããã®ããŒã«ã掻çšããŸãããã
ãŸããããã©ãŒãã³ã¹ã®æé©åã¯ãŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ãåäžãããäžã§éèŠã§ããã³ãŒããããã¡ã€ã«ãå©çšããã¢ããªã±ãŒã·ã§ã³ã®å®è¡ã«ãããæéãåæããããã«ããã¯ãèŠã€ããŠæ¹åããããšãèå¿ã§ãã
ãŠããããã¹ããšç¶ç¶çã€ã³ãã°ã¬ãŒã·ã§ã³
éçºã®å段éã§ã®ãŠããããã¹ãã®å®è£ ã¯ããœãããŠã§ã¢ã®å質ä¿èšŒã®ããã«äžå¯æ¬ ãªã¹ãããã§ãããŠããããã¹ããéããŠåã³ã³ããŒãã³ããæ£ããæ©èœããŠãããã確èªããå°æ¥ã®å€æŽã«ãã£ãŠæ°ããªãã°ãçºçããªãããã«ããŸãã
ãŸããç¶ç¶çã€ã³ãã°ã¬ãŒã·ã§ã³ïŒCIïŒã®å®è·µã¯ãã³ãŒãã®çµ±åãç¶ç¶çã«è¡ãããã«ãããã¹ãã®èªååãå®çŸããããšã§ãéçºããã»ã¹ãå éåããŸãããã®ãã©ã¯ãã£ã¹ãæ¡çšããããšã§ãã³ãŒãã®å質ãç¶æããªããé«é »åºŠã§ã®ãªãªãŒã¹ã容æã«ãªããŸãã
ãŠããããã¹ããã¬ãŒã ã¯ãŒã¯ãšCIããŒã«ã®çµã¿åããã¯ãVB.NETãããžã§ã¯ãã«ãããä¿¡é Œæ§ã®é«ããœãããŠã§ã¢éçºãæ¯æŽããŸããMicrosoftã®Azure DevOpsãJenkinsãªã©ã®ããŒã«ããèªååãšãŠããããã¹ãã®çµ±åã«åœ¹ç«ã€ã§ãããã
ãŸãšã
VB.NETã¯ãã€ã¯ããœããã®.NETãã¬ãŒã ã¯ãŒã¯ãåºç€ãšããããã°ã©ãã³ã°èšèªã§ããç°¡æœã«é åãè¿°ã¹ããšã䜿ãããããæè»æ§ãããããªããžã§ã¯ãæåã®ç¹æ§ãæã£ãŠããŸããåå¿è ãããããã§ãã·ã§ãã«ãŸã§å¯Ÿå¿ããŠããããã¹ã¯ãããããŠã§ãããŒã¹ã®ã¢ããªã±ãŒã·ã§ã³éçºã«é©ããŠããŸããVisual Studioãšã®çµ±åã«ãããé«åºŠãªéçºããŒã«ãå©çšã§ããç¹ãé åã®äžã€ã§ããææ³ã¯çŽæçã§ãè¿ éãªã¢ããªã±ãŒã·ã§ã³éçºããµããŒãããŸãããšã©ãŒåŠçãããŒã¿ããŒã¹æäœãªã©ãããžãã¹ã§å¿ èŠãªæ§ã ãªã¿ã¹ã¯ãç°¡åã«å®è£ ã§ããŸããçŸä»£ããžãã¹ããŒãœã³ã«ãšã£ãŠãVB.NETã¯å¹ççãªéçºãå¯èœã«ããéèŠãªããŒã«ã§ãã