Ai có thể tranh luận chống lại kinh nghiệm, bằng đại học và kỹ thuật phần mềm? Không phải tôi. Tôi chỉ nói rằng trong việc phát triển các ứng dụng PHP một trang hướng đối tượng, tôi thấy vui hơn khi biết mình có thể xây dựng toàn bộ từ đầu mà không cần lo lắng về xung đột không gian tên. Xây dựng từ đầu là điều mà nhiều người không làm nữa. Họ có công việc, thời hạn, tiền thưởng, hoặc danh tiếng cần quan tâm. Những loại này có xu hướng sử dụng quá nhiều mã được tạo sẵn với tiền cược cao, đến mức chúng không thể mạo hiểm khi sử dụng các biến toàn cục.
Có thể không tốt khi sử dụng các biến toàn cục, ngay cả khi chúng chỉ được sử dụng trong phạm vi toàn cục của một chương trình, nhưng đừng quên về những người chỉ muốn giải trí và làm cho một thứ gì đó hoạt động .
Nếu điều đó có nghĩa là sử dụng một vài biến (<10) trong vùng tên chung, thì biến đó chỉ được sử dụng trong vùng toàn cục của một chương trình, hãy cứ như vậy. Có, có, MVC, tiêm phụ thuộc, mã bên ngoài, blah, blah, blah, blah. Nhưng, nếu bạn đã chứa 99,99% mã của mình vào không gian tên và lớp, và mã bên ngoài được hộp cát, thế giới sẽ không kết thúc (tôi nhắc lại, thế giới sẽ không kết thúc) nếu bạn sử dụng biến toàn cục.
Nói chung, tôi sẽ không nói việc sử dụng các biến toàn cục là một cách làm không tốt . Tôi muốn nói rằng việc sử dụng các biến toàn cục (cờ, v.v.) bên ngoài phạm vi toàn cầu của một chương trình sẽ gây ra rắc rối và (về lâu dài) không nên vì bạn có thể mất dấu trạng thái của chúng một cách dễ dàng. Ngoài ra, tôi muốn nói rằng bạn càng học nhiều, bạn sẽ càng ít phụ thuộc vào các biến toàn cục bởi vì bạn sẽ trải nghiệm "niềm vui" khi theo dõi các lỗi liên quan đến việc sử dụng chúng. Chỉ điều này thôi cũng sẽ khuyến khích bạn tìm ra cách khác để giải quyết vấn đề tương tự. Thật trùng hợp, điều này có xu hướng đẩy người PHP theo hướng học cách sử dụng không gian tên và lớp (thành viên tĩnh, v.v.).
Lĩnh vực khoa học máy tính rất rộng lớn. Nếu chúng ta xua đuổi mọi người làm điều gì đó vì chúng ta dán nhãn nó là xấu , thì họ sẽ mất niềm vui khi thực sự hiểu được lý do đằng sau cái nhãn đó.
Sử dụng các biến toàn cục nếu bạn phải, nhưng sau đó xem liệu bạn có thể giải quyết vấn đề mà không có chúng hay không. Va chạm, kiểm tra và gỡ lỗi có ý nghĩa hơn khi bạn hiểu sâu sắc bản chất thực sự của vấn đề, không chỉ là mô tả vấn đề.