2009-07-18 23 views
18

Con trai tôi rất nhiệt tình lập trình các trò chơi đơn giản trong Scratch. Tuy nhiên Scratch là một môi trường lập trình rất đơn giản (thậm chí không có chương trình con), và tôi có thể thấy rằng chẳng bao lâu anh ta sẽ cần phải chuyển sang một thứ khác.Điều gì cần dạy sau Scratch?

Có ai biết ngôn ngữ học tập tốt làm đồ họa dễ dàng nhưng cung cấp các tính năng lập trình "thực" như cấu trúc dữ liệu, chức năng, mảng và danh sách không?

Điểm thưởng nếu nó chạy dưới Linux (Ubuntu). Một câu trả lời của mẫu "ngôn ngữ Foo với thư viện Bar" cũng là một lựa chọn.

+0

Con trai của bạn bao nhiêu tuổi? –

+0

8 tuổi, nhưng dường như đã thừa hưởng bit lập trình viên từ tôi. –

+9

Rất tiếc khi nghe điều đó, nhưng vẫn có cơ hội tốt để anh có thể tiếp tục sống một cuộc sống hữu ích mà không bị ám ảnh về chuyến đi sao. – JohnFx

Trả lời

14

Làm thế nào về lua?

Có đồ họa đẹp "động cơ" được gọi là LOVE có thể lập trình hoàn toàn bằng lua. Nó có tài liệu tốt đẹp và nó không phải là rất khó.

Ngoài ra còn có nhiều công cụ tương tự khác sử dụng lua:

Có một engine 2d, nhưng tôi có thể' t tìm thấy nó vào lúc này, nó đã được tương tự như LOVE, nhưng với một chút cách tiếp cận khác với mọi thứ.

Tôi sẽ khuyên bạn nên TÌNH YÊU cho người mới bắt đầu vì nó rất dễ, có hướng dẫn hay và quan trọng nhất là bạn có thể làm những việc hay ngay lập tức.

Ngoài ra lua thường được sử dụng làm ngôn ngữ kịch bản trò chơi. Ví dụ tất cả addons cho World of Warcraft được viết bằng lua, trên thực tế tất cả giao diện được viết bằng lua. Nó có nghĩa là nó rất dễ dàng để tìm câu trả lời cho các câu hỏi liên quan đến trò chơi trong lua. Ngoài ra nếu bạn tình cờ sở hữu một trò chơi sử dụng lua như ngôn ngữ kịch bản, bạn có thể dễ dàng thêm nội dung của riêng bạn vào đó.

Tôi đã viết điều này từ góc độ trò chơi, nhưng có khá nhiều dự án sử dụng lua làm ngôn ngữ kịch bản.

Bạn cũng có thể thử python, nhưng nó không có tốt như vậy ra khỏi hộp, sẵn sàng để sử dụng và dễ dàng để tìm hiểu/hiểu các công cụ.


Đây cũng là liên kết tới lua manual.

+0

lua + LOVE có khả năng. Cách tiếp cận duy nhất cho cấu trúc dữ liệu sẽ làm cho nó dễ dàng giải thích, và các cấu trúc điều khiển (ngoài các hàm) tương tự như Scratch. Một xác định có thể. –

+0

Đã cập nhật danh sách. Bạn có thể/cũng nên cung cấp cho anh ta một mẫu đơn giản và có thể một số chức năng trợ giúp vì một số thứ trong lập trình trò chơi cơ bản không phải là "cơ bản", như trạng thái trò chơi (giới thiệu, trò chơi, trò chơi, v.v.) và hoạt ảnh. Lua khá năng động, do đó bạn có thể tùy chỉnh nó để làm cho nó dễ dàng hơn và bạn có thể cung cấp các chức năng đơn giản hóa những thứ khó hiểu cho anh ta. Bản thân tôi bắt đầu với lập trình xung quanh tuổi của mình với Zbasic và sau đó là Qbasic. –

+0

Vì vậy, lua + LOVE nhận được công việc. lua trông dễ học hơn Ruby, và bạn có thể lấy chương trình demo đầu tiên và sử dụng nó như một bộ xương cho một cái gì đó phức tạp hơn (đó là như xa như chúng ta đã có ngày hôm nay). Duyệt qua các tài liệu tôi thấy nó cũng có một công cụ vật lý đơn giản để phát hiện va chạm và các công cụ liên quan, điều này cũng rất tuyệt. –

0

Vâng, đó là đáng kính Logo cũ - không chắc chắn về cấu trúc nhưng bạn nhận được danh sách, chức năng với các thông số, và đồ họa rất đơn giản . Có rất nhiều triển khai tốt, quá. Logo thậm chí đã được ví như 'lisp mà không có tất cả các dấu ngoặc đơn'.

+0

Bất kỳ triển khai Linux nguồn mở nào? Lần trước tôi nhìn nó là tất cả những thứ thương mại. Ngoài ra đồ họa rùa đồng bằng sẽ không cắt nó nữa; nó cần sprites và các công cụ. Tôi thích ý tưởng giới thiệu FP sớm, nhưng tôi biết rằng thiếu đồ họa giống như sprit dễ dàng sẽ giết nó cho con trai tôi. –

5

Hãy xem Processing.

Tour de force là đồ họa, hoạt ảnh và thao tác trực quan. Nó cũng chạy dưới Linux.

chế biến là một nguồn ngôn ngữ lập trình mở và môi trường cho những người muốn chương trình hình ảnh, hình ảnh động và tương tác. Đó là được sử dụng bởi sinh viên, nghệ sĩ, nhà thiết kế, nhà nghiên cứu và người có sở thích cho việc học tập, tạo mẫu và sản xuất . Nó được tạo ra để dạy các nguyên tắc cơ bản của lập trình máy tính trong một ngữ cảnh trực quan và để phục vụ như một phần mềm quyển phác thảo và công cụ sản xuất chuyên nghiệp .

5

Một đánh giá tốt đẹp here gợi ý Alice và giày sau Scratch - Tôi không có kinh nghiệm cá nhân về vấn đề này, nhưng từ đánh giá có vẻ như đáng để kiểm tra.

+0

Alice chỉ có phiên bản Windows và Apple, và sẽ không chạy dưới Wine (mặc dù trong lý thuyết Java của nó, vì vậy nó nên làm việc). Giày chắc chắn. –

1

Đây là một dự án microsoft thú vị được gọi là Small Basic đó là một môi trường lập trình tốt, đơn giản, miễn phí cho việc học tập, dựa trên BASIC.

Không có điểm thưởng vì thiếu ubuntu, nhưng là một công cụ học tập thú vị.

+0

+1: Thú vị! Chỉ có 5 MB cài đặt. –

2

Đầu được viết bằng Squeak (chạy trên Linux, Windows và Mac) vì vậy tôi sẽ nói bước lên Smalltalk! Vấn đề duy nhất là thiếu một cuốn sách mới bắt đầu rất tốt về ngôn ngữ, đó là lạ khi bạn xem xét nguồn gốc của nó. Tuy nhiên, các khái niệm cơ bản rất dễ học (hầu như không có cú pháp) và môi trường khuyến khích thử nghiệm.

+0

Tôi đã cố gắng để chơi xung quanh với Squeak, nhưng tôi không thể nhìn thấy một điểm "bắt đầu ở đây" rõ ràng cho việc thực hiện bất cứ điều gì. Các hướng dẫn dành một thời gian dài trong một tour du lịch hướng dẫn của môi trường, đó là không có nghi ngờ cần thiết để có được bất cứ điều gì thực hiện, nhưng một đường cong học tập rất dốc cho một đứa trẻ. –

+1

Lỗi của hướng dẫn, tôi sợ. Nhưng thực tế, bất kỳ ngôn ngữ lập trình đầy đủ nào với một IDE phức tạp vừa phải sẽ có một đường cong học tập. Bước nhảy từ môi trường như Scratch là một bước tiến lớn. –

4

Nó có thể chỉ lớn hơn một chút khi nhảy, nhưng Python với PyGame sẽ cho phép học sinh của bạn tạo nhiều loại chương trình giống như chương trình đã được sử dụng với Scratch, nhưng với sự kiểm soát rất chặt chẽ toàn bộ sự việc hoạt động như thế nào.

  • Ưu điểm: Đó là trăn, mà là một ngôn ngữ rất dễ dàng để đọc và viết, và cung cấp một môi trường lập trình rất phong phú, mà không thực sự bất kỳ soạn sẵn theo yêu cầu.
  • Nhược điểm: SDL, sử dụng vòng lặp sự kiện mà bạn tự viết. Đây có thể là một rào cản khá lớn đối với một lập trình viên trẻ tuổi.
+0

Có, tôi nghĩ rằng sẽ đi Python sau một ngôn ngữ của Kid như Scratch là ý tưởng tốt nhất và thời gian đầu tư. Đó là kinh nghiệm của tôi từ việc dạy lập trình cho cháu trai của tôi. –

10

Nếu Scratch đang bắt đầu bị hạn chế một chút, nhưng chúng chưa sẵn sàng cho những khó khăn của việc viết mã trình soạn thảo văn bản, hãy xem Scratch-derivative "BYOB" (Build Your Own Blocks). Nghiêm túc, nó biến Scratch thành một môi trường lập trình grown-up với chức năng (và do đó đệ quy), dữ liệu cấu trúc, đa luồng và tất cả mọi thứ!

Ngoài ra còn có Panther nhưng tôi ít ấn tượng hơn (tạo khối mới trong Panther dường như yêu cầu mã hóa hàm của chúng trực tiếp trong Squeak, trong khi ở BYOB bạn có thể xây dựng chúng theo kiểu kéo theo kiểu kéo-n-thả thông thường) .

+0

Nó không khác nhiều so với Sratch, và cũng là một phiên bản beta. Không nên để một đứa trẻ học một công cụ không ổn định. Sự nhiệt tình có thể được chơi rất nhanh. –

+1

BYOB đã được đổi tên thành Snap, nó vẫn còn trong phiên bản beta, giao diện người dùng thiếu một chút đánh bóng, nhưng appart từ đó, nó thực sự giống như Scratch ++. Tôi sẽ theo dõi món đồ chơi này cho con tôi (và cả tôi nữa;) – Guillaume

0

Tôi khuyên bạn nên sử dụng CodingBat. Mặc dù CodingBat không cung cấp đồ họa, nó cung cấp các "tính năng lập trình" và thực hành đơn giản liên quan đến chuỗi, mảng và logic. Tôi nghĩ trang web này giúp phát triển nền tảng cơ bản đằng sau lập trình.

Liên kết: http://codingbat.com/

Các vấn đề liên quan