Kiến thức cơ bản về lập trình dành cho trẻ em. Phát triển trò chơi cho trẻ em

Những ai theo dõi trang của tôi có lẽ đã nhận thấy rằng gần đây tôi dạy trẻ em cách viết mã. Thật ngạc nhiên khi những suy nghĩ được hiện thực hóa. Sau khi đến thăm, ý tưởng thử sức mình với vai trò cố vấn trong thế giới lập trình máy tính cho trẻ em cứ quay cuồng trong đầu tôi. Và may mắn thay, cơ hội như vậy xuất hiện rất nhanh. Tôi được mời làm giáo viên đến một trại trẻ em, chương trình bao gồm một bài học lập trình hai lần một tuần cho hai nhóm khác nhau. Nhóm thứ nhất gồm các trẻ lớn hơn (từ 8 đến 12 tuổi), nhóm thứ hai chủ yếu gồm các trẻ từ 6 đến 8 tuổi.

Sự thật là khi ở Mỹ, tôi may mắn mua được cuốn sách tên là Dạy con bạn viết mã với mức chiết khấu tốt. Trong đó, tất cả các ví dụ đều được đưa ra dưới dạng vui nhộn bằng ngôn ngữ lập trình. Có lẽ trong tương lai tôi sẽ dành một bài riêng cho nó, nhưng bây giờ chúng ta hãy quay lại chủ đề kinh nghiệm giảng dạy của tôi. Vì vậy, ban đầu tôi thấy việc xây dựng quy trình giáo dục, rút ​​ra thông tin từ cuốn sách này có vẻ hợp lý, nhưng sau đó tôi nhận ra mình đã nhầm lẫn sâu sắc :-) Tại sao? Nhân tiện, cuốn sách dành cho trẻ em từ 9 tuổi trở lên.

Trước hết, trong mỗi nhóm có nhiều em, mỗi lớp có hơn 15 em. Điều này cản trở việc trình bày tài liệu một cách hiệu quả và cũng hạn chế tôi trong việc hỗ trợ cá nhân cho mọi người (hóa ra, tôi không thể làm được nếu không có nó).

Thứ hai, ở nhóm trẻ hơn có những trẻ đọc rất chậm hoặc không đọc được gì cả. Đây là một hạn chế nghiêm trọng nên cần phải giải quyết vấn đề này bằng cách nào đó.

Ngày thứ ba, kỹ năng gõ bàn phím còn thiếu đối với mọi người. Chúng ta đang nói về bộ mã chương trình nào?

thứ tư, Tôi dạy bằng hai thứ tiếng: tiếng Nga và tiếng Anh. Giao tiếp trong trại trẻ em diễn ra bằng tiếng Anh, vì các nhóm chủ yếu bao gồm trẻ em thông thạo cả hai ngôn ngữ, cũng như những trẻ nói tiếng Nga hoặc tiếng Anh. Tôi không muốn bỏ mặc bất cứ ai.

Lập trình trực quan

Sau khi suy nghĩ một chút, tôi đi đến kết luận rằng Python chắc chắn không còn phù hợp :-) Với nó, việc học trong những điều kiện như vậy sẽ biến thành một cơn ác mộng. Giải pháp cho vấn đề không mất nhiều thời gian để đến giải cứu lập trình trực quan. Điểm mấu chốt là lập trình viên không viết mã, anh ta soạn chương trình bằng cách thao tác các phần tử đồ họa trong môi trường phù hợp (IDE). Tôi nhớ trải nghiệm lập trình đầu tiên của mình với Borland Delphi và Borland C++ Builder, nơi có thể tạo một giao diện đồ họa phức tạp mà không cần viết một dòng mã nào. Nhưng đặc biệt đối với trẻ em, một nhóm các nhà khoa học tại MIT đã phát minh ra một công cụ có tên là Scratch. Nhiệm vụ của nó là dạy trẻ tư duy thuật toán một cách vui tươi. Và điều đáng chú ý là anh ấy thực hiện công việc của mình một cách hoàn hảo! Có cả một cộng đồng xung quanh Scratch, bao gồm các nhà khoa học, giáo viên, phụ huynh và học sinh. Công cụ này có hai loại:

  • Là một ứng dụng riêng biệt. Được cài đặt trên máy tính chạy Windows/MacOS/Linux (Scratch 2.0 offline)
  • Ứng dụng web có sẵn trực tiếp trên trang web chính thức

Ưu điểm lớn của tùy chọn thứ hai là bạn có thể đăng ký hồ sơ của mình trên trang web và bắt đầu chia sẻ các dự án đầu của mình với các thành viên khác trong cộng đồng lập trình đầu. Kết quả của công việc mới nhất đã có sẵn.

Điều đáng chú ý là quá trình lập trình trên Scratch không chỉ thú vị đối với trẻ em. Bản thân tôi từng bị mắc kẹt trong một thời gian dài khi chuẩn bị tài liệu mới cho trẻ em.

Cào: bài học

Hãy quay trở lại chủ đề giảng dạy của tôi. Các lớp học được cấu trúc như thế nào?

Trang web chính thức của Scratch có phần trợ giúp hữu ích. Trong đó, bạn có thể tìm thấy hướng dẫn sử dụng từng bước, trên cơ sở đó bạn có thể thực sự tiến hành bài học giới thiệu đầu tiên của mình. Những chàng trai thông minh đến từ Trường Giáo dục Sau đại học Harvardđã viết một cuốn sách có tên là Máy tính sáng tạo ( Lập trình sáng tạo), nó sẽ giúp xây dựng một quy trình giáo dục toàn diện vì nó chứa đựng những phương pháp thực hành tốt nhất trong việc dạy lập trình cho trẻ em. Có một bản dịch tiếng Nga trực tuyến.

YouTube yêu thích của bạn cũng có thể giúp bạn biên soạn tài liệu cho tác phẩm của mình. Đây liên kết nhân tiện, đến một trong những hướng dẫn Scratch chất lượng cao nhất từ ​​tác giả cuốn sách Tự động hóa những thứ nhàm chán với Python.

kết luận

Trong quá trình giảng dạy, tôi đã đưa ra một số điều kiện góp phần tạo điều kiện thuận lợi cho trẻ học lập trình.

  • Nên giảm bớt đối tượng học sinh. Một nhóm 4-6 người là tốt nhất. Tại sao? Đọc dưới đây.
  • Thời lượng của bài học không quá 1 giờ (lý tưởng nhất là 45 phút như ở trường). Sẽ rất khó để giữ được sự chú ý của trẻ lâu hơn.
  • Đứa trẻ phải luôn luôn quan tâm. Đây là một trong những điều kiện khó khăn nhất. Nếu trẻ mất hứng thú, chúng bắt đầu làm việc khác: mở ứng dụng khác, đi vòng quanh lớp, đánh lạc hướng trẻ, kêu đói :-)
  • Tất cả trẻ em đều khác nhau. Một số thông minh và học tài liệu rất nhanh, trong khi những người khác có thể “treo” những công việc đơn giản trong thời gian dài. Luôn có sẵn tiền thưởng cho trẻ thông minh (nhiệm vụ bổ sung, điều kiện phức tạp, v.v.).
  • Khen ngợi công việc của trẻ, cho dù nó không đáng kể. Điều này rất quan trọng đối với một đứa trẻ!
  • Khuyến khích trẻ em. Tôi khuyên bạn nên sử dụng nhãn dán, đồ chơi nhỏ hoặc những thứ tương tự để khuyến khích. KHÔNG cần phải tạo động lực bằng đồ ăn, kẹo hoặc bánh quy., bạn không bao giờ biết con mình có thể bị dị ứng với thứ gì.
  • Yêu cầu trẻ giúp đỡ. Nếu trong lớp có trẻ vượt trội so với quá trình học tập bình thường, hãy nhờ các em làm trợ giảng cho bạn. Hãy để họ cùng với bạn bắt đầu giúp đỡ những người bị tụt lại phía sau. Tin tôi đi, trẻ con thực sự thích nó.

Nhược điểm của Scratch

Scratch không dạy lập trình thực sự. Mục đích của công cụ này là phát triển kỹ năng tư duy thuật toán theo cách thân thiện với trẻ em - một cách vui tươi. Nhân tiện, không chỉ trẻ em mới cần kỹ năng này trong cuộc sống :-) Nếu mục tiêu của bạn là truyền đạt các kỹ năng lập trình thực sự cho con bạn, hãy cố gắng chuyển đổi từ lập trình trực quan sang quy trình mã hóa trực tiếp bằng một trong các ngôn ngữ lập trình thực tế ​càng sớm càng tốt. Ví dụ,

Tại sao nên dạy con bạn lập trình? Đặc biệt nếu bạn có một nữ diễn viên ballet hoặc cầu thủ bóng đá trong tương lai? Câu trả lời rất đơn giản: để dạy bạn suy nghĩ logic và lên kế hoạch cho hành động của mình. Các bậc cha mẹ khoe khoang rằng trẻ em hiện đại gần như có thể bật máy tính bảng và máy tính ngay từ khi còn trong nôi. Sự quan tâm đến công nghệ và khao khát giải trí có thể được kết hợp với việc học tập và phát triển bằng cách cung cấp cho con bạn những trò chơi dạy bạn cách tạo ra các thuật toán và thậm chí viết mã.

Bạn nghĩ mình nên bắt đầu học lập trình ở độ tuổi nào? Những người tạo ra Kodable tuyên bố rằng trò chơi của họ có thể truy cập được đối với trẻ em hai tuổi. Bạn có thể học mã trước khi học chữ cái. Ngay cả trẻ em cũng có thể thực sự làm những khuôn mặt ngộ nghĩnh khi đi qua mê cung, đồng thời thành thạo việc tạo ra các chương trình chỉ ra trình tự các hành động. Các gợi ý và khuyến nghị được thực hiện bằng đồ họa nên trẻ không cần phải đọc gì cả.

Trang web Code.org, được tạo ra bởi một tổ chức phi lợi nhuận, phong trào Giờ lập trình quốc tế, có một số khóa học giáo dục dành cho trẻ em và người lớn. Độ tuổi mà bạn có thể bắt đầu là bốn tuổi. Không có một trò chơi nào có thể dạy bạn mọi thứ cùng một lúc, nhưng có trò chơi đào tạo từng bước với các nhân vật trong nhiều phim hoạt hình khác nhau. Chuyển từ cấp độ này sang cấp độ khác, bạn có thể học và tạo các chương trình ngắn của riêng mình.

Trong trò chơi, có sẵn trên điện thoại thông minh hoặc máy tính bảng, một robot nhỏ, tuân theo mệnh lệnh, phải thắp sáng bóng đèn ở đúng vị trí. Nhiệm vụ chính mà trẻ sẽ phải đối mặt là thiết kế đường đi của đồ chơi bằng các lệnh đơn giản. Nhiệm vụ của cha mẹ là giải thích cho trẻ ý nghĩa của các bức tranh.

Thực tế không phải là một đứa trẻ chơi Lightbot lớn lên sẽ trở thành một nhà phát triển xuất sắc, nhưng chắc chắn nó sẽ học cách lập kế hoạch hành động và tạo ra các thuật toán đơn giản. Ứng dụng này cũng có thể được đề xuất là một trong những ứng dụng khởi đầu, ngay cả đối với trẻ mẫu giáo 4–6 tuổi. Các nhà phát triển cũng cung cấp một phiên bản phức tạp hơn, phù hợp cho trẻ em trên chín tuổi.

Nhân tiện, các bậc cha mẹ cũng có thể vui vẻ dành thời gian lên kế hoạch cho các tuyến đường. Robot đủ hài hước để thu hút trẻ em và đủ nghiêm túc để không làm người lớn nhàm chán.

“PictoMir”, được phát triển bởi NIISI RAS theo lệnh của Viện Hàn lâm Khoa học Nga, là câu trả lời của chúng tôi cho các sản phẩm tương tự của nước ngoài. NIISI RAS đã phát triển hệ thống KuMir, trong đó học sinh cuối cấp được làm quen với lập trình nhưng không có yếu tố trò chơi trong đó. “PictoMir,” được thiết kế dành cho trẻ mẫu giáo, hóa ra rất thú vị và rất dễ tiếp cận.

Robot vẽ các cánh đồng và đứa trẻ học cách tạo ra các thuật toán. Tất cả các gợi ý đều được thực hiện bằng đồ họa, vì vậy PictoMir có thể được cung cấp một cách an toàn cho trẻ chưa biết đọc, bắt đầu từ năm tuổi: điều đáng chú ý là các nhà khoa học đã cố gắng làm cho các hành động này trở nên dễ hiểu ngay cả đối với trẻ em. Nếu cha mẹ không biết tiếng Anh và không hiểu gì về chương trình nhưng thực sự muốn phát triển tư duy logic ở con mình thì PictoMir sẽ là cứu cánh thực sự. Phiên bản di động có sẵn cho iOS, Android và Windows Phone, nhưng bạn sẽ phải tải xuống hai phiên bản cuối cùng từ trang web của nhà phát triển.

Hoàn thành các nhiệm vụ và tạo ra thuật toán di chuyển mũi tên dọc theo câu đố - đây là ý nghĩa của trò chơi mà học sinh tiểu học có thể chơi. Đúng vậy, một mũi tên thông thường khó có thể thu hút được những đứa trẻ bảy tuổi lâu, đặc biệt nếu đây là trò chơi đầu tiên như vậy. Nhưng nó có thể thu hút sự quan tâm thực sự của những học sinh từ 10 tuổi đã quen với thuật toán hóa, bởi vì những câu đố thú vị nhất tất nhiên được tìm thấy ở các cấp độ phức tạp hơn. Robozzle cung cấp khả năng tạo và tìm kiếm nhiệm vụ mới gần như không giới hạn, vì vậy nó phù hợp nhất không phải để học những điều cơ bản mà để lặp đi lặp lại và thực hành liên tục.

Bot chở hàng

Một trò chơi dễ học khác mà trẻ mẫu giáo sẽ cảm thấy thoải mái ở cấp độ ban đầu. Vì có ít văn bản trong đó nên trẻ có thể phân biệt các chữ cái riêng lẻ để hoàn thành các nhiệm vụ đầu tiên và di chuyển các hộp từ nơi này sang nơi khác với ít lần di chuyển hơn. Ngay cả người lớn cũng có thể suy nghĩ rất lâu về những sự kết hợp phức tạp. Trong số các ứng dụng giáo dục và giải trí khác, Cargo-Bot nổi bật với hình ảnh rất đẹp. Nhân tiện, Cargo-Bot đã được lập trình hoàn toàn trên iPad.

Sẽ không hoàn toàn công bằng khi đưa Scratch vào danh sách này, vì nó không phải là một trò chơi mà là một môi trường được thiết kế đặc biệt để dạy lập trình cho trẻ em và không nên đưa Scratch vào vì đây là một công cụ giáo dục tuyệt vời. Quyền tác giả của Scratch thuộc về Viện Công nghệ Massachusetts và trong cộng đồng hầu hết thông tin đều được dịch sang tiếng Nga, vì vậy Scratch có thể tiếp cận được với rất nhiều đối tượng.

Khả năng của Scratch thực sự ấn tượng, tuy không có nhiệm vụ hay cấp độ nhưng nó có rất nhiều trí tưởng tượng và công cụ để sử dụng. Vì đứa trẻ phải đặt mục tiêu trong từng dự án một cách độc lập nên không có giải pháp chung nào, nhưng vẫn có chỗ cho sự sáng tạo, điều còn thiếu trong các trò chơi dạy thuật toán. Scratch là sự lựa chọn hoàn hảo cho trẻ em từ tám tuổi đã chán việc đuổi bắt robot và khỉ dọc theo những con đường quen thuộc.

Chúng ta không được quên những tác phẩm kinh điển, ngay cả những tác phẩm khá bụi bặm. Trò chơi giáo dục CeeBot xuất hiện vào năm 2003 như một sự phát triển đặc biệt dành cho các cơ sở giáo dục. Ban đầu, các nhà phát triển đã tạo ra Colobot, một trò chơi nói về việc xâm chiếm một hành tinh mới, tính năng chính của trò chơi này là để điều khiển các nhân vật, bạn phải viết chương trình của riêng mình.

CeeBot là một khóa đào tạo về trò chơi bao gồm một số nhiệm vụ kèm theo hướng dẫn chi tiết. Tất nhiên, câu chuyện về những robot có thể lập trình trên một hành tinh mới đang phá hủy hệ động vật địa phương không phù hợp với trẻ em, nhưng đối với những thanh thiếu niên đã quan tâm đến khoa học máy tính và có ý tưởng về thuật toán là gì, nó sẽ là một câu chuyện thú vị. công cụ tốt. CeeBot trông khá nhạt so với các trò chơi hiện đại, nhưng một đứa trẻ sẽ điều khiển các nhân vật ở đâu, tạo ra các chương trình của riêng chúng gần với cú pháp C++ nhất có thể?

CodeCombat vốn đã nghiêm túc rồi, vì trong trò chơi này, bạn học mã thực và người chiến thắng sẽ trở thành một lập trình viên sẵn sàng. Bạn chọn một ngôn ngữ lập trình trong đó bạn sẽ phải viết lệnh cho nhân vật của mình (trò chơi cung cấp Python, JavaScript, Lua hoặc một số ngôn ngữ thử nghiệm như CoffeScript) và bắt đầu cuộc hành trình để lấy pha lê.

Các bé trai và bé gái từ tám tuổi trở lên có thể bị bỏ tù vì trò chơi này. Đào tạo và mẹo bằng tiếng Nga, với 9,99 đô la, bạn có thể hoàn thành các cấp độ mới hàng tháng (70 cấp độ đầu tiên là miễn phí). Trò chơi có thể sử dụng trong trường học, có phần thưởng riêng cho giáo viên.

Trong trò chơi, trước khi bắt đầu mỗi cấp độ, trẻ sẽ đọc những câu trích dẫn hài hước và đầy động lực về lập trình, nhắc nhở trẻ rằng “mã này sẽ không tự dạy được”. CodeCombat thú vị hơn các trò chơi “phiêu lưu” và “bắn súng” thông thường, một trong những sự kết hợp tốt nhất giữa thư giãn và học tập.

Trẻ em ở độ tuổi trẻ hơn đang bắt đầu quan tâm đến việc phát triển trò chơi. Ngày nay bạn có thể tìm thấy rất nhiều thông tin, thậm chí có thể rất phong phú. Hướng dẫn này sẽ giúp độc giả trẻ hoặc cha mẹ của các em làm quen với thế giới phát triển trò chơi. Và điều này thực sự có nghĩa là gì? Đầu tiên, tôi sẽ tập trung vào những công nghệ phù hợp cho người mới bắt đầu. Thứ hai, tôi sẽ không suy đoán về trình độ hiểu biết kỹ thuật của bạn, thừa nhận rằng nó có thể bằng không. Vì vậy, nếu tôi cho rằng bạn không đủ thông minh hoặc nói năng trịch thượng thì không phải vậy! Ngược lại, nếu có điều gì đó chưa hoàn toàn rõ ràng, hãy cho tôi biết và tôi sẽ cố gắng làm rõ mọi thứ.

Bao nhiêu là quá trẻ?

Có lẽ là câu hỏi phổ biến nhất. Tôi (hoặc con tôi) phải bao nhiêu tuổi để được làm quen với việc phát triển trò chơi? Không thể trả lời điều này vì tất cả trẻ em đều khác nhau. Ở cấp độ thấp nhất (sử dụng đúng công cụ), một đứa trẻ mới bắt đầu 6 tuổi thực sự có động lực đã có thể đạt được một số thành công. Ở phía bên kia của quang phổ, ở tuổi 12, bạn phải có đủ trình độ học vấn và năng lực tinh thần để đạt được những thành tích này. Tuổi thật nằm ở đâu đó ở giữa.

Đầu tiên, bạn cần hiểu một vài điều quan trọng.

Đầu tiên là động lực. Chính việc thiếu động lực chứ không phải khả năng tinh thần thường trở thành trở ngại cho thành công. Nếu con bạn thích sáng tạo (thích chơi và thích làm trò chơi không giống nhau) và sẵn sàng thử và sai, thì chúng là sự lựa chọn hoàn hảo cho việc phát triển trò chơi!

Thứ hai là quản lý kỳ vọng. Đây là nơi chúng tôi mất đi hầu hết các nhà phát triển tiềm năng, bất kể tuổi tác. Phát triển trò chơi không phải là điều khó khăn nhất trên thế giới, nhưng nó khá phức tạp. Con bạn sẽ không sớm làm việc trên các trò chơi hiện đại quy mô lớn như Call Of Duty hay NHL hoặc thực hiện các dự án MMO. Bạn cần bắt đầu với một việc gì đó thật khiêm tốn và dần dần tiến lên.

Nếu một đứa trẻ thuyết phục bản thân rằng mình sẽ tạo ra một Minecraft mới, nó sẽ phải đối mặt với một thất bại vô cùng đau đớn. Mặt khác, thái độ "một ngày nào đó tôi sẽ tạo ra một Minecraft mới" có thể có tác dụng rất tốt. Điều rất quan trọng là phải hiểu sự khác biệt ở đây. Giống như bất kỳ kỹ năng nào, kỹ năng này cần được phát triển dần dần. Cố gắng đảm nhận một việc gì đó quá nghiêm túc sẽ chỉ dẫn đến thất bại và thất vọng. Để tham khảo, bản thân tôi bắt đầu lập trình từ năm 8 tuổi trên Atari BASIC.

Dù sao thì phát triển trò chơi là gì?

Ở đây chúng ta đi sâu hơn một chút vào các khía cạnh kỹ thuật. Phát triển trò chơi là một thuật ngữ chung đề cập đến nhiều kỹ năng nhằm tạo ra một sáng tạo lớn. Hãy tưởng tượng rằng bạn đang kinh doanh sản xuất ô tô. Chỉ kỹ năng thôi là chưa đủ, bạn cần có các kỹ sư, nhà thiết kế, thợ lắp ráp, người thử nghiệm và nhiều chuyên gia khác để chế tạo một chiếc máy. Tuy nhiên, toàn bộ danh sách các nhiệm vụ cần thiết có thể được thực hiện bởi một người. Có rất nhiều trò chơi thành công được viết, vẽ và phát hành bởi một người. Tuy nhiên, điều quan trọng là phải hiểu rằng đây là những trường hợp hiếm gặp. Điều tôi đang nói là toàn bộ quá trình phát triển không chỉ tập trung vào một nhiệm vụ mà có rất nhiều nhiệm vụ trong số đó. Và nếu một đứa trẻ thích thứ này thì có thể nó không thích thứ kia. Điều quan trọng cần nhớ là khi chọn chương trình, kiểm tra tính khả dụng của các mẫu đồ họa và âm thanh để bạn không phải tự mình làm mọi thứ.

Trong phần ghi công của trò chơi hiện đại, hàng trăm tên và chuyên môn của những người liên quan đến dự án được chỉ định. Tuy nhiên, để bắt đầu, bạn chỉ cần hai nhiệm vụ: tạo trò chơi và nội dung của nó.

Hãy lấy Monopoly làm ví dụ. Đầu tiên, chúng tôi tạo ra trò chơi: chúng tôi xác định thiết kế của sân chơi, đưa ra luật chơi xúc xắc, viết thẻ trò chơi, v.v. Sau đó, chúng tôi tạo ra nội dung trò chơi: hình ảnh trên sân, hình vẽ trên thẻ, nhà nhựa, v.v.

Trò chơi điện tử cũng vậy. Nhiệm vụ đầu tiên thường được gọi là lập trình, nhiệm vụ thứ hai bao gồm lấp đầy trò chơi bằng đồ họa, hoạt hình, âm thanh và âm nhạc. Tất cả điều này đòi hỏi những kỹ năng hoàn toàn khác nhau, nhưng theo quy luật, bạn không thể làm được nếu không có chúng. Bài viết của chúng tôi sẽ tập trung vào lập trình - khi trẻ quan tâm đến việc phát triển trò chơi, đây là điều chúng nghĩ đến. Nếu một đứa trẻ muốn vẽ đồ họa cho trò chơi, thì rất có thể chúng đã phác thảo vào vở rồi! Và nhân tiện, đây là cách tiếp cận đúng đắn, bởi vì sự khác biệt giữa “nghệ sĩ” và “nghệ sĩ trò chơi” là rất nhỏ.

Lập trình là gì?

Vì vậy, khi chúng ta nói về phát triển trò chơi, rất có thể chúng ta muốn nói đến lập trình. Nó là gì? Cách đơn giản nhất để nói đó là nghệ thuật giải thích cho máy tính những gì nó nên làm. Trong bối cảnh phát triển trò chơi, điều này có nghĩa là làm những việc như "nếu người chơi nhấn nút lên, hãy làm điều này" hoặc "nếu sức khỏe giảm xuống 0, hãy làm điều này".

Làm thế nào để lập trình trò chơi vốn đã là một câu hỏi khó và bạn sẽ phải đau đầu với nó. Điều quan trọng hơn nữa là phải hiểu rằng mọi thứ đều phụ thuộc vào con bạn. Tất cả chúng ta đều suy nghĩ khác nhau và thể hiện ý tưởng của mình khác nhau. Ai đó có thể chọn một phong cách hoàn toàn không hấp dẫn đối với người khác.

Về cơ bản có ba cách để yêu cầu máy tính phải làm gì (thường là sự kết hợp của những cách sau):

Một cách tiếp cận phổ biến giữa những người mới bắt đầu và giữa các nhà phát triển nói chung (ví dụ: công cụ thương mại phổ biến Unreal Engine 4 có giao diện lập trình trực quan Blueprints). Bạn định hình màn hình trò chơi bằng cách kéo và thả các phần tử, sau đó liên kết chúng lại với nhau theo cách giống như sơ đồ. Nếu con bạn là người có tư duy trực quan thì đây là sự lựa chọn tốt nhất.

Ngôn ngữ kịch bản

Đây là nơi bạn giải thích một tác vụ cho máy tính bằng các tệp văn bản nhỏ. Thông thường, bạn vẫn sử dụng trình soạn thảo trực quan, như trong hình trên, nhưng bạn cho máy tính biết những việc cần làm không phải bằng cách điền vào các trường văn bản hoặc xây dựng sơ đồ mà bằng cách sử dụng mã.

Đoạn văn bản này yêu cầu máy tính tải xuống hình ảnh "whale.png" và hiển thị nó trên màn hình.

Ngôn ngữ lập trình truyền thống

Cuối cùng, nhiều trò chơi được viết bằng các ngôn ngữ truyền thống: C++, Java, C# và các ngôn ngữ khác. Tôi sẽ nói ngay rằng tôi không khuyên các nhà sản xuất trò chơi trẻ nên bắt đầu với các ngôn ngữ truyền thống, hay chính xác hơn là các ngôn ngữ được biên dịch vì một số lý do.

Câu hỏi chính bạn có thể có là: sự khác biệt giữa ngôn ngữ kịch bản và ngôn ngữ biên dịch là gì? Hầu hết sự khác biệt liên quan đến các chi tiết kỹ thuật nằm ngoài phạm vi của bài viết này, nhưng nhìn chung tất cả đều bắt nguồn từ sự phức tạp. Làm việc với một ngôn ngữ được biên dịch bao gồm rất nhiều thứ mà bạn không cần phải nghĩ tới trong các ngôn ngữ kịch bản: biên dịch (chuyển văn bản bạn viết thành thứ mà máy tính có thể hiểu được), liên kết (không thể giải thích tóm tắt ở đây) , và nhiều hơn nữa.

Sự khác biệt quan trọng hơn là mục đích. Ngôn ngữ kịch bản chủ yếu nhằm giải quyết các vấn đề cụ thể nhằm đơn giản hóa cuộc sống của nhà phát triển. Nói tóm lại, ngôn ngữ script dễ học và sử dụng hơn nhiều.

Cuối cùng, bạn sẽ thường thấy các công cụ phát triển kết hợp ngôn ngữ lập trình trực quan và kịch bản.

IDE, thư viện, cái gì???

Được rồi, đó là điểm giới thiệu cuối cùng. Sẽ có nhiều thuật ngữ và cách diễn đạt không rõ ràng lắm trong văn bản nên tôi sẽ giải thích ngắn gọn.

Ngôn ngữ.Điều này đề cập đến một ngôn ngữ lập trình. Chúng tôi giao tiếp với nhau bằng các ngôn ngữ khác nhau và bạn cũng có thể nói các ngôn ngữ khác nhau bằng máy tính. Ví dụ trên cho thấy ngôn ngữ Lua.

IDE. Môi trường phát triển tích hợp là một ứng dụng chịu trách nhiệm thực hiện nhiều nhiệm vụ cùng một lúc. Không phải tất cả các chương trình được mô tả đều có IDE, có nghĩa là bạn có thể cần các phần mềm khác nhau cho các công việc khác nhau. Thông thường, môi trường phát triển chứa trình soạn thảo văn bản, ngôn ngữ lập trình và một số công cụ khác.

Thư viện. Hãy tưởng tượng rằng đây là một người đang làm rất nhiều việc cho bạn. Thông thường, ngay cả “những điều đơn giản” như hiển thị mọi thứ trên màn hình cũng không phải là một phần của ngôn ngữ. Những người khác tạo ra những thứ này và cung cấp chúng dưới dạng thư viện. Trong một số trường hợp (GameMaker hoặc Construct), tất cả đã được chuẩn bị sẵn cho bạn. Ví dụ, trong Lua, bạn phải tự mình chọn thư viện. Mỗi cách tiếp cận đều có ưu và nhược điểm. Gamemaker đơn giản hóa rất nhiều cho người mới bắt đầu, nhưng Lua cho phép bạn thay đổi thư viện để thuận tiện hơn.

Ma.Đây là những đồ họa được sử dụng trong trò chơi, chẳng hạn như nhân vật người chơi. Một sprite có thể là một hình ảnh hoặc chứa nhiều hình ảnh động. Ý nghĩa chính xác của sprite là khác nhau ở mỗi công cụ, nhưng trong trò chơi, nó luôn là một vật thể chuyển động có thể nhìn thấy được. Trong Super Mario Brothers, đó là Mario, rùa, quả cầu lửa, v.v. Bản thân thế giới - bầu trời, đường ống, v.v. - không nhất thiết phải bao gồm các họa tiết.

HTML5. Không phải mọi thứ ở đây có thể rõ ràng ngay lập tức. HTML 5 là phiên bản mới nhất của HTML, ngôn ngữ đánh dấu trang web. Khi bạn tải một trang web trong trình duyệt máy tính hoặc điện thoại, bạn sẽ thấy một tài liệu HTML. Nhưng HTML5 cũng là một thuật ngữ chung cho nhiều công nghệ hỗ trợ trang web. Điều này bao gồm chính HTML, CSS (một ngôn ngữ khác xác định giao diện của trang) và JavaScript, ngôn ngữ kịch bản chịu trách nhiệm về logic. Mọi người thường sử dụng HTML, HTML5 và JavaScript thay thế cho nhau, mặc dù về mặt kỹ thuật thì điều này không hoàn toàn đúng. HTML5 có thể được sử dụng để tạo trò chơi và không cần phải chạy trên trình duyệt.

Trình gỡ lỗi. Khi một trò chơi không hoạt động như bình thường, có thể khó tìm ra lý do. Trong một số gói, có cái gọi là trình gỡ lỗi cho việc này, một công cụ để xác định sự cố hoặc “lỗi”. Đối với người mới bắt đầu, đây là một công cụ khá tiên tiến, nhưng khi có nhu cầu, không thể đánh giá quá cao trình gỡ lỗi.

Công cụ phát triển trò chơi phù hợp với trẻ em

Vì vậy, hãy chuyển sang nội dung cốt lõi trước mắt của bài viết - những công cụ có thể giới thiệu con bạn với thế giới phát triển trò chơi. Đây không phải là một danh sách đầy đủ! Tại mỗi điểm, tôi sẽ cho bạn biết chương trình có những gì, đưa ra ví dụ về cách thức hoạt động, mô tả ưu và nhược điểm, cho biết giá, nếu có và cung cấp liên kết đến tài liệu giáo dục. Một điều còn lại cần lưu ý... mỗi tùy chọn đều có thể hữu ích, không có lựa chọn nào là "tốt nhất". Chọn dựa trên sở thích của con bạn. Nếu lựa chọn đầu tiên của bạn không hiệu quả, hãy thử cái khác.

Danh sách được xây dựng không theo thứ tự cụ thể.

Cào

Đây là dự án được Viện Công nghệ Massachusetts tài trợ và nhằm mục đích giảng dạy lập trình cho trẻ em từ 8 đến 16 tuổi. Chương trình ra đời vào năm 2006 và kể từ đó nó đã quy tụ được một cộng đồng lớn xung quanh nó. Đặc biệt nhấn mạnh vào việc thu hút cả gia đình. Scratch chỉ cần có trình duyệt để hoạt động, bạn chỉ cần vào trang web và bắt đầu viết mã. Scratch được bao gồm trong khóa học tin học cơ bản của Harvard và Yale CS50. Cần phải đăng ký để lưu kết quả, nhưng việc này rất đơn giản và thậm chí không yêu cầu xác nhận qua email.

Scratch thuộc danh mục công cụ lập trình trực quan. Trẻ bế các diễn viên lên sân khấu và điều khiển họ bằng các khối lập trình hình Lego. Các khối là một sự tương tự tốt về cấu trúc của các ngôn ngữ lập trình thực, vì vậy chúng sẽ dễ hiểu hơn sau này. Có rất nhiều tài liệu có sẵn và có hàng nghìn chương trình ví dụ.

Có lẽ tính năng hấp dẫn nhất của Scratch là nó có tất cả nội dung bạn cần để bắt đầu. Đồng thời, còn có khả năng tải lên âm thanh và đồ họa của riêng bạn hoặc đã tải xuống, giúp đơn giản hóa quá trình chuyển đổi từ lập trình sang tạo nội dung hoặc ngược lại.

Phía trên là dòng chữ gắn liền với một con chó màu xanh. Nó bao gồm hai phần, phần đầu tiên được kích hoạt bằng cách nhấn cờ xanh. Con chó xuất hiện trên màn hình ở một vị trí nhất định, sau đó từng bước di chuyển sang trái. Kịch bản thứ hai chờ va chạm với một con chó khác, sau đó đưa con chó về vị trí ban đầu, thay đổi cảnh và giấu đồ vật. Mỗi sprite có một tập lệnh riêng. Các khối được chọn trong bảng lập trình.

Lập trình trong Scratch sử dụng các khối. Hình ảnh hiển thị danh mục Ngoại hình. Như bạn có thể thấy, sự lựa chọn các danh mục khá rộng.

Scratch là giải pháp tất cả trong một; bạn không cần bất cứ điều gì khác để bắt đầu. Bộ này bao gồm nhiều cảnh, hình nền và âm thanh.

Scratch hoàn toàn miễn phí và được hỗ trợ bởi các nhà tài trợ.

Sách (vâng, chúng bằng tiếng Nga):

  • Cuốn sách đầu tiên của một lập trình viên trẻ. Học viết chương trình trong Scratch - Yulia Torgasheva
  • Nhiệm vụ sáng tạo trong môi trường Scratch. lớp 5-6. Sách bài tập – Yulia Pashkovskaya
  • Lập trình cho trẻ em. Hướng dẫn minh họa về Scratch và Python - Carol Vorderman

Scratch cũng có một ứng dụng iPad tên là ScratchJr dành cho trẻ em từ 5-8 tuổi. Cũng hoàn toàn miễn phí. Bạn không cần phải mua hay tải xuống bất cứ thứ gì, thậm chí không cần phải đăng ký để làm quen với chương trình, vì vậy Scratch có thể được gọi là lựa chọn hợp lý nhất trong danh sách.

Xây dựng2

Construct2 là một công cụ khác dựa trên lập trình trực quan. Trò chơi được tạo bằng giao diện kéo và thả và logic được điều khiển bởi hệ thống sự kiện giống như sơ đồ. Nếu chức năng không đủ, bạn có thể tạo plugin của riêng mình bằng JavaScript, mặc dù điều này khá khó và không hề cần thiết - Construct2 được thiết kế sao cho mọi thứ đều được điều khiển bởi các sự kiện. Kết quả cuối cùng là HTML5 và có thể được xuất sang các nền tảng khác nhau, bao gồm các thiết bị di động (Android, iOS, Windows Mobile), trình duyệt và hệ thống máy tính để bàn.

Construct2 là một công cụ toàn diện hơn nhiều so với Scratch, có nghĩa là hai điều quan trọng. Đầu tiên, đường cong học tập dốc khiến nó không phù hợp với trẻ nhỏ và nó không nhấn mạnh vào phương pháp giảng dạy. Mặt khác, đây là một công cụ tương đối đơn giản không phải để học những điều cơ bản mà để tạo trò chơi. Điều này có nghĩa là con bạn sẽ không sớm phải đối mặt với bất kỳ hạn chế nào. Nhiều trò chơi thương mại đã được tạo ra trong Construct2.

Có rất nhiều tài liệu dành cho Construct2, bao gồm thông tin trợ giúp chi tiết và hướng dẫn sử dụng PDF. Cộng đồng rất tích cực, bạn luôn có thể chuyển sang diễn đàn để được hỗ trợ.

Xây dựng cài đặt trên máy tính Windows. Mac hiện không được hỗ trợ.

Đây là giao diện lập trình trong Construct2. Đây là đoạn mã mô tả phản ứng của nhân vật trong trò chơi với dữ liệu đầu vào; lấy từ một ví dụ đã chuẩn bị sẵn của một game bắn súng đơn giản.

Cho phép bạn nhanh chóng thêm hành vi được xác định trước vào một đối tượng.

Construct2 là giải pháp tất cả trong một; bạn không cần bất cứ thứ gì khác để nó hoạt động. Ngay từ đầu, nó không có đầy đủ tài nguyên trò chơi, nhưng có một gói nội dung khổng lồ có sẵn để tải xuống miễn phí (hãy cẩn thận, liên kết trực tiếp, kho lưu trữ nặng 38 MB). Tài sản bổ sung được cung cấp cho các phiên bản trả phí.

Nếu bạn muốn tạo plugin của riêng mình, bạn sẽ cần SDK JavaScript (có sẵn miễn phí) và công cụ chỉnh sửa văn bản, vì Construct không có.

Construct2 có sẵn trong các phiên bản khác nhau:

  • Phiên bản miễn phí - trò chơi được tạo chỉ có thể được khởi chạy trên trình duyệt, ít nội dung hơn và một số hạn chế về độ phức tạp của trò chơi. Những hạn chế không phải là một vấn đề lớn, ít nhất là lúc đầu.
  • Phiên bản cá nhân – có giá 129 USD, bạn có thể tạo trò chơi cho iPhone, Android và hệ thống máy tính để bàn, nhiều âm thanh, âm nhạc, họa tiết và các nội dung khác.
  • Phiên bản dành cho doanh nghiệp về cơ bản giống như phiên bản cá nhân, chỉ có điều nó có giá cao hơn và bắt buộc phải mua sau khi vượt quá ngưỡng lợi nhuận 5.000 USD (nếu bạn gặp vấn đề này thì không sao!).

Tôi không tìm thấy cuốn sách nào bằng tiếng Nga. Có bản dịch của khóa học giới thiệu. Xây dựng 2 bài học bằng tiếng Nga.

Nhà sản xuất trò chơi

GameMaker là một hệ thống kết hợp tất cả trong một kết hợp lập trình trực quan với ngôn ngữ kịch bản GML của riêng nó. Ban đầu, trò chơi chỉ hoạt động trên Windows, nhưng ở phiên bản trả phí, chúng có thể được tạo cho trình duyệt, iOS, Android, Windows Phone và các nền tảng khác.

Lập trình trong GameMaker có thể dựa trên sơ đồ theo kiểu Construct2. Có thể viết mã bằng ngôn ngữ kịch bản GML. Đây vừa là điểm cộng vừa là điểm trừ. Một mặt, đây là một hệ thống linh hoạt, mặt khác lại khó hiểu hơn. Vì đây là ngôn ngữ riêng của GameMaker nên nhiều kỹ năng bạn học sẽ không hữu ích khi bạn chuyển sang một công cụ phát triển khác. Tất nhiên, các khái niệm cơ bản về lập trình không thay đổi từ ngôn ngữ này sang ngôn ngữ khác nên đây không phải là vấn đề đặc biệt nghiêm trọng.

Ngoài những tài sản cần thiết, GameMaker thực sự có mọi thứ bạn có thể cần, mặc dù chất lượng của các công cụ có thể khác nhau. Ngoài việc lập trình, bạn có thể tạo đồ họa, âm thanh và cấp độ của riêng mình - tất cả trong một ứng dụng. Trong số các trò chơi được tạo trong GameMaker, có những dự án rất thành công - ví dụ như phiên bản gốc của Spelunky vàHotline Miami (không dành cho trẻ em).

Đây là một trong những chương trình khó nhất trong danh sách và tốt hơn hết bạn nên thực hiện nó không sớm hơn tuổi thiếu niên. Nhưng đối với những đứa trẻ lớn hơn, nó mang lại sự linh hoạt và khả năng chia sẻ trò chơi và cuối cùng là bán chúng. Tất cả đều phụ thuộc vào từng đứa trẻ, vì vậy rất khó để đưa ra lời khuyên nào ở đây, chỉ cần lưu ý rằng so với cùng một Scratch, mọi thứ ở đây phức tạp hơn nhiều.

GameMaker bao gồm mọi thứ bạn cần, cho dù đó là chỉnh sửa mã, tạo và chỉnh sửa hình ảnh, thiết kế bản đồ hay bất kỳ thứ gì khác. Ngoài ra còn có một trình gỡ lỗi tích hợp sẵn. Đúng, không có nhiều ví dụ về công việc trong phiên bản tiêu chuẩn. Trong thực tế, không có gì cả. Tuy nhiên, nhờ cộng đồng năng động, bạn có thể dễ dàng tìm thấy rất nhiều ví dụ và bài học trực tuyến. Chất lượng của tài liệu có thể rất khác nhau và bản thân Trò chơi Yoyo không xử lý chúng, vì vậy bạn sẽ phải tìm kiếm những bài học hay.

Với giấy phép GameMaker, mọi thứ không đơn giản như vậy vì cơ cấu giá đã thay đổi nhưng không phải tất cả tài liệu đều được cập nhật.

  • Phiên bản ban đầu hạn chế rất nhiều việc sử dụng tài nguyên và tập lệnh. Tuy nhiên, việc nâng cấp lên phiên bản Tiêu chuẩn chỉ yêu cầu xác nhận email mà mã khóa sản phẩm sẽ được gửi cho bạn.
  • Ngoài ra còn có phiên bản Chuyên nghiệp với giá 100 USD với chức năng cộng tác (bạn chưa cần đến nó). Sự khác biệt chính với phiên bản này là bạn có thể mua các mô-đun riêng lẻ để hỗ trợ xuất sang các nền tảng khác ($200 mỗi mô-đun). Ví dụ: nếu bạn muốn phát triển cho Android và iOS, bạn sẽ phải trả tổng cộng 500 USD.
  • Và cuối cùng, phiên bản Master với tất cả các nền tảng có sẵn có giá 800 USD.

Đối với một nhà phát triển mới làm quen, một phiên bản đăng ký đơn giản là đủ. Nếu bạn nhìn vào Professional, nó thường được bán trên Steam.

Xin lưu ý rằng không cần thiết phải sử dụng tất cả các công cụ tích hợp sẵn. Bạn có thể dễ dàng vẽ các họa tiết trong một chương trình khác hoặc nhập đồ họa từ các nguồn khác.

Lua và TÌNH YÊU

Lua là một công cụ tạo tập lệnh và LÖVE là thư viện để tạo trò chơi. Lua ban đầu là ngôn ngữ lập trình dành cho "những người không phải lập trình viên" và nhanh chóng trở nên phổ biến như ngôn ngữ kịch bản cho các trò chơi thương mại như thế này. Tùy chọn này có một lợi thế lớn so với GML. Lua được sử dụng ở mọi nơi và quen thuộc với nhiều người nên sẽ rất hữu ích nếu biết về nó. Về mặt học ngôn ngữ khá đơn giản.

LÖVE là thư viện tạo trò chơi bằng Lua. Nó cung cấp hầu hết tất cả các chức năng cần thiết để tạo trò chơi 2D - đầu ra đồ họa, phát lại âm thanh, quản lý dữ liệu đầu vào, tải tệp, v.v.

Chỉ riêng LÖVE và Lua là chưa đủ; bạn cũng sẽ cần một trình soạn thảo văn bản để viết và chỉnh sửa tập lệnh, phần mềm tạo đồ họa và ghi âm, trình chỉnh sửa bản đồ để thiết kế cấp độ và những thứ tương tự. May mắn thay, tất cả những thứ này đều có sẵn miễn phí và tôi sẽ đưa ra các ví dụ bên dưới. Bạn chỉ cần tải xuống mọi thứ một cách riêng biệt. LÖVE không đi kèm với bất kỳ nội dung nào nhưng các tài nguyên như Open Game Art và FreeSound sẽ giúp bạn điều này. Một lần nữa, bạn phải tự tải xuống mọi thứ.

Nhược điểm chính của LÖVE là thiếu hỗ trợ cho nền tảng di động. Hiện tại, thư viện chỉ cho phép bạn tạo trò chơi cho máy tính, mặc dù hứa hẹn sẽ có trên thiết bị di động trong tương lai.

Thư viện LÖVE chứa Lua, vì vậy trước tiên chúng ta chỉ đến đây và sau đó đến đây để tìm tài liệu cho người mới bắt đầu. Tuy nhiên, bạn cũng cần một trình soạn thảo văn bản và các chương trình đồ họa và âm thanh.

Để gõ cơ bản, có hai tùy chọn phổ biến: Notepad++ và Sublime Text.

Tuy nhiên, để phát triển bằng Lua, tôi khuyên bạn nên sử dụng nó - nó giống một IDE hơn với sự hỗ trợ hoàn thiện mã, gỡ lỗi và những thứ tương tự. Ồ, vâng - nó cũng miễn phí.

Trình chỉnh sửa Tiled miễn phí rất phù hợp để tạo cấp độ và bản đồ.

Về các lựa chọn thay thế - Lua là ngôn ngữ kịch bản được sử dụng trong nhiều công cụ phát triển phổ biến, chẳng hạn như Corona, Gideros và Marmalade Quick. Tất cả chúng đều khó hơn LÖVE, đó là lý do tại sao tôi khuyên bạn nên dùng nó. Tuy nhiên, họ đã làm rất tốt việc chứng minh kiến ​​thức về Lua có thể hữu ích như thế nào.

Lua và LÖVE đều miễn phí, nhưng đối với ZeroBrane, bạn phải trả bao nhiêu tùy thích.

Chỉ có một cuốn sách mô tả cụ thể về lập trình trong LÖVE.

  • Lập trình bằng Lua - Roberto Jerusalemski

Việc tìm kiếm tài liệu trong thư viện trở nên khó khăn do sự phổ biến của từ tình yêu, vì vậy hãy thêm lua vào truy vấn của bạn.

Python và PyGame

Đây là một sự kết hợp khác của ngôn ngữ và thư viện. PyGame tương tự LÖVE về nhiều mặt và thân thiện với người mới bắt đầu. Nó sử dụng Python, một ngôn ngữ kịch bản phổ biến, mặc dù nó được biết đến nhiều hơn trong thế giới đồ họa 3D hơn là trong phát triển trò chơi. Thường được các chuyên gia CNTT sử dụng để tự động hóa các tác vụ, kiến ​​thức về Python rất hữu ích ngay cả ngoài việc phát triển trò chơi. Một số trò chơi nổi tiếng được viết bằng ngôn ngữ này.

PyGame có chức năng mà bạn mong đợi, xử lý âm thanh, đồ họa và đầu vào. Bạn cần quan tâm đến việc soạn thảo văn bản và tạo nội dung. Tuy nhiên, không giống như LÖVE, một số nội dung và mẫu đã được đưa vào PyGame.

Hãy sử dụng các mẹo dành cho LÖVE, hầu hết các công cụ được liệt kê ở đây cũng sẽ hữu ích.

Tất nhiên, không tính ZeroBrane - như một chất tương tự, tôi khuyên bạn nên làm quen với PyCharm (có phiên bản miễn phí). Đây không phải là trình soạn thảo dễ dàng nhất nhưng bạn luôn có thể làm việc trong Notepad++ hoặc Sublime Text thông thường.

Python và PyGame đều miễn phí. PyCharm có phiên bản miễn phí.

Stencyl là một bộ công cụ lập trình trực quan tự quảng cáo là “cách dễ nhất, nhanh nhất để tạo trò chơi”, điều này rất có thể đúng! Nó có chức năng tương tự như Construct2; bạn lập trình bằng cách xây dựng một cảnh và cung cấp cho nó các hành vi. Đây là giải pháp tất cả trong một với trình chỉnh sửa đồ họa tích hợp, mặc dù cũng có khả năng nhập hình ảnh. Bạn không thể viết tập lệnh bằng Stencyl, nhưng bạn có thể tạo tiện ích mở rộng bằng ngôn ngữ Haxe nếu bạn thiếu chức năng của chương trình. Tuy nhiên, điều này có thể đã vượt quá khả năng hiện tại của trẻ - trong trường hợp này, các tiện ích mở rộng có sẵn trong cửa hàng sẽ rất hữu ích.

Stencyl chạy trên Windows, Linux và Mac và theo mặc định chỉ tạo các ứng dụng Flash. Các nền tảng khác, bao gồm iOS và Android, đều có tính phí. Chương trình không có nhiều tài sản đi kèm nhưng nó cung cấp khả năng truy cập nhanh vào chúng, cộng với trợ giúp trực tuyến khá tốt.

Đây là một giải pháp tất cả trong một. Nếu bạn không đi sâu vào phần mở rộng lập trình trên Haxe, mọi thứ bạn cần đều đã được bao gồm hoặc có thể truy cập được thông qua các liên kết trực tiếp từ ứng dụng.

  • Stencyl được sử dụng miễn phí nhưng sẽ chỉ sản xuất các trò chơi Flash. Các trò chơi đã phát hành được cung cấp màn hình giật gân Stencyl trong khi tải.
  • Phiên bản Studio có giá 99 USD, cho phép bạn tạo các ứng dụng dành cho máy tính để bàn. Họ không có trình bảo vệ màn hình Stencyl.
  • Với 199 USD, bạn có thể tạo trò chơi cho iOS và Android.

Lego Mindstorm

Hãy để tôi làm rõ ngay rằng đây là một thứ rất, rất đắt tiền. Nhưng nếu con bạn quan tâm đến robot hoặc chỉ là một fan cuồng nhiệt của Lego thì đây là cách phù hợp để giới thiệu cho chúng về viết mã. Mindstorm Lego là một bộ xây dựng để tạo ra robot. Bộ sản phẩm bao gồm các khối lập trình để thiết lập hành vi của robot. Mindstorm mang đến sự tiến bộ dần dần trong quá trình học tập: đầu tiên, robot được lắp ráp từ các mảnh của bộ xây dựng, sau đó bạn có thể học cách điều khiển nó bằng một ứng dụng (dành cho iPad hoặc hệ thống máy tính để bàn), sau đó bạn có thể bắt đầu lập trình logic.

Lego Mindstorm cho phép bạn tự kiểm soát các sáng tạo của mình hoặc lập trình chúng trong ứng dụng EV3 bằng sơ đồ khối. Ngoài ra còn có các công cụ cho phép bạn lập trình cấp thấp tùy thích.

Điểm này không liên quan đến chủ đề chung, nhưng tôi quyết định đề cập đến Mindstorm như một công cụ dạy lập trình, thuận tiện cho những đứa trẻ thích tự mình tạo ra thứ gì đó. Việc quan sát mối quan hệ nhân quả bằng cách sử dụng các đối tượng vật chất làm ví dụ có thể rất hữu ích.

Tâm bão rồng phun lửa làm sẵn, một tháng để lắp ráp

Đắt! Rất đắt!

  • Bạn có thể tìm thấy một bộ cơ bản với bản địa hóa không đầy đủ từ 22.000 rúp
  • Bạn sẽ phải trả nhiều tiền hơn cho các tính năng bổ sung
  • Có sẵn từ Mỹ với giá $350 cộng phí vận chuyển

Tài liệu hướng dẫn và đào tạo có sẵn ở dạng điện tử (liên kết tới tệp pdf).

  • Chúng tôi thiết kế robot sử dụng Lego Mindstorms Education EV3 - Valery Safuli, Natalia Dorozhkina

Đây không hẳn là "lập trình trò chơi" nữa, nhưng chắc chắn là một cách thuận tiện để giới thiệu bản thân với nhiều kỹ năng liên quan đến nó. Và vâng, nếu bố mẹ tôi tặng tôi một trong những thứ này khi còn nhỏ, tôi sẽ đề cử họ cho giải thưởng Phụ huynh của Năm. Khi con gái tôi lớn lên, tôi sẽ mua cho nó một chiếc... mặc dù biết đâu nó sẽ là một món quà cho chính tôi?

Đề cập đặc biệt

Mọi danh sách đều phải kết thúc ở đâu đó, và danh sách này cũng không ngoại lệ. Dưới đây là tất cả mọi thứ mà vì lý do nào đó đã không đưa nó vào những điểm chính. Nếu không có tùy chọn nào ở trên hấp dẫn bạn, hãy nhớ xem xét các tùy chọn này.

Bản mod cho Minecraft

Nếu con bạn chơi trò chơi trên máy tính, có thể chúng đã quen với Minecraft. Sửa đổi là sửa đổi trò chơi gốc và Minecraft đặc biệt phổ biến về mặt này. Mod có thể là một cách thuận tiện để học lập trình - hoặc ít nhất là tạo động lực cho việc học lập trình. Làm mod cho Minecraft Rất nhiều người. Nhược điểm là chúng được viết bằng Java và ngôn ngữ này không phù hợp với trẻ nhỏ. Tuy nhiên, nếu bạn quan tâm đến trò chơi thì rất đáng để thử. Bạn có thể tìm hiểu thêm.

trò chơi Salad

Nó là một công cụ lập trình trực quan như Stencyl và Construct2. Được sử dụng để tạo trò chơi thương mại, có sẵn phiên bản miễn phí, phiên bản trả phí cung cấp quyền truy cập vào các nền tảng khác. Cá nhân tôi chưa sử dụng GameSalad.

Codea

Codea là một ứng dụng để phát triển trò chơi iPad trên chính iPad. Chi phí $10, sử dụng Lua và cung cấp thư viện dễ học của riêng nó. Có trình soạn thảo mã, trình gỡ lỗi và các công cụ để kết nối với máy tính. Bạn có thể kết nối với máy Mac và tạo một trò chơi hoàn hảo có thể phát hành được. Gõ phím trên iPad không có gì thú vị, vì vậy bàn phím không dây thực sự là một điều cần thiết. Bao gồm rất nhiều ví dụ và rất phù hợp cho trẻ em có iPad (đặc biệt khi đó là tất cả những gì chúng có).

Kodu hoặc Dự án Spark

Đây là một trò chơi về việc tạo ra trò chơi. Trên thực tế, đây là một trò chơi có thể được sửa đổi thành bất cứ thứ gì bạn muốn. Kodu là ngôn ngữ lập trình trực quan của Microsoft. Project Spark là phiên bản sửa đổi của Kodu được phát hành cho XBox One. Điều này khác xa với cách lập trình thông thường, nhưng nhiều ý tưởng (cũng như kết quả cuối cùng!) đều giống nhau.

Mã chiến đấu

Một khái niệm thú vị - một trò chơi trên trình duyệt trong đó nhân vật được điều khiển bằng lập trình. Khi bạn tiến bộ trong trò chơi, bạn sẽ được dạy những điều phức tạp hơn. Về cơ bản, bạn học lập trình bằng cách chơi một trò chơi. Ban đầu được tạo ra để dạy Javascript, nhưng sau đó các ngôn ngữ khác đã được thêm vào. Tôi tin rằng nó hoàn toàn miễn phí nên bạn sẽ không mất bất kỳ chi phí nào để thử.

Alice

Alice là một công cụ dạy lập trình với môi trường phát triển tích hợp. Sau đây là lời của chính tác giả:

Alice là một môi trường 3D sáng tạo, trong đó bạn có thể dễ dàng làm việc với hoạt hình, kể chuyện, tạo trò chơi hoặc video. Đây là phần mềm giáo dục có sẵn miễn phí được thiết kế để giới thiệu cho sinh viên về lập trình hướng đối tượng. Nó dạy các khái niệm lập trình cơ bản thông qua việc tạo ra các video hoạt hình và các trò chơi điện tử đơn giản. Trong Alice, thế giới ảo tràn ngập các vật thể ba chiều (con người, động vật, ô tô) và học sinh viết chương trình để làm sinh động chúng.

Alice được Đại học Carnegie Mellon hỗ trợ và hoàn toàn miễn phí.

RPGMAKER

RPGMaker Ace là một sản phẩm tương tự GameMaker, được thiết kế để tạo ra một loại trò chơi cụ thể liên quan đến thể loại jRPG. Khẩu hiệu của nó có nghĩa đen là: “Đủ đơn giản cho một đứa trẻ, đủ mạnh mẽ cho một nhà phát triển”. Một số trò chơi thương mại đã được tạo bằng RPGMaker. Hoàn hảo cho con bạn nếu bé là một fan hâm mộ của thể loại này. Nó có giá 70 USD nhưng thường được bán trên Steam.

Phần kết luận

Tất nhiên, tôi không đi sâu vào chi tiết nhưng tôi đã xem qua hầu hết các lựa chọn có sẵn. Nếu bạn nghĩ điều gì đó nên được thêm vào danh sách, hãy cho tôi biết! Tôi đã cố gắng làm cho bài viết có thể hiểu được đối với những người ở bất kỳ trình độ hiểu biết nào, nhưng tất nhiên, tôi không thể đối phó được với điều này. Nếu có điều gì không rõ ràng, hãy viết. Điều chính cần nhớ là tất cả trẻ em đều khác nhau và không phải ai cũng có cùng một cách tiếp cận. Hãy chọn những gì bạn cho là tốt nhất cho con mình và nếu điều gì đó không thành công, hãy biết rằng luôn có rất nhiều lựa chọn khác!

Trẻ nhỏ dễ dàng học ngôn ngữ mới. Trong khi kinh nghiệm và kiến ​​thức của những người lớn tuổi là chìa khóa cho sự hiệu quả thì bộ não của người trẻ lại dễ uốn nắn hơn. Ngoài ngôn ngữ nói, sẽ rất tuyệt nếu giới thiệu ngôn ngữ lập trình cho trẻ ngay từ khi còn nhỏ. Micro:bit của BBC dạy cho trẻ em những kiến ​​thức cơ bản về viết mã, trong khi Kano là một máy tính tự làm (DIY) để trẻ học những kiến ​​thức cơ bản về viết mã.

Tuy nhiên, vì trí nhớ của trẻ em và người lớn khác nhau về khả năng ghi nhớ nên phương pháp học tập đối với chúng cũng phải khác nhau. Hệ thống mã hóa cung cấp nhiều cơ hội để dạy trẻ cách viết mã. Đó là một môi trường vui vẻ nhưng được kiểm soát. Thay vì gửi con bạn đến các khóa học về khoa học máy tính, hãy xem các ứng dụng dạy trẻ cách viết mã.

Khẩu hiệu của Kodable là "lập trình dành cho trẻ em, được thực hiện bằng tình yêu". Những bài học đơn giản của cô hướng tới trẻ em từ mẫu giáo đến lớp năm. Mặc dù chương trình giảng dạy K-3 chỉ bao gồm những kiến ​​thức cơ bản về mã hóa nhưng cấp độ 4 và 5 lại dạy một loạt chủ đề tập trung. Kodable tuân theo các tiêu chuẩn lập trình giống như JavaScript, đây là ngôn ngữ tuyệt vời cho người mới bắt đầu. Đó là lý do tại sao Khóa học cơ bản Kodable mang lại kết quả tuyệt vời trong việc thành thạo các kỹ năng lập trình.

Ngoài ra, quá trình chuyển đổi từ hoạt động này sang hoạt động khác diễn ra theo cách giải trí. Các yếu tố của trò chơi được thể hiện trong các nhiệm vụ của học sinh, chẳng hạn như tìm đường trong mê cung. Nhưng Kodable không làm cho việc lập trình trở nên quá dễ dàng. Khóa học thậm chí còn bao gồm các khái niệm như vòng lặp và phân nhánh. Hệ thống này dựa trên các quyết định có điều kiện (câu lệnh if/then) như phần giới thiệu ban đầu về khái niệm lập trình. Ngoài ra, Kodable khiến việc học JavaScript trở nên thú vị bằng cách sử dụng phương pháp tiếp cận vui nhộn. Nhìn chung, Kodable là một công cụ cơ bản hiệu quả để dạy trẻ cách viết mã.

Thuận lợi: Kodable có phiên bản miễn phí dựa trên web. Nó minh họa các khái niệm lập trình cơ bản như vòng lặp và phân nhánh.

Giá: Phiên bản miễn phí/trả phí

  1. Suy nghĩ và tìm hiểu Code-a-Pillar

Nghĩ và học Code-a-Pillar của Fisher-Price mang đến một phần thưởng độc đáo: nó vừa là một ứng dụng vừa là một món đồ chơi độc lập. Việc trẻ làm chủ công nghệ thông tin và lập trình chắc chắn rất hữu ích, nhưng việc trẻ dành nhiều giờ ngồi trước màn hình có thể gây hại cho sức khỏe của bé. Do đó, các nhà phát triển Think-LearnCode-a-Pillar đã kết hợp chức năng của hệ thống học tập và một món đồ chơi.

Khi người dùng trẻ làm việc thông qua chương trình, họ sẽ giải các câu đố minh họa các khái niệm mã hóa cơ bản. Hệ thống được thiết kế dành cho trẻ nhỏ từ 3-6 tuổi. Đồng thời, đồ chơi Code-a-Pillar tích hợp độc lập với ứng dụng. Một số hoạt động có thể quá khó khăn đối với những học sinh nhỏ tuổi nhất. Vì vậy, tốt nhất là tiến hành các lớp học dưới sự giám sát của người lớn. Mặc dù điều tương tự cũng có thể nói về nhóm tuổi 5-6 tuổi mà các câu đố trong phần “CandyLand” được thiết kế cho nhóm tuổi này. Hiệu ứng âm thanh và nhạc nền có thể được tắt. Đây là một tính năng hữu ích giúp hạn chế bạn tiếp xúc với những phiền nhiễu.

Thuận lợi: Đồ chơi vật lý là một phần bổ sung cho ứng dụng độc lập. Ngoài ra, nhạc và hiệu ứng có thể được tắt để không làm bạn xao lãng việc học.

Giá: Trả

  1. Minecraft

Minecraft là một trò chơi rất phổ biến. Phong cách hộp cát, nơi các quy tắc do chính người chơi tạo ra, khiến nó có khả năng thích ứng cực kỳ cao. Mặc dù chương trình không được phát triển dành riêng cho trẻ em nhưng nội dung của nó mang đến một môi trường lập trình an toàn phù hợp với mọi lứa tuổi. Blog trực tuyến Lifehacker thậm chí còn có hướng dẫn dành cho phụ huynh về cách chơi Minecraft với trẻ em. Một số mod Minecraft được viết riêng cho trẻ em (ví dụ: LearnToMod). Bạn có thể sử dụng Minecraft để giải thích cho con bạn máy chủ là gì và cách thiết lập máy chủ chơi game Linux. Trên thực tế, Linux rất tốt cho trẻ em và mang lại những trải nghiệm sống quý giá.

Tuy nhiên, Minecraft không được thiết kế dành cho đối tượng là những người học còn rất nhỏ. Đối với chúng, người lớn sẽ phải thực hiện một số cài đặt ban đầu. Sau khi hoàn tất, một bộ kiến ​​thức lập trình sẽ có sẵn thông qua LearnToMod rất dễ học. Chương trình được thảo luận tích cực trong cộng đồng trực tuyến. Do số lượng lớn các ứng dụng bổ sung nên Minecraft đắt hơn. Tuy nhiên, nó chứa nhiều hướng dẫn giúp phát triển kỹ năng lập trình trong thế giới thực. Phiên bản MinecraftPi là một môi trường tuyệt vời có thể được sử dụng làm mod Minecraft cho trẻ em.

Thuận lợi: Các mod như LearnToMod với các bài học và hướng dẫn dạy kỹ năng viết mã cho trẻ em.

  1. Tynker

Tynker là một ứng dụng tuyệt vời. Tên của nó tương tự như từ “tinkering”, hàm ý bạn cần phải bắt tay vào làm việc. Nhìn chung, Tynker dạy lập trình rất xuất sắc. Giống như nhiều ứng dụng dạy khoa học máy tính cho trẻ em, chương trình này cố gắng trình bày tài liệu một cách hấp dẫn. Nền tảng này tự hào có một số lựa chọn nhỏ về nhiệm vụ. Trẻ em có thể lập trình robot và máy bay không người lái, sửa đổi Minecraft, tạo ứng dụng và trò chơi hoặc nghiên cứu khoa học, công nghệ, kỹ thuật và toán học (STEM).

Trước khi chuyển sang học Python và JavaScript, trẻ em được khuyến khích bắt đầu học viết mã bằng cách sử dụng các khối trực quan. Nhưng ở mọi giai đoạn, chương trình đều tập trung vào các dự án, điều này sẽ thu hút học sinh và tập trung vào kết quả. Vì Tynker dạy các bài học bằng các khối trực quan trước khi chuyển sang mã thực, nên phương pháp giảng dạy của ông có thể coi là rất rõ ràng. Một môi trường toàn diện được chia thành các cấp độ tương ứng với mức độ kiến ​​thức và kỹ năng làm cho ứng dụng này trở thành một trong những hệ thống tốt nhất trong số các hệ thống dạy lập trình cho trẻ em. Bạn cũng có thể muốn xem xét chương trình tương tự Scratch đang được phát triển bởi Viện Công nghệ Massachusetts (MIT).

Thuận lợi: Chương trình này miễn phí nhưng có mức trả phí. Tynker cho phép trẻ thực hiện các dự án thú vị và phát triển kỹ năng của mình.

Giá: Miễn phí/Trả phí

  1. Nancy Drew: Codes & Clues – Trò chơi viết mã bí ẩn

NancyDrew: Codes&Clues – MysteryCodingGame (Nancy Drew: mật mã và gợi ý - một trò chơi bí ẩn dành cho lập trình viên) cung cấp một hình thức trò chơi học tập. Hơn nữa, nó bao gồm một chủ đề STEM riêng biệt với nhân vật chính của riêng nó.

Hoàn thành trò chơi thật dễ dàng và là một công cụ học tập hiệu quả. Đó là về một hội chợ công nghệ với một câu đố cần giải. Trong trò chơi, trẻ kéo các khối mã trực quan đến các vị trí thích hợp. Một số trò chơi nhỏ yêu cầu trang phục phù hợp. Common Sense Media cho Nancy Drew: Codes & Clues điểm 3/5 vì tính năng giáo dục và 4/5 vì tính dễ chơi. Một ứng dụng khác để tìm hiểu kiến ​​thức cơ bản về mã hóa, Goldieblox: Adventuresin Coding từ The Rocket Cupcake, cũng tập trung vào STEM. Nhờ lối chơi cân bằng, NancyDrew là một trong những giải pháp phần mềm tốt nhất để dạy trẻ cách viết mã.

Thuận lợi: Giao diện trực quan, lối chơi gây nghiện và chủ đề STEM.

Giá: Trả

Nền tảng: iOS/Android

  • Dịch

Lập trình bây giờ rất phổ biến. Trên khắp thế giới, 36 triệu trẻ em tham gia các hoạt động Giờ lập trình. Mục tiêu của những hoạt động này là giúp trẻ em trở thành người sử dụng công nghệ một cách chủ động thay vì thụ động và thu được kiến ​​thức có thể giúp các em có được việc làm tốt trong tương lai trong thế giới ngày càng kỹ thuật cao của chúng ta.

Ngay cả khi con bạn không muốn kiếm sống bằng lập trình trong tương lai, sự hiểu biết cơ bản về nguyên tắc lập trình sẽ phát triển tư duy của chúng và trong tương lai, trẻ có khả năng giải quyết các vấn đề phát sinh tốt hơn. Bill Gates từng nói: “Học viết phần mềm sẽ phát triển trí tuệ của bạn, giúp bạn suy nghĩ tốt hơn và tạo ra cách nhìn nhận mọi thứ. Nói chung, tôi nghĩ rằng điều này sẽ hữu ích cho một người, bất kể lĩnh vực hoạt động của anh ta là gì.”

Các nền tảng như Scratch và Alice cho phép trẻ em (và người lớn) tạo trò chơi và hoạt hình của riêng mình bằng các kỹ thuật lập trình đơn giản hóa. Tuy nhiên, không phải đứa trẻ nào cũng hứng thú với điều này. Và đối với những đứa trẻ như vậy, có rất nhiều trò chơi dạy các nguyên tắc lập trình cơ bản một cách thú vị và dễ tiếp cận.


Chúng tôi đã tổng hợp một số tùy chọn có sẵn, bao gồm một số trò chơi vẫn đang được phát triển để bạn không cần phải điên cuồng tìm kiếm chúng. Những trò chơi này có sẵn trên các nền tảng khác nhau - iOS, Android, PC, Mac, thậm chí còn có các trò chơi board - và nhiều trò chơi trong số đó, và đây là một điểm cộng lớn, được phân phối miễn phí.

Lightbot và Lightbot Jr.

Dành cho đối tượng: 4-8 tuổi (Lightbot Jr), 9+ (Lightbot)
Nền tảng: Trình duyệt web, iOS, Android
Giá: Miễn phí (trình duyệt), $3 (iOS/Android)
Thông tin thêm: Trò chơi trên trình duyệt, iTunes, Google Play

Ý kiến ​​chuyên gia: "Mặc dù có vẻ đơn giản, Lightbot làm sáng tỏ một số khía cạnh thú vị của lập trình nâng cao" - Fritz Ruher, trợ lý giáo sư khoa học máy tính, Đại học Willamette, Oregon.


Chú thích: Nhiều trường học sử dụng trò chơi Lightbot để dạy kiến ​​thức cơ bản về lập trình. Trò chơi này thậm chí còn được sử dụng ở một số trường đại học.

Lightbot là một trò chơi giải đố lập trình được tạo ra bởi Danny Yaroslavsky, một sinh viên người Canada. Mục tiêu của trò chơi là làm cho robot làm nổi bật tất cả các ô màu xanh lam trên lưới 3D. Khó khăn là việc này cần được thực hiện theo một cách tiếp cận duy nhất là tạo ra một loạt lệnh cho robot.

Yaroslavsky cho biết Lightbot dạy lập kế hoạch, kiểm tra, gỡ lỗi, quy trình và vòng lặp. Con bạn chắc chắn sẽ thích chơi với chú robot dễ thương này, khiến nó thắp sáng tất cả các viên gạch chỉ trong một lần.

Bạn có thể chơi phiên bản miễn phí của trò chơi, cung cấp thời gian chơi một giờ. Hơn nữa, bạn có thể chơi miễn phí cả trên máy tính và trên thiết bị di động của mình. Và nếu điều đó vẫn chưa đủ, hai phiên bản Lightbot đầy đủ dành cho các nhóm tuổi khác nhau hiện đang được bán trên iTunes và Google Play.

Đảo Khỉ Mã

Dành cho ai: 8 tuổi trở lên
Nền tảng: trò chơi board
Giá: $40+
Thông tin thêm: Trang web Code Monkey Island, Kickstarter
Ý kiến ​​của chuyên gia: “Code Monkey Island là một trò chơi vô cùng thú vị nhằm giới thiệu cho trẻ em về cách viết mã,” nhà giáo dục và nhà hoạt động công nghệ Phil Shapiro.


Chú thích: Code Monkey Island sẽ không biến con bạn thành lập trình viên chỉ bằng một chiếc đũa thần, nhưng nó sẽ dạy chúng những điều cơ bản về lập trình.

Raj Sidhu, cư dân Brooklyn muốn dạy trẻ em những kiến ​​thức cơ bản về lập trình một cách vui vẻ. Anh ấy đã chọn một giải pháp hoàn toàn phi kỹ thuật cho một vấn đề mang tính kỹ thuật cao và đưa những kiến ​​thức cơ bản về logic nhị phân và các lệnh điều kiện vào một trò chơi board dành cho gia đình.

Chơi Code Monkey Island khá đơn giản và trò chơi mất rất ít thời gian - chỉ khoảng 45 phút. Người chơi sử dụng các thẻ có hướng dẫn như “Di chuyển mỗi con khỉ ba ô mà không dẫm lên đá” để di chuyển đội quân khỉ của mình đi khắp đảo.

Sidhu chọn hình thức trò chơi board game vì những trò chơi như vậy gắn kết cả gia đình lại với nhau. “Tôi muốn tạo ra thứ gì đó mà trẻ em, cha mẹ và ông bà chúng có thể chơi. Tuy nhiên, đồng thời, tôi cũng muốn giúp trẻ nhận ra khả năng học tập của mình thông qua vui chơi,” anh nói trên trang Kickstarter của mình.

Code Monkey Island hóa ra là một dự án Kickstarter thành công. Trò chơi này lẽ ra đã được phân phối vào tháng 8. Bạn có thể đặt trước một bản sao của trò chơi này cho riêng mình bằng cách quyên góp $40 trở lên cho quỹ Kickstarter của dự án.

Có thể sử dụng được

Đối tượng: 5-8 tuổi
Nền tảng: iOS
Giá: Miễn phí ($7 – Phiên bản Pro)
Thông tin thêm: Trang web trò chơi Kodable, iTunes
Ý kiến ​​chuyên gia: “Trò chơi Kodable phát triển kỹ năng lập trình, do đó ngay cả trẻ nhỏ cũng có thể học lập trình. Các em thậm chí không cần biết đọc để học." - Terry Eickholtz, giáo viên năng khiếu K-5, Texas


Chú thích: Người đồng sáng lập Grechen Huebner báo cáo rằng ngay cả trẻ hai tuổi cũng có thể chơi Kodable.

Kodable là một trò chơi mê cung có 105 cấp độ. Trò chơi này giúp dạy trẻ lập trình những điều cơ bản như điều kiện, vòng lặp, hàm và gỡ lỗi.

Trò chơi hoàn toàn không sử dụng bất kỳ văn bản nào nên ngay cả trẻ nhỏ cũng có thể chơi được. Các anh hùng của trò chơi rất thông minh, trông giống như những người ngoài hành tinh ngộ nghĩnh và trẻ em rất thích họ.

Grechen Huebner, đồng sáng lập trò chơi Kodable, nói với TechRepublic: “Người lớn rất sợ lập trình, họ nghĩ lập trình là điều đáng sợ và khó khăn”. “Thật buồn cười khi nhiều người lớn đánh giá thấp khả năng của con cái họ. Và việc chúng tôi mang đến cho trẻ cơ hội giải quyết các vấn đề khác nhau ở độ tuổi sớm như vậy chứng tỏ trẻ thông minh như thế nào.”

Phiên bản miễn phí của Kodable có 45 cấp độ. Trong chính ứng dụng, bạn có thể mua các cấp độ và cấu hình khác nhau. Phiên bản Pro có giá 7 USD cũng bao gồm các bài học từ vựng và hướng dẫn học tập.

Robozzle

Dành cho ai: từ 6 tuổi trở lên (và người lớn)
Nền tảng: trình duyệt web, iOS, Android, Windows phone
Giá: Miễn phí (phiên bản trình duyệt), $0-$2 (phiên bản di động)
Thông tin thêm: phiên bản trình duyệt của trò chơi, iTunes, Google Play, Windows App Store
Ý kiến ​​của chuyên gia: “Robozzle được tiếp thị như một trò chơi giải đố mang tính xã hội, nhưng tôi thấy đây là một cách thú vị và hấp dẫn để dạy viết mã. Và có lẽ với sự trợ giúp của trò chơi này, trẻ em sẽ có hứng thú với lập trình” - Alfred Thompson, giáo viên khoa học máy tính ở trường trung học.


Chú thích: Thoạt nhìn, trò chơi Robozzle rất đơn giản. Nhưng chẳng bao lâu nữa, người chơi sẽ có thể thấy rằng mọi thứ không đơn giản như vậy.

Nếu bạn đang tìm kiếm một hoạt động cho trẻ lớn hơn (hoặc cho chính bạn), hãy thử chơi Robozzle. Đây là một trò chơi giải đố được lập trình viên Igor Ostrovsky của Microsoft tạo ra trong thời gian rảnh rỗi.

Mục tiêu của Robozzle là hướng dẫn robot vượt qua mê cung bằng các lệnh giới hạn. Mức độ khó của trò chơi khác nhau: một số cấp độ phù hợp với trẻ em và một số thử thách sẽ khiến ngay cả những lập trình viên giàu kinh nghiệm cũng phải gãi đầu.

Phiên bản trình duyệt của trò chơi này được chơi miễn phí (sử dụng Silverlight) và người chơi có thể tạo, bỏ phiếu và nhận xét về các cấp độ mới.

Robozzle có sẵn trên iOS, Windows Phone 7 và Android. Giá cả khác nhau.

Bot chở hàng

Dành cho đối tượng: dành cho trẻ em từ 5 tuổi và người lớn
Nền tảng: iOS
Miễn phí
Thêm thông tin: iTunes
Ý kiến ​​chuyên gia: “Ứng dụng iPad tuyệt vời để học viết mã. Tôi đã dùng nó để dạy hai đứa con của mình.” - Mike Lawrence, giáo viên và đồng sáng lập Học viện Giáo viên Google.


Chú thích: Cargo-Bot cho iPad được tạo bằng ứng dụng Codea

Cargo-Bot là trò chơi đầu tiên được viết riêng cho iPad. Các cấp độ đơn giản của trò chơi này phù hợp với trẻ từ 5 tuổi, nhưng sau đó các cấp độ thực sự khó mới bắt đầu.

Người chơi phải di chuyển các hộp xung quanh nhà máy bằng cần cẩu di chuyển. Nó sử dụng các khái niệm lập trình như vòng lặp, thủ tục và gỡ lỗi.

“Tôi muốn tạo ra một trò chơi trong đó mục đích là di chuyển những chiếc hộp xung quanh một nhà máy. Hãy quên rằng bạn thực sự là một lập trình viên,” nhà phát triển trò chơi Rui Viana nói trong một cuộc phỏng vấn với Fast Company.

SpaceChem

Dành cho ai: dành cho trẻ em từ 10 tuổi và người lớn
Nền tảng: PC, Mac, Linux, iOS, Android
Giá: Bản demo miễn phí, $7 (Steam), $3 (iOS/Android)
Thông tin thêm: Trang web trò chơi SpaceChem, Steam, iTunes, Google Play
Ý kiến ​​chuyên gia: “Tôi nghĩ SpaceChem là trò chơi dạy viết mã tốt nhất hiện có” - Neil Brown, Nhà nghiên cứu Giáo dục Máy tính, Đại học Kent, Vương quốc Anh.


Chú thích: SpaceChem được nhiều trường học sử dụng trong quá trình giáo dục, nhưng đồng thời nó cũng là một trò chơi.

Trò chơi SpaceChem là sự kết hợp giữa lập trình và giả hóa học trong bối cảnh khoa học viễn tưởng. Tuy nhiên, trò chơi này đã nhận được những đánh giá xuất sắc khi phát hành vào năm 2011.

Trò chơi này đủ thử thách để khiến cả học sinh trung học và người lớn phải suy nghĩ. Mục tiêu của SpaceChem là xây dựng cơ chế chống lại quái vật bằng cách sử dụng các khái niệm lập trình như thực hiện lệnh, vòng lặp, bước nhảy và chương trình con. Công ty phát triển Zachtronics Industries đã giải thích chính xác giá trị của trò chơi này là gì.

Theo blog giáo dục Gaming to Learn: “SpaceChem là trò chơi mà tôi ước mình có thể mua cho đứa trẻ 12 tuổi của mình để có thể giải các câu đố một cách điên cuồng”. “Khi bạn nghe mọi người nói về tầm quan trọng của việc học viết mã, họ sẽ nói về trò chơi này. Những trò chơi như thế này dạy người chơi cách suy nghĩ.”

Rùa robot

Dành cho ai: 3-8 tuổi
Nền tảng: trò chơi board
Giá: $25
Thêm thông tin: Trang web Robot Turtles, Kickstarter
Ý kiến ​​chuyên gia: “Hãy bắt đầu học càng sớm càng tốt! Ngạc nhiên! Tương lai bây giờ có vẻ thú vị hơn nhiều." - John Ledger, Chủ tịch, T-Mobile


Chú thích: Chơi Robot Rùa.

Trò chơi board game dạy trẻ em cách viết mã đã huy động được 600.000 USD trên Kickstarter vào năm ngoái. Mặc dù thực tế ban đầu cần phải có khoản tài trợ 25.000 USD.

Trò chơi hóa ra đang có nhu cầu. Và điều này không có gì đáng ngạc nhiên, vì Robot Turtles dạy những kiến ​​thức cơ bản về lập trình thông qua các thẻ hướng dẫn hướng dẫn rùa đi qua mê cung. 25.000 bản đầu tiên của trò chơi đã được bán hết ngay lập tức. Trẻ em phải sử dụng cú pháp, chuỗi lệnh hạn chế và gỡ lỗi khi mắc lỗi. Người tạo ra trò chơi, Dan Shapiro, cho biết phải mất vài giây để tìm ra cách chơi.

“Tôi thực sự tin rằng viết mã là một siêu năng lực mà bạn có thể mang lại cho con mình. Đây là một cách để đảm bảo rằng họ không bị bỏ lại phía sau trong những đổi mới trong tương lai”, Shapiro nói với TechCrunch.

Robot Turtles gần đây đã được công ty phát hành và phân phối trò chơi ThinkFun mua lại và được tung ra thị trường đại chúng trong tháng này.

Mã chiến đấu

Dành cho ai: 13+ (hoặc trẻ hơn chịu sự giám sát/hướng dẫn)
Nền tảng: trình duyệt web
Miễn phí
Thêm thông tin: Trang web Code Combat
Ý kiến ​​chuyên gia: "Một cách rất sáng tạo và thú vị để dạy lập trình thông qua trò chơi" - Jason Battles, Phó Trưởng khoa Chính sách và Phát triển Công nghệ Thư viện, Đại học Alabama


Chú thích: Code Combat là sự kết hợp thú vị giữa pháp sư, chiến binh, yêu tinh và lập trình.

Code Combat là trò chơi duy nhất trong danh sách của chúng tôi yêu cầu người chơi sử dụng mã thuần túy (hiện tại là Javascript, hỗ trợ thử nghiệm cho CoffeeScript, Python, Clojure và Lua). Đừng để thực tế này khiến bạn bối rối, vì Code Combat là một cơ hội tuyệt vời để vừa học hỏi vừa vui vẻ.

Bạn có thể bắt đầu với các cấp độ chơi đơn của trò chơi giả tưởng này và sau đó áp dụng kiến ​​thức lập trình đã học được của mình cho những người chơi khác.

Code Combat dự kiến ​​sẽ vẫn là một trò chơi miễn phí vì thu nhập chính của nhà phát triển đến từ việc cung cấp cho các công ty những người chơi cấp cao. Đúng vậy: bằng cách chơi trò chơi này, bạn có thể kiếm được việc làm.

Ludos (Câu đố)
Dành cho ai: 4-12 tuổi
Nền tảng: PC, Mac, iOS
Giá: 100$
Thêm thông tin: Digital Dream Labs
Ý kiến ​​chuyên gia: “Điều khiến Cloudboard (giao diện bảng điều khiển Ludos) nổi bật so với các sản phẩm khác hiện có không chỉ là sự kết hợp giữa thế giới vật lý và kỹ thuật số mà còn là sự phát triển các kỹ năng hợp tác” - Terry Eickholtz, Giáo viên Chương trình Năng khiếu K-5 , Texas


Chú thích: Ludos sử dụng các ô xếp để tạo cảm giác lập trình xúc giác cho trẻ em.

Ludos sẽ ra mắt vào tháng 8 này. Mục tiêu của trò chơi là biến việc lập trình thành một trải nghiệm thực tế, thực tế cho trẻ em. Ludos cho phép người chơi đặt các ô lệnh trực tiếp trên lưới, lập trình hành động của các nhân vật trong trò chơi.

Cork the Volcano sẽ là trò chơi Ludos đầu tiên tập trung mạnh vào các nguyên tắc lập trình cơ bản như lập kế hoạch, sắp xếp thứ tự và gỡ lỗi. Trong tương lai, các trò chơi khác sẽ xuất hiện trong hệ thống vì hệ thống này là một nền tảng mở và do đó mọi người đều có thể tạo ứng dụng cho nó.

Người viết mã

Dành cho ai: 9-14 tuổi
Nền tảng: PC, Mac, iOS, Android
Giá: $20
Thêm thông tin: Trang web Trò chơi nhỏ quan trọng, Kickstarter
Ý kiến ​​chuyên gia: “Một trò chơi giả tưởng với nhân vật chính dạy trẻ em (và người lớn!) cách viết mã? Tôi yêu mọi thứ về trò chơi này!” - Lauren Scott, Nhà phát triển web và Phó giảng viên, Dev Bootcamp


Chú thích: Trò chơi Codemancer đã huy động được số tiền trên Kickstarter nhiều gấp 4 lần so với công bố ban đầu.

Các nhà phát triển của Codemancer hy vọng rằng khi phát hành vào mùa hè năm sau, cốt truyện thú vị và nhân vật nữ chính của trò chơi sẽ giúp nó trở nên nổi bật.

Sau khi dự án Kickstarter ra mắt thành công này, người chơi sẽ sử dụng rune ma thuật để hướng dẫn các hành động khi họ giúp nữ anh hùng Aurora cứu mạng cha cô. Người sáng tạo Robert Lockhart hy vọng khả năng tiếp cận của trò chơi sẽ phá bỏ các rào cản ngăn cản trẻ em hiểu về lập trình.

“Ngôn ngữ trò chơi của Codemancer rất dễ tiếp cận,” Lockhart nói trên trang Kickstarter của mình, “nhưng nó cũng dễ dàng dịch sang các ngôn ngữ lập trình khác nhau. Các chương trình trở nên phức tạp hơn khi chúng tôi giới thiệu các khái niệm lập trình như biến, điều kiện và hàm.”

Máy móc

Dành cho ai: 8-14 tuổi
Nền tảng: PC, Mac (phiên bản iPad đang được phát triển)
Giá: Phiên bản demo miễn phí
Thông tin thêm: Trang web của thợ máy
Ý kiến ​​chuyên gia: "Các thợ máy có vẻ như đây sẽ là ví dụ điển hình nhất về một trò chơi mang tính giáo dục" - Paul Hayes, Lập trình viên và Nhà phát triển trò chơi


Chú thích: Machineers đã giành giải Trò chơi giáo dục hay nhất tại Cuộc thi và Thử thách trò chơi nghiêm túc năm 2012 ở Florida.

Machiners là một trò chơi phiêu lưu trong đó người dùng xử lý các thiết bị bị hỏng. Người chơi phải sửa chữa thiết bị bằng nguyên tắc lập trình và giao diện kéo và thả.

Enrique Lode, một thành viên của nhóm Lohika Games Đan Mạch đứng sau Machineers, đã quyết định phát hành trò chơi phiêu lưu giải đố này sau khi một người thử nghiệm trẻ em phàn nàn rằng tất cả các trò chơi giáo dục đều giống như "bông cải xanh phủ sô cô la".

Lode nói với Indie Statik: “Trò chơi này là sự chuẩn bị cho việc học sâu hơn. “Trò chơi không có toán học hay mật mã nên trẻ em sẽ không thể học lập trình. Tuy nhiên, trò chơi phát triển tư duy logic và thứ được gọi là hiểu biết về quy trình – khả năng đọc và viết các quy trình.”

Trong khi trò chơi đang được phát triển, bạn có thể tải xuống miễn phí phiên bản demo của Machineers cho PC và Mac. Lohika Games đang lên kế hoạch ra mắt một trò chơi hoàn chỉnh dành cho iPad.

Bee-Bot

Dành cho ai: 4-7 tuổi
Nền tảng: iOS
Miễn phí
Thêm thông tin: iTunes
Ý kiến ​​chuyên gia: “Đừng chú ý đến bản thân thiết bị, chỉ thử và sai, đưa ra giả thuyết, kiểm tra, thử nghiệm và thành công.” - Dog Peterson, Giáo viên dạy kỳ, Khoa Giáo dục, Đại học Windsor, Canada

Chú thích: Nhiều trường học sử dụng trò chơi Bee-Bot để dạy lập trình cơ bản

Nhà phát triển trò chơi giáo dục TSS đã tạo ra BeeBot để giúp trẻ hiểu ngôn ngữ lập trình đối tượng và các chuỗi lệnh lập trình. Một ứng dụng đơn giản và dễ tiếp cận có 12 cấp độ giới hạn thời gian, là những mê cung với độ khó không ngừng tăng lên.

Đối với trẻ trên 7 tuổi có thêm ứng dụng mang tên BeeBot Pyramid. Nó được bán lẻ với giá 0,99 USD.