ãªã¹ããŒã«é¢ããããã€ãã®èšèïŒæç¶ãåããã°ã©ãã³ã°ãWebéçºãSQLã«ç²ŸéããITãããžã§ã¯ããããŒãžã£ãŒã ããžãã¹ããã»ã¹ã§ã®æ·±ãå®è£ ã«ã¯ãOOPã®è©³çŽ°ãªç¥èãå¿ èŠã§ããã åæ¥çã«äžèšã
ããã®ãããªããã°ã©ãã³ã°ã®ãžã§ãŒã¯ããããŸããããã°ã©ãã³ã°èšèªã¯ç¿åŸãç°¡åã§ããå€åœèªãšã¯ç°ãªããåèªãã»ãšãã©ãããŸããã å®éãã³ãã³ããé¢æ°ãã©ã€ãã©ãªãããŒã¿åãããã«ã¯æ§æã®ååãåŠã¶ããšã¯ãç¹ã«ãããã®å€ããç°ãªãèšèªã§é¡äŒŒããŠãããããããã»ã©é£ãããããŸããã ãã ãããã®ã¹ããŒãã¡ã³ãããžã§ãŒã¯ãšåŒã°ããã®ã¯çç±ããªãããã§ã¯ãããŸãããç¹å®ã®ããã°ã©ãã³ã°èšèªã§äœæ¥ããã«ã¯ãååããã©ãã€ã ã®åºç€ãããã³èšèªæšæºãç¥ãå¿ èŠããããŸãã ããããããã°ã©ãã³ã°ãã©ãã€ã ãšåæ§ã«ããªããžã§ã¯ãæåããã°ã©ãã³ã°ã«ã¯ããã¹ãŠã®èšèªã«æå¹ã§ããããããã®å Žåã«ã圹ç«ã€äžé£ã®ååãšã«ãŒã«ããããŸãã
ç§èªèº«ã¯ããªããžã§ã¯ãæåããã°ã©ãã³ã°ã®ååãç¿åŸããããã®ç¿çã³ãŒã¹ãéžæããŸãããããã¯ãCïŒã§åäœãããããžã§ã¯ãïŒã³ã³ãœãŒã«ã²ãŒã ãSnakeãïŒã®äœæã«åºã¥ããŠããŸãã ããã¯ãããã€ãã®äžä»£ãè¬çŸ©ã§æéãã€ã¶ãããããªã¹ãããã¢ã®çœé»æºåž¯é»è©±ã§éãã§ããåãèã§ãã ããããããªãã®ããã¡ããæžãããšã¯ãã¯ããã«æ¥œããããããŠæãéèŠãªããšã«ã¯ããã䟿å©ã ãšèšããªããã°ãªããŸããã ã²ãŒã ã®äœæäžã«ãæåž«ã¯OOPã®ãã¹ãŠã®ååãæããã«ãããããåååã¯ã課ãããéå±ãªçè«ãšããŠã§ã¯ãªããé ã®äžã§ãã§ã«çºçãã質åã«å¯Ÿãã解決çãšããŠèªèãããŸãã
ããã°ã©ã ã®éå§æã«ãç§ã¯ããã«éçºè ã䜿çšãã2ã€ã®ææ°ããŒã«ã«çªå ¥ããŸããã
- Visual Studioã¯ãå€ãã®ããã°ã©ãã³ã°èšèªçšã®çµ±åéçºç°å¢ã§ãã ãœãŒã¹ã³ãŒããšãã£ã¿ãŒãã¯ã©ã¹ãã¶ã€ããŒããããã¬ãŒãããã³ã³ã³ãœãŒã«ã«ç²Ÿéã§ããã®ã¯Visual Studioã§ãã
- GitHubã¯ãGitããŒãžã§ã³ç®¡çã·ã¹ãã ã«åºã¥ããŠãITãããžã§ã¯ããšãã®å ±åéçºããã¹ãããããã®WebãµãŒãã¹ã§ãã ãããç¥ã£ãŠãããšããããžã§ã¯ããã©ã®ããã«é 眮ãããŠããããç解ããå¿ èŠã«å¿ããŠãªãŒãã³ãœãŒã¹ã«åãæ¿ããŠã³ããŒãã以åã®ããŒãžã§ã³ã®ã³ãŒãã衚瀺ã§ããŸãã éçºç°å¢ãšã³ãŒããªããžããªãéä¿¡ããããã«ãSmartgitã¢ããªã±ãŒã·ã§ã³ã䜿çšãããŸãã
éžæããèšèªã¯CïŒã§ããããã§ã«å®è·µããç解ããŠããããã«ãOOPã®ååã¯åãã§ãããå¥ã®èšèªãåŠç¿ãããšãã«ç°¡åã«é©çšã§ããŸãã
æåã¯ãæåž«ã¯è£œåãéçºããããšããäºå®ã«çŠç¹ãåãããŸãã èã«èœã¡ãéžæã¯å¶ç¶ã§ã¯ãããŸãã-誰ããã²ãŒã ã®ããžãã¯ããã®æ©èœãšèŠä»¶ãç¥ã£ãŠããŸãã ãŸããéçºã§ã¯ãåæ段éã§å°æ¥ã®ãããžã§ã¯ãã®å šäœåãææ¡ããããšãéèŠã§ãã ãã®ãããªããžã§ã³ã¯ããããæå³ã®ãã段éã«å解ããå€ãã®çç¥ãåé¿ããã®ã«åœ¹ç«ã¡ãŸãã
æåã®2ã€ã®ã¬ãã¹ã³ã¯ãããã°ã©ãã³ã°ã«ãŸã£ããæ £ããŠããªã人ã§ãç°¡åã«ç解ã§ãããã®ã§ãã äŒçµ±çã«ãä»äºã¯å¹žããªãHelloãworldïŒãããå§ãŸããŸãã
namespace Snake { class Program { static void Main( string[] args ) { Console.WriteLine("Hello world"); Console.ReadLine(); } } }
ããäžåºŠãé¢æ°ãšã¯äœããã©ã®ããã«æ©èœããããå€æ°ã¯ã©ã®ããã«äœæãããããç¹°ãè¿ããŸããã ã³ãŒããèšè¿°ããããã«ãæç¶ãåã®ã¢ãããŒãã䜿çšãããŸã-å ¥åã§æå®ããããã©ã¡ãŒã¿ãŒã䜿çšããŠãé¢æ°ãé 次é©çšãããŸãã mainã®mainé¢æ°å ã«ãã¹ãŠã®ã³ãŒããäœæããããšã®2ã€ã®æ¬ ç¹ãããã«æããã«ãªããŸããã³ãŒãã®æé·ãšããã®é¢æ°å ã§ã®å€æ°ã®å®£èšã§ãã
namespace Snake { class Program { static void Main( string[] args ) { int x1 = 1; int y1 = 3; char sym1 = '*'; Draw( x1, y1, sym1 ); int x2 = 4; int y2 = 5; char sym2 = '#'; Draw( x2, y2, sym2 ); Console.ReadLine(); } static void Draw(int x, int y, char sym) { Console.SetCursorPosition( x, y ); Console.Write( sym ); } } }
å®éãæåã®2ã€ã®ã¯ã©ã¹ã®åŸã¯ãããªãè€éãªããšãç解ããããšããåã³ãæããŠããŸãã èªåã§ãã§ãã¯ããã®ã§ãèŽè¡ã®ã³ã¡ã³ãã賌èªããŸããã
3åç®ã®è¬çŸ©ã§ã¯ãã¯ã©ã¹ã®æŠå¿µãããŒã¿åã«ã€ããŠç¥ããŸããã ã¯ã©ã¹ã¯OOPã®åºæ¬æŠå¿µã®1ã€ã§ããããããã®åŠç¿ã«ã¯çŽ°å¿ã®æ³šæãæãããŸãã å€æ°ã¯ãã¯ã©ã¹ã®ã€ã³ã¹ã¿ã³ã¹ãã€ãŸããªããžã§ã¯ããšããŠäœæããå§ããŸãïŒãããã£ãŠãOOPã®ååïŒã
ãªã¹ããŒãåå¿è ã®å Žåã圌ã¯ã³ãŒãã®èšèªãšåŒãç解ããããšãåŠã³ãŸãPoint p1 = new PointïŒïŒ; ããªããžã§ã¯ãp1ã¯Pointã¯ã©ã¹ã®ã€ã³ã¹ã¿ã³ã¹ãšããŠäœæãããå ¥åã§åº§æšãååŸããŸãããšèªèããå§ããŸãã
namespace Snake { class Point { public int x; public int y; public char sym; public void Draw() { Console.SetCursorPosition( x, y ); Console.Write( sym ); } } }
åãã¬ãã¹ã³ã§ãçåŸã¯ã³ã³ãã¥ãŒã¿ãŒã®ããã«èããããšãåŠã³ãŸãã ããã¯ããã¬ãŒã¯ãã€ã³ãã䜿çšãããããã¬ãŒãä»ããŠã³ãŒããæž¡ãããšã§çºçããŸããã¹ãããããšã«ãã¯ã©ã¹ãªããžã§ã¯ãã®äœæãå€æ°ã®åæåãé¢æ°ã®æäœïŒDrawã¡ãœããã®åŒã³åºãïŒã確èªã§ããŸãã
4çªç®ã®ã¬ãã¹ã³ã§ã¯ãPointã¯ã©ã¹ã®ã³ã³ã¹ãã©ã¯ã¿ãŒãäœæããŸããããã¯ãäœãè¿ããªãç¹å¥ãªæ§æãæã€æ瀺çã«äœæãããã³ã³ã¹ãã©ã¯ã¿ãŒã§ãã
public Point(int _x, int _y, char _sym) { x = _x; y = _y; sym = _sym; }
ã³ã³ã¹ãã©ã¯ã¿ãŒãäœæããåŸãã¡ã€ã³ããã°ã©ã ã®ã³ãŒãã®éãã©ã®ããã«åæžããããã«æ°ä»ããŸããã ã³ã³ã¹ãã©ã¯ã¿ãŒã¯ããã€ã³ãã®åº§æšãšãã®æå®ã®ã·ã³ãã«ãå ¥åãšããŠåãå ¥ããŸããããŠãŒã¶ãŒã«ã¯å®è£ ã®è©³çŽ°ã¯è¡šç€ºãããŸãã-ãããã¯ã³ã³ã¹ãã©ã¯ã¿ãŒå ã«é ãããŠããŸãã ããã§ç§ã¯ãOOPã®3ã€ã®ååã®æåã§ããã«ãã»ã«åã«åºäŒããŸããã ã«ãã»ã«åã¯ã·ã¹ãã ã®ããããã£ã§ãããããŒã¿ãšã¡ãœãããçµã¿åãããŠã¯ã©ã¹ã§äœ¿çšãããã¹ãŠã®å®è£ ã®è©³çŽ°ããŠãŒã¶ãŒããé ãããšãã§ããŸãã
5çªç®ã®è¬çŸ©ã§ã¯ãã¡ã¢ãªæ§æã®åé¡ãããã°ã©ã ãã¹ã¿ãã¯ãšããŒãã§ã©ã®ããã«æ©èœãããã«ã€ããŠè©³ãã説æããŸãã 説æã¯èŠèŠçãªå³ã«ãã£ãŠè£è¶³ãããŸãã ãã®åŸãäœæ¥ã¯æšæºCïŒãªã¹ãã©ã€ãã©ãªïŒãªã¹ãïŒã®æ°ããã¯ã©ã¹ããå§ãŸããŸãããã®ã¯ã©ã¹ã§ã¯ãèŠçŽ ãè¿œå ããã³åé€ããããã®é¢æ°ãäœæãããforeachã«ãŒããäœæãããŸãã
List<int> numList = new List<int>(); numList.Add( 0 ); numList.Add( 1 ); numList.Add( 2 ); int x = numList[ 0 ]; int y = numList[ 1 ]; int z = numList[ 2 ]; foreach(int i in numList) { Console.WriteLine( i ); } numList.RemoveAt( 0 ); List<Point> pList = new List<Point>(); pList.Add( p1 ); pList.Add( p2 ); Console.ReadLine(); } }
ãããã¬ãŒã§ã«ãŒããæäœãããšããªã¹ããŒã¯ããã°ã©ã ã®æ§é ãšã·ãŒã±ã³ã¹ãããæ確ã«ç解ããŸãã
ã²ãŒã ãå®è£ ããããã«ãããçšã®æ°Žå¹³ããã³åçŽã®é害ç©ã©ã€ã³ãäœæããŸãããããããã¯ãã€ã³ãã®ãªã¹ãã«ãããŸããã ç§ã¯æåž«ã«é ããåããã圌ã®ã³ãŒããæŽçããç¬èªã®ããã°ã©ã ãäœæããããã°ã©ã ã§ãã¬ãŒãã³ã°ããŸããã
namespace Snake { class HorizontalLine { List<Point> pList; public HorizontalLine(int xLeft, int xRight, int y, char sym) { pList = new List<Point>(); for(int x = xLeft; x <= xRight; x++) { Point p = new Point( x, y, sym ); pList.Add( p ); } } public void Drow() { foreach(Point p in pList) { p.Draw(); } } } }
å çã¯ããã€ã³ããšã©ã€ã³ã®äž¡æ¹ããããŠåŸã«åãããèªäœãæ¬è³ªçã«æ°åã§ããããšã«æ³šæããŠããã®ã§ãã³ãŒããæé©åããã³ãŒããåå©çšããŠåå©çšã§ãããœãªã¥ãŒã·ã§ã³ãå¿ èŠã§ãã ã ããç§ã¯OOPã®2çªç®ã®ååã§ããç¶æ¿ã«ã€ããŠç¥ããŸããã ç¶æ¿ã¯ã·ã¹ãã ã®ããããã£ã§ãããæ©èœãéšåçãŸãã¯å®å šã«çœ®ãæããæ¢åã®ã¯ã©ã¹ã«åºã¥ããŠæ°ããã¯ã©ã¹ãèšè¿°ããããšãã§ããŸãã ãããã£ãŠãåã©ã€ã³ãã¹ããŒã¯ãããã³ãã€ã³ãã¯ãã¯ã©ã¹FigureïŒclass HorizoâântalLineïŒFigureããã®ç¹å¥ãªã±ãŒã¹ïŒç¶æ¿ïŒã«ãªããŸãã
namespace Snake { class Figure { protected List<Point> pList; public void Drow() { foreach ( Point p in pList ) { p.Draw(); } } } }
ç¶æ¿ãããã¯ã©ã¹ã«ã¯å¿ ã芪ã¯ã©ã¹ã®ç¹æ§ãå«ãŸããŸãããç¬èªã®ã¯ã©ã¹ãå«ãŸããããšããããŸãã ç¶æ¿ã®äŸã¯ãæç§æžãšã¯ã©ã¹Aããç¶æ¿ãããã¯ã©ã¹ã®ããããããäŸã«ãã£ãŠããã«åæãããŸããã¯ãŒã«ãŒã¯ã芪ã¯ã©ã¹ããæé·ãšå¹Žéœ¢ãæã¡ãèªèº«ã®ç¹æ§ã§ãã絊äžã§ãã ãšããã§ãOOPã§ã®ç¶æ¿ã®èªå·±åŠç¿ã®ç®çã®ããã«ã¯ãåŠçã«ãŒããŸãã¯åŸæ¥å¡ã«ãŒãã®èšèšã«åãçµãã®ãæåã§ãããããããã«ç解ãããŸãèªåã§ç¥èãä¿®æ£ããŠããããããžã§ã¯ãã§äœæ¥ããŸãã
ãããŠãããã¯ãã£ãŒã«ãã§ç§»åããããšãåŠã³ãããŒããŒãããã®ç¢å°ã§å¶åŸ¡ããå¿ èŠããããŸãã ã¿ã¹ã¯ã¯é£ããããã«èŠããŸãããç§ãã¡ã¯ãŸã ã³ã³ãœãŒã«ã«ã€ããŠè©±ããŠããã®ã§ãããã®åãã®å®è£ ã¯å¯èœãªéãç°¡åã§ããã¹ãã ãšæãåºããŸããã ç§ã¯ãã§ã«ãããã4æ¹åãã€ãŸãæé·ãŸãã¯æžå°ããæ¹åã«ç§»åããå¿ èŠãããããšãç¥ã£ãŠããŸããã ãããŠãããã§æœè±¡åã®æãæ¥ãŸã-ãªããžã§ã¯ãã®éžæãããéèŠãªç¹æ§ã«åºã¥ããŠã³ãŒããèšè¿°ããããã€ããŒãªç¹æ§ãé€å€ãããç¶æ³ã éèŠãªå åãéžæããŸããããã¯ããããäžã®ãã€ã³ãããã®å³åœ¢ã§ãããéå§äœçœ®ã座æšãæã¡ã4ã€ã®æ¹åã®ããããã«ç§»åããŸãã Snakeã¯ã©ã¹ã¯å€§ããå€ãããæé·ããŠããŸãã
{ class Snake : Figure { public Snake( Point tail, int length, Direction direction ) Direction direction; public Snake( Point tail, int length, Direction _direction ) { direction = _direction; pList = new List<Point>(); for(int i = 0; i < length; i++) for ( int i = 0; i < length; i++ ) { Point p = new Point( tail ); p.Move( i, direction ); pList.Add( p ); } } internal void Move() { Point tail = pList.First(); pList.Remove( tail ); Point head = GetNextPoint(); pList.Add( head ); tail.Clear(); head.Draw(); } public Point GetNextPoint() { Point head = pList.Last(); Point nextPoint = new Point( head ); nextPoint.Move( 1, direction ); return nextPoint; } } }
äžè¬ã«ãæœè±¡åã«ã€ããŠè©±ãç¶ãããšãæœè±¡ã¯ã©ã¹ã®æŠå¿µãOOPã§åºã䜿çšãããŸãã çŸæç¹ã§éçºè ãèªèããŠå¿ èŠãšããŠããæ©èœã®ã¿ãå®è£ ãããã³ãã¬ãŒãã¯ã©ã¹ãäœæãããŸãã æœè±¡ãã掟çããã¯ã©ã¹ã¯ãå°æ¥ãã¹ãŠã®æ©èœãè£å®ã§ããããã«ãªããŸãã
ãããããããžã§ã¯ãã«æ»ããŸãã å¥ã®åæããŒã¿åã䜿çšãããDirectionã¯ã©ã¹ã衚瀺ãããŸããããã¯ãååä»ãå®æ°ã®ã»ããã§æ§æãããåæã§ãã ç§ãã¡ã®å Žåããããã¯æ¹åå®æ°ã§ãïŒå³ãå·Šãäžãäžã Pointã¯ã©ã¹ã«ã¯Moveã¡ãœããããããŸãã
public void Move(int offset, Direction direction) { if(direction == Direction.RIGHT) { x = x + offset; } else if(direction == Direction.LEFT) { x = x - offset; } else if(direction == Direction.UP) { y = y + offset; } else if(direction == Direction.DOWN) { y = y - offset; } }
ãããã£ãŠãããã®åãã¯ãã¹ããŒã¹ã§å°Ÿã磚ããšäœçœ®ã®ã·ãããšããŠå®çŸãããŸãã ããã¯ããŒã§å¶åŸ¡ãããå¶åŸ¡ã¯æ¬¡ã®ããã«å®è£ ãããŸãã
public void HandleKey(ConsoleKey key) { if ( key == ConsoleKey.LeftArrow ) direction = Direction.LEFT; else if ( key == ConsoleKey.RightArrow ) direction = Direction.RIGHT; else if ( key == ConsoleKey.DownArrow ) direction = Direction.DOWN; else if ( key == ConsoleKey.UpArrow ) direction = Direction.UP; }
ç¹°ãè¿ãã«ãªããŸãããã«ãã»ã«åã«ééããŸãã-ã¹ããŒã¯ç®¡çã¯ã¹ããŒã¯ã¯ã©ã¹ã«å ¥ããŸãã
次ã®æ®µéã§ããããé£ã¹å§ããFoodCreatoræ©èœã䜿çšããŠç¡éã®ãµã€ã¯ã«ã§ç²ç©ãäœæãããããã®é ã®åº§æšãšé£ç©ãè¡šããã€ã³ãããã§ãã¯ãããŸãã
while (true) { if(snake.Eat( food ) ) { food = foodCreator.CreateFood(); food.Draw(); } else { snake.Move(); } Thread.Sleep( 100 ); if (Console.KeyAvailable) { ConsoleKeyInfo key = Console.ReadKey(); snake.HandleKey( key.Key ); } }
ãããç¡éã«ãŒãã§é£äºãããWallã¯ã©ã¹ã§äœæ¥ããããã®é害ãäœæããŠã3çªç®ã®OOPãã©ãã€ã -ããªã¢ãŒãã£ãºã ãããŸããŸãªã¿ã€ãã®ããŒã¿ãåŠçããæ©èœã®èœåã«ã€ããŠåŠã³ãŸããã OOPã§ã¯ãããªã¢ãŒãã£ãºã ãšã¯ããªããžã§ã¯ããåºæ¬ã¯ã©ã¹ã®äœææã«ååšããªãã£ã掟çã¯ã©ã¹ã®ã¡ãœããã䜿çšããããšã§ãã å®è¡æã«ã掟çã¯ã©ã¹ã®ãªããžã§ã¯ãã¯ãã¡ãœãããã©ã¡ãŒã¿ãŒãã³ã¬ã¯ã·ã§ã³ãé åãªã©ã®å Žæã«ããåºæ¬ã¯ã©ã¹ã®ãªããžã§ã¯ããšèŠãªãããšãã§ããŸãã ãããçºçãããšã宣èšãããåã¯å®è¡æã«åèªäœãšäžèŽããªããªããŸãã ããªã¢ãŒãã£ãºã ã¯ããã«ã¯ç解ãããªãã®ã§ãããã«äºçŽãããªããã°ãªããŸãããããäžåºŠè¬çŸ©ãèŽããé·ãéæå ã«ãããç¿Œã§åŸ ã£ãŠããã·ã«ãã®çŽ æŽãããæç§æžã«ç®ãåããå¿ èŠããããŸããã
æåŸã®ã¬ãã¹ã³ã§ãããã¯å®å šã«ç¬ç«ããé害ç©ãèªåã®ããã®å°Ÿãšã®è¡çªãåŠçããããšãåŠã³ãŸããã è¬çŸ©ã®ã³ãŒãã¯çæãããªããªããŸãããããªããžããªããååŸãããéã¢ã»ã³ãã«ãããŸãã ç§ã¯ä»ã®äººã®ã³ãŒããã³ããŒããèªæã«åŸããããã°ããã®éãèªåã§äœæããã³ãŒã¹ãèããŠãããäœåºŠãäœåºŠãè¬çŸ©ã«ç®ãåããŸããã ä»äºãšç解ã«ã¯ç¥èãšç¥èãå¿ èŠãªã®ã§ãåãããšãããããšããå§ãããŸãã GitHubã«è¡ã£ãŠãã¡ã€ã³ã³ãŒãã52è¡ãããªãã·ã³ãã«ãªã²ãŒã ãå®è£ ããæ¹æ³ãç解ã§ããããã«ããããã®ååãªãã£ãŒã¶ãŒãäžããããšãé¡ã£ãŠããŸããã€ãŸããOOPã®ãã¹ãŠã®ååãæ£åžžã«é©çšãããããšãæå³ããŸãã
èŠçŽãããšãæåž«ã¯åã³ã¡ã€ã³ã®OOPãã©ãã€ã ã«æ»ãããããªãã¯ããã³ãã©ã€ããŒãã¢ã¯ã»ã¹ä¿®é£Ÿåã«æ³šæãåŒããä»®æ³ããŒã¯ãŒãã«ã€ããŠè©±ããŸããããã«ãããã¡ãœãããç¶æ¿ã¯ã©ã¹ã§åå®çŸ©ã§ããŸãã ãã©ã€ããŒãã¯ãªããžã§ã¯ãå ã®ãã©ã€ããŒãããŒã¿ãšã³ãŒãã§ããããããªãã¯ã¯ãªãŒãã³ã§ãã ãã©ã€ããŒãããŒã¿ãšã³ãŒãã¯ãåããªããžã§ã¯ãã®å¥ã®éšåããã®ã¿å©çšã§ããŸããã€ãŸããå€éšããã¢ã¯ã»ã¹ããããšã¯ã§ããŸããã ãªãŒãã³ããŒã¿ãšã³ãŒãã¯ãããã°ã©ã ã®ã©ã®éšåãããã¢ã¯ã»ã¹å¯èœã§ãããå€ãã®å Žåããªããžã§ã¯ãã®éããéšåãžã®ã€ã³ã¿ãŒãã§ãŒã¹ãšããŠæ©èœããŸãã
ã³ãŒã¹å šäœã«ã€ããŠè©±ããšãå©ãã«ãªããŸãã-ç§ã®ä»äºã®è³ªãšéçºè ãšã®ã³ãã¥ãã±ãŒã·ã§ã³ã®ã¬ãã«ã®äž¡æ¹ãå€åããŸããã å°ãªããšãããã°ã©ãã³ã°ã«å°ãèå³ããã人ã«ã¯ããã²è©ŠããŠã¿ãŠãã ãããå°ãªããšãè³ãçºéãããäœç³»çã«èããããšãæããŸãã ç§ã¯ééããªãä»ã®ã³ãŒã¹ã«è³ãåŸããå°é家ãšãã£ããããŸãã ããŠãåæ¢ãªæ°åè ã«å¹žéãç¥ããŸãïŒã
ãããªåœ¢åŒãã³ã³ãã³ããåºåã管çã§ã©ã®ããã«äººæ°ã«ãªã£ãŠããããšã«æ°ã¥ããŸãããïŒ ãããªãèŠèŠãšèŽèŠã®äž¡æ¹ãå³åº§ã«åŒã蟌ãããšã¯ããç¥ãããŠããŸãã ããã«ããããªã³ãŒã¹ãåæ¢ãå·»ãæ»ããããã«æ°åèŽããã³ã¡ã³ãã§è³ªåããããšãã§ããŸãã ããã«ã GeekBrainsã¯ãããã°ã©ãã³ã°ãæ¥åžžçãªä»äºã§ãããããæ¥çã®ææ°ãã¬ã³ããåžžã«ææ¡ããŠããéæ¥å»ãæå°ããŠããŸãã ãã¡ãããã¢ãã¿ãŒã®åã§ãè¶ã飲ã¿ãªããã³ãŒã¹ãèŠãã®ã¯ã»ãšãã©ã¡ãªããããªãã®ã§ãçµè«ãšããŠãèŠèŽè ã«ã¢ããã€ã¹ãããããšæããŸãã
- éçããã³ã§ã³ãŒã¹ãèããŠãã ãã-ã€ã³ã¿ãŒããããæ¬ãèããããããã«èŠãããã䟡å€ãããç¬éãæžãçããŠãã ããã
- äžå¯è§£ãªç¬éãéããªãã§ãã ããããããç解ããããšããè¿œå ã®ãœãŒã¹ãåç
§ããŠãã ããã
- ã³ãŒããã³ããŒããã®ã§ã¯ãªããç¬èªã®ã³ãŒããäœæããŸããããã«ãããã³ãŒãã®æäœæ¹æ³ãçã«åŠã¶ããšãã§ããŸãã
- ãããã¬ãŒã䜿çšãã-ããã°ã©ã ãã¹ãããããšã«ã©ã®ããã«æ©èœããããç¥ãããšã¯ã調åã®ãšããç解å¯èœãªæ©èœãäœæããã®ã«åœ¹ç«ã¡ãŸãã
- ãã§ã«ã¢ããªã±ãŒã·ã§ã³ãäœæã§ããå Žåã§ããçè«ãšã³ãŒã¹ã«æ»ããŸããããã«ãããç¥èãåçåããéçºã®æ°ãããã€ã³ããèŠã€ããããšãã§ããŸãã
ç¬åŠã®ããã®æéãç¡é§ã«ãªãããšã¯ãªããšç¢ºä¿¡ããŠããŸãã ããã¯ééããªãå ±ãããã§ãããã