Liệu nó có ý nghĩa để kiếm tiền từ JavaScript?
Đúng.
Nếu bạn có thể viết một trò chơi (hoặc công cụ tiện lợi, v.v.) bằng ngôn ngữ lập trình mà bạn thích và nó trở nên phổ biến đến mức bạn có thể khiến người dùng trả tiền cho đăng ký và / hoặc nhấp vào quảng cáo biểu ngữ (hoặc có lợi về mặt tài chính cho bạn theo một số cách khác như bán giấy phép để sử dụng lại mã nguồn của bạn), thì bạn đã thành công.
Có lẽ câu hỏi mà bạn có thể muốn hỏi là "Có thể không?" đó là nơi mà khía cạnh "đủ phổ biến" phát huy tác dụng. Nó thực sự hiểu rõ những gì khách hàng tiềm năng của bạn thích (trong trường hợp này là những người chơi trò chơi của bạn) và nếu họ thực sự thích trò chơi của bạn thì bạn có một trong những yếu tố quan trọng hơn để biến nó thành một thành công ( các yếu tố khác sẽ là phần bù của chi phí vận hành, chẳng hạn như phần cứng và băng thông máy chủ, hoặc chi phí lưu trữ, chi phí nhân viên hỗ trợ {nếu cuối cùng bạn cần nhân viên hỗ trợ}, v.v.).
Thách thức công nghệ
Một trong những vấn đề với lập trình JavaScript là mỗi trình duyệt web thực hiện nó một chút khác nhau (và sau đó có một cái mà tôi sẽ không đặt tên, nó thực hiện nó khác nhau đến mức các nhà phát triển thường phải mã hóa các công việc đặc biệt được sử dụng theo điều kiện về việc người dùng có đang sử dụng trình duyệt web đó không).
Mặc dù hầu hết các công việc này rất nổi tiếng, nhưng chúng có gánh nặng cần nhiều tài nguyên phát triển hơn (như có nhiều thời gian hơn để thử nghiệm với tất cả các trình duyệt web chính). Lưu ý: Tôi không cố gắng làm bạn nản lòng, tôi chỉ muốn chắc chắn rằng bạn nhận thức được vấn đề phổ biến này trước khi bắt đầu.
Tất nhiên, mỗi ngôn ngữ đều có những thách thức, vì vậy bạn có thể hưởng lợi từ việc dành một chút thời gian để nghiên cứu "ưu và nhược điểm" của các ngôn ngữ khác nhau có sẵn trước khi đưa ra quyết định của mình.
Mã nguồn obfuscation
Mặc dù obfuscation có vẻ là một động thái phổ biến, nhưng nếu bạn thực sự lo lắng về điều này thì có lẽ JavaScript không phải là ngôn ngữ phù hợp để sử dụng - bạn có thể cần đánh giá các tùy chọn khác trong đó mã nguồn được biên dịch thành một dạng nào đó (chẳng hạn như Java mã byte hoặc mã thực thi riêng cho Hệ điều hành đích mà bạn quan tâm).
Ngoài ra, khi nói đến obfuscators mã nguồn, cũng có những trình khử nhiễu có thể hỗ trợ đáng kể trong quy trình kỹ thuật đảo ngược, vì vậy bạn có thể thấy rằng obfuscation không thực sự mang lại sự bảo vệ như bạn mong đợi (và nó rất có thể là một nỗ lực lãng phí cho hầu hết các phần). Những gì các obfuscators đôi khi có thể cung cấp là một chút tối ưu hóa trong đó các tên biến được rút ngắn (vì vậy trình thông dịch JavaScript có một vài ký tự để lọc qua), nhưng ở phía máy khách, điều này có thể không được chú ý lắm.
Một khía cạnh cần xem xét là nếu bạn liên tục cập nhật mã JavaScript, việc sao chép có thể chứng minh được rất nhiều công việc cho bên thứ ba vì họ luôn phải cập nhật hệ thống sao chép của mình, đặc biệt là khi những thay đổi lớn được giới thiệu.
Nếu máy chủ của bạn đưa ra tất cả các quyết định, thì chỉ có phía máy khách của mã nguồn của bạn mới có sẵn cho công chúng, vì vậy nó có thể không thực sự quan trọng vì dù sao đó cũng là máy chủ sẽ chạy phần lớn mã thực sự quan trọng.
Flash so với JavaScript
Flash và JavaScript thường được tập trung theo các hướng khác nhau, mặc dù một trong hai thường có thể được sử dụng cho nhiều tác vụ giống nhau. Tất nhiên, khi cần đến đồ họa nhanh, Flash thường là lựa chọn phù hợp hơn giữa hai loại này; nếu trò chơi của bạn không yêu cầu loại đồ họa nhanh mà Flash phù hợp, thì tôi chắc chắn không hiểu tại sao bạn không thể sử dụng JavaScript mà không gặp nhiều rắc rối.
Hãy xem http://maps.google.com/ để biết một ví dụ về JavaScript đang được sử dụng trong ứng dụng phía máy khách nặng đồ họa - nó sử dụng JavaScript (và cụ thể hơn là AJAX) để tải xuống các lát gạch là những mảnh ảnh của Trái đất trước đây xuất phát từ quỹ đạo vệ tinh và cho phép người dùng sử dụng các phím mũi tên và chuột để điều hướng theo nhiều cách khác nhau. Nếu loại hiệu suất này sẽ phù hợp với nhu cầu thiết kế trò chơi của bạn, thì nó có thể khiến JavaScript trở thành lựa chọn khả thi hơn cho bạn.
Chứng hoang tưởng
Bạn không hoang tưởng. Ở đó, bạn đã được nói những gì bạn muốn được nói. =)
Biện minh nguồn lực chi tiêu
Nguồn mở không phải là sự cân nhắc duy nhất ...
Khi nói đến việc tiêu tiền, một kế hoạch kinh doanh có thể rất hữu ích - hiểu thị trường của bạn (cơ sở khách hàng tiềm năng, đối thủ cạnh tranh, v.v.), ngân sách của bạn (chi phí cho thiết bị, dịch vụ, tiếp thị, dự đoán bán hàng, v.v.), cuối cùng của bạn yêu cầu nhân sự (nhà phát triển, nghệ sĩ, hỗ trợ kỹ thuật, kế toán, v.v.), v.v., có thể rất hữu ích, đặc biệt nếu bạn nghiêm túc về việc kinh doanh từ việc này.
Đối với mọi khoản đầu tư, luôn có rủi ro ở đâu đó (mặc dù rủi ro không phải lúc nào cũng rõ ràng, vì vậy các nhà đầu tư có thể xác định các rủi ro khác nhau). Điểm mấu chốt là các nhà đầu tư mong đợi lợi nhuận đầu tư có lãi, và vì vậy họ sẽ muốn [ít nhất là một số] đảm bảo rằng bạn có thể khắc phục rủi ro.