Theo tôi thấy, điều này hoàn toàn là vì lý do tiếp thị . Và ngoài ra có thể làm cho cuộc sống của chúng ta khó khăn hơn.
Các đối số tiếp thị
Bạn biết danh sách các tính năng điên rồ này mà hầu hết các ngôn ngữ tự hào? Nói chung, nó khá vô dụng, bởi vì nó khác xa với ngôn ngữ mà nó không cung cấp nhiều thông tin cụ thể, nhưng nó cho phép người ta nhanh chóng ăn mặc bàn có dấu và chữ thập và kết luận chính xác rằng vì X có nhiều dấu tích hơn Y nên nó phải để tốt hơn.
Vâng, hỗ trợ Unicode cho các định danh là một trong những dòng đó. Không quan trọng là so với hỗ trợ Lambda, hỗ trợ lập trình chung, v.v ... có thể không nhiều, mọi người vẽ các bảng không quan tâm đến chất lượng của từng dòng, chỉ về số lượng của chúng.
Và do đó, họ có thể tự hào: "Ah, với Y, bạn không có hỗ trợ Unicode cho số nhận dạng của mình! Trong X chúng tôi làm, vì vậy đối với sinh viên thì dễ dàng hơn nhiều!"
Sai lầm của khả năng tiếp cận
Thật không may, các đối số của khả năng tiếp cận là sai lầm.
Ồ, tôi hiểu rằng việc có thể viết "résultatDuJetDeDé" thay vì "diceThrowResult" (vâng tôi là người Pháp) có vẻ như là một chiến thắng trong ngắn hạn ... tuy nhiên có những hạn chế!
Lập trình là về giao tiếp
Chương trình của bạn không chỉ có ý nghĩa đối với trình biên dịch (có thể quan tâm ít hơn đến các định danh bạn sử dụng), nó cũng có nghĩa là cho các nghiên cứu sinh của bạn. Họ cần có khả năng đọc nó, và hiểu nó.
- đọc nó ngụ ý có thể hình dung các ký tự bạn đã sử dụng, Unicode không được hỗ trợ tốt bởi tất cả các phông chữ
- hiểu nó có nghĩa là dựa vào các định danh - trừ khi bạn bổ sung chúng bằng các bình luận dài dòng, nhưng điều đó vi phạm quy tắc DRY.
Tất nhiên, bạn cùng lớp của bạn có thể nói cùng một ngôn ngữ bạn làm (không rõ ràng, tôi đã có các lớp lập trình với người Đức, Tây Ban Nha, Libanes và Chineses), và giáo viên của bạn cũng vậy ... nhưng giả sử rằng bằng cách nào đó bạn đang làm việc ở nhà và đột nhiên cần sự giúp đỡ: Internet rất tuyệt, bạn có thể nói chuyện với hàng ngàn hàng ngàn người biết giải pháp, họ sẽ chỉ trả lời nếu họ hiểu câu hỏi của bạn. Và bạn cần phải hiểu câu trả lời của họ là tốt.
Lập trình đòi hỏi sự hiểu biết
Khả năng truy cập và khởi tạo yêu cầu bạn dựa vào các thư viện để thực hiện công việc nặng nề cho bạn: bạn không muốn phát minh lại một lớp IO để đọc từ / ghi vào bảng điều khiển trong bài tập đầu tiên.
- Những ngôn ngữ đó là những thư viện được viết?
- Những ngôn ngữ này là những thư viện tài liệu?
Nếu bạn trả lời tiếng Ả Rập Morrocan, tôi sẽ ngạc nhiên.
Trừ khi bạn chỉ dựa vào các bài giảng mà bạn hỗ trợ, và những tài liệu trình bày toàn diện về mọi tính năng thư viện bạn sẽ cần sử dụng (và thậm chí có thể là các thư viện dịch), thì bạn sẽ phải học một chút ngôn ngữ tiếng Anh. Nhưng sau đó, có lẽ bạn đã làm rất lâu trước khi bạn bắt đầu khóa học lập trình này.
Tiếng Anh là...
... ngôn ngữ chung của các lập trình viên (và hầu hết các nhà khoa học).
Càng sớm thừa nhận nó, và đi cùng với nó hơn là chiến đấu chống lại nó, thì càng sớm có thể thực sự học hỏi và tiến bộ.
Một số người chắc chắn sẽ chống lại điều này, và bảo vệ chính xác quyền nói ngôn ngữ mà họ lựa chọn (ngôn ngữ mẹ đẻ của họ), tuy nhiên, như Babel đã chứng minh, càng sử dụng nhiều ngôn ngữ, giao tiếp càng khó khăn hơn.
Vẫn...
Đúng, như đã được tranh luận nhiều lần, một số hỗ trợ Unicode (chủ yếu là các ký hiệu) có thể giúp dễ dàng hiểu được cho những người phải dịch các công thức toán học hoặc vật lý, ví dụ, thành mã. Có một nhược điểm là một số biểu tượng bị quá tải, nhưng nó vẫn có thể giúp ích.
Vậy tại sao ?
Vâng, như đã nói, nó không thực sự về sự tiện lợi của người dùng, cũng như về tuyên bố tiếp thị. Điều này cũng dễ dàng vì trình phân tích cú pháp đã nhận biết Unicode cho các chuỗi và nhận xét, vì vậy hầu hết đều thực hiện bước nhảy.
Và có thể có một lợi ích cho người dùng nhất định.
Nhưng cá nhân tôi sẽ chỉ đối phó với mã được viết bằng định danh tiếng Anh. Tôi không quan tâm nếu bạn cần sự giúp đỡ của tôi với đoạn mã của bạn hoặc nếu thư viện của bạn tuyệt vời và tôi có thể kiếm được nhiều tiền bằng cách sử dụng nó: nếu tôi không thể hiểu nó, tôi sẽ phải bỏ qua nó.