Bạn có phát triển với nội địa hóa trong tâm trí?


13

Khi làm việc trên một dự án phần mềm hoặc một trang web, bạn có phát triển với ý định nội địa hóa không?

Ý tôi là

  • Bên ngoài tất cả các chuỗi, bao gồm các thông báo lỗi.
  • Không sử dụng hình ảnh có chứa văn bản.
  • Thiết kế giao diện người dùng của bạn với mở rộng văn bản trong tâm trí.
  • Sử dụng dịch giả để kiểm tra sớm giao diện người dùng của bạn.
  • Vân vân.

Đối với các dự án bạn làm, các dự án này thuộc danh mục 'tốt đẹp để có' và để nhóm bản địa hóa lo lắng về phần còn lại, hoặc bạn có sẵn sàng bản địa hóa trong quá trình phát triển của mình không? Tôi muốn nghe cách các nhà phát triển xem nội địa hóa nói chung.


3
L10N-> bản địa hóa ... chúng ta hãy sử dụng tiếng Anh thích hợp ở đây, phải không?
Rook

11
@Rook - Đó là một ngành công nghiệp phổ biến và được chứa trong 'Từ điển viết tắt American Heritage®' - vì vậy tôi muốn nghe định nghĩa của bạn về 'tiếng Anh đúng' (lưu ý viết hoa của 'tiếng Anh' :-)).
Jimmy Collins

5
@Rook Và nó cũng đánh vần Bản địa hóa;)
Rowland Shaw

2
@Jimmy C - Không phải ở Black, không phải ở Longman, không phải ở Oxford, không phải ở Merrian ... (và tin hay không, tôi đã gặp khó khăn khi kiểm tra tất cả chúng chỉ để chắc chắn). Nhưng rõ ràng, nó chỉ xấu và không giống một từ (không chắc chắn về từ này, nhưng tôi khá mạnh về những từ đó không có số).
Rook

4
@Rook: Nó là một chữ viết tắt chữ số. Tương tự i18n cho "quốc tế hóa" và g11n cho "toàn cầu hóa". Họ có xấu không? Co le không. Thực tế là, chúng được sử dụng phổ biến.
Andy

Câu trả lời:


9

Tôi làm việc cho một công ty Fortune 500 lớn và chúng tôi luôn bắt đầu với ý định nội địa hóa. Các dự án của chúng tôi thường chỉ dành cho Hoa Kỳ, nhưng nhiều lần trong nhiều năm qua, chúng tôi sẽ viết một ứng dụng cho khách hàng và sau đó người khác sẽ thấy nó và nói "này, đó sẽ là một sự phù hợp tuyệt vời cho quốc gia X". Sau đó, điều tiếp theo bạn biết là bạn đang trải qua mã thêm nội địa hóa. Chúng tôi thực sự không mất thêm thời gian để xây dựng ứng dụng ngay từ đầu, vì vậy chúng tôi chỉ cần làm. Thêm vào đó, lợi ích bổ sung là khi một khách hàng đến với chúng tôi và yêu cầu ứng dụng của họ được sử dụng (chọn ngôn ngữ của bạn), chúng tôi đưa cho họ một tệp và bảo họ dịch nó sang (chọn ngôn ngữ của bạn) và chúng tôi đã hoàn tất .


Thật. Nhưng đối với các dự án cá nhân, tôi không. Chỉ tiếng Anh.

6

Tôi nghĩ đó là điều quan trọng 10 năm trước. Công nghệ gần đây đã giải quyết vấn đề .

Tôi sống ở một đất nước có 3 ngôn ngữ quốc gia và chỉ một trong số đó là thiểu số.

Để hiểu các vấn đề có thể xảy ra do đó, nó giống như phần phía tây của Hoa Kỳ nói một ngôn ngữ (rất) khác với phần phía đông. Hãy nghĩ rằng ở trung tâm của đất nước, dân số có phần được hợp nhất, và vì vậy bạn phải sử dụng cả hai ngôn ngữ ở mọi nơi.

Có 4 ngôn ngữ trong các ứng dụng và trang web dành cho máy tính để bàn vẫn còn rất phổ biến (3 ngôn ngữ quốc gia + tiếng Anh). Đó đôi khi là một nghĩa vụ.

Tôi đã nhận thức được nội địa hóa bởi vì tôi đã bị điều kiện bởi môi trường của tôi. Vì vậy, có, vài năm trước, tôi đã lo lắng về nó.

Bây giờ tôi không quan tâm nhiều đến việc bản địa hóa bởi vì các công cụ IDE mới nhất cho phép bạn chuyển đổi bất kỳ ứng dụng tĩnh nào thành một ứng dụng được bản địa hóa hoàn toàn rất dễ dàng.

Các công cụ tôi sử dụng với Visual Studio .NET:

  • CodeRush , một plugin Visual Studio cho phép bạn di chuyển các văn bản được mã hóa cứng vào các tệp tài nguyên.
  • Easy Localizer , trích xuất nhãn trong tệp Excel trong đó bạn thêm tất cả ngôn ngữ bổ sung, sau đó hợp nhất lại trong tệp tài nguyên của bạn.

4
Có thật không? công cụ nào cho phép điều này?
David Weiser

Thế còn những thứ như văn bản trong hình ảnh và sử dụng các chuỗi như (ví dụ) 'Trường trung học của bạn' ở các dạng có thể không được hiểu ở một số địa phương nhất định thì sao? Một nhà phát triển vẫn cần phải nhận thức được sự khác biệt về văn hóa.
Jimmy Collins

Trong Visual Studio, tôi sử dụng một công cụ từ DevExpress có tên CodeRush. Ngoài ra còn có một công cụ khác mà tôi sử dụng để dịch toàn bộ ứng dụng cùng một lúc: Easy Localizer: foss.kharkov.ua/products/easy_localizer/index.htmlm (Tôi sẽ thêm chúng để tham khảo trong câu trả lời của tôi)

4
các công cụ tốt, nhưng có nhiều thứ hơn thế - ví dụ, bố cục màn hình có thể phải thay đổi do độ dài nhãn khác nhau; giá trị tra cứu cơ sở dữ liệu sẽ cần phải được dịch; v.v.
Steven A. Lowe

@Steven & JimmyC: không có viên đạn bạc nào ở đây. Chỉ cần các công cụ tốt mà loại bỏ sự phức tạp nhất. Xin lưu ý rằng tôi nhận thấy một mẫu có nhiều năm làm việc trên các ứng dụng được bản địa hóa: Bạn không thể biết trước một từ hoặc câu đã cho sẽ có kích thước bao nhiêu trong các ngôn ngữ bạn không biết. Hãy tin tôi, họ có thể có kích cỡ rất khác nhau. Bạn điều chỉnh giao diện và bố cục của bạn trong quá trình kiểm tra của bạn.

4

Hầu hết các khách hàng của tôi chỉ yêu cầu một ngôn ngữ và trên thực tế chỉ định một ngôn ngữ đó. Do đó, chúng tôi không dành thời gian nội địa hóa ứng dụng. Tuy nhiên, điều đó không có nghĩa là chúng ta hoàn toàn có thể bỏ qua các ngôn ngữ khác. Vì vậy, chúng tôi gắn bó với những điều cơ bản:

  • Sử dụng Unicode ở mọi nơi. Đó là 2k10, không có lý do gì để không.
  • Thiết kế cho một số độ co giãn trong bố trí. Ngay cả với tất cả tiếng Anh, các phông chữ khác nhau có dấu chân màn hình rất khác nhau ở cùng một kích thước điểm.
  • Giữ các chức năng ứng dụng / mô hình dữ liệu ra khỏi lớp xem

Cá nhân, khi một ngôn ngữ bản địa hóa tiềm năng khác về cơ bản với ngôn ngữ mà ứng dụng được thiết kế ở đó sẽ diễn ra nhiều hơn so với việc lựa chọn văn bản đơn giản. Mặc dù thay thế văn bản giúp và sẽ cho phép một công ty có được triển khai "nhanh và bẩn" ở một vị trí mới so với trước đó - nhưng nó không giải quyết được những khác biệt cơ bản trong cách suy nghĩ của người dùng trong ngôn ngữ khác.

Tôi đã học tiếng Nhật và trong khi tôi chỉ có thể coi mình là người mới bắt đầu xếp hạng trong ngôn ngữ đó, tôi biết đủ rằng có một số khái niệm không có bản dịch trực tiếp. Có những ý tưởng khác nhau về những gì làm cho một cái gì đó có thể sử dụng được. Mặc dù các khái niệm lớn có thể giống nhau, nhưng đó là chi tiết thực sự tạo ra sự khác biệt với người dùng.

Để thực sự giải quyết các nhu cầu của một nền văn hóa rất khác biệt, bạn cần một bộ mặt hoàn toàn mới cho ứng dụng của mình. Đó là lý do tại sao việc tách Model / View / Controller trở nên quan trọng hơn. Miễn là ứng dụng hoạt động theo cùng một cách, phần xem có thể được thay thế hoàn toàn. Khi điều đó xảy ra, ai đó đang lên kế hoạch trả một số tiền thật để giải quyết vấn đề một cách đúng đắn.


+1 để bám sát những điều cơ bản và quan điểm của bạn về Unicode. Ngoài ra, bạn đưa ra một quan điểm tốt về 'rất nhiều điều đang diễn ra hơn là lựa chọn văn bản đơn giản'. Điều này đặc biệt đúng khi bản địa hóa các ứng dụng cho các ngôn ngữ được viết từ phải sang trái (như tiếng Ả Rập hoặc tiếng Do Thái), trong đó toàn bộ giao diện người dùng cần được nhân đôi.
Jimmy Collins

Từ quan điểm khả dụng, chỉ cần phản chiếu UI có thể không phải là lựa chọn tốt nhất. Bạn có thể phải sắp xếp lại một số yếu tố để tuân thủ các quy ước địa phương và giảm thời gian học tập cho người dùng của bạn. Các dự án quốc tế hóa / nội địa hóa nghiêm trọng cần xem xét tác động đến người dùng tại địa phương đó. Nếu họ không ứng dụng sẽ không nhận được sự chấp nhận mà các nhà tiếp thị đang hy vọng.
Berin Loritsch

3

Chúng tôi đã làm điều đó khi cần thiết: tất cả những thứ hướng đến khách hàng đều được thực hiện với i18n, vì chúng tôi đã mở rộng thị trường của chúng tôi và một số nội dung hiện có khả năng i18n, vì vậy những nhân viên sử dụng không cần nói tiếng Anh.

Vì vậy, chúng tôi đã làm nó trên cơ sở khi cần thiết, như là một khởi nghiệp.


2

Âm thanh mà mọi người đang thực hiện những nỗ lực l10n khá nhẹ. Đặc biệt, khi sử dụng tiếng Anh làm ngôn ngữ gốc, thật dễ dàng bỏ qua thực tế là các ngôn ngữ khác thường cần đến 30 - 40% không gian cho văn bản. Điều này đòi hỏi người dịch phải sử dụng các chữ viết tắt không dễ hiểu, điều này tất nhiên không tốt cho trải nghiệm người dùng.


1

Thông thường, tôi thêm quốc tế hóa sau này khi tôi cần, ngay cả khi tôi biết ngay từ đầu rằng tôi sẽ cần nó. Với các ngôn ngữ tôi đang sử dụng, sẽ không quá khó khăn để thực hiện nó trong một giai đoạn riêng biệt và tôi có thể giữ một khía cạnh rườm rà trong các giai đoạn xây dựng ban đầu.


2
Không chắc chắn đây là cách tiếp cận tốt nhất - điều gì sẽ xảy ra nếu bạn nhận được yêu cầu cho một số ngôn ngữ có thể gây rắc rối, có thể là một số ngôn ngữ byte kép như tiếng Nhật, tiếng Hàn, v.v.?
Jimmy Collins

1
Jimmy C: Hiện tại, đối với loại dự án tôi đang thực hiện, hỗ trợ cho các ngôn ngữ châu Âu như tiếng Anh, tiếng Đức, tiếng Pháp, tiếng Tây Ban Nha, tiếng Ba Lan, v.v. là đủ. Tôi chỉ không biết đủ về tiếng Nhật và các ngôn ngữ "rắc rối" khác (ví dụ: chỉ đường bằng văn bản, v.v.) để thực hiện tất cả các chuẩn bị cần thiết trong phần mềm; và sẽ không có ý nghĩa gì khi dành một lượng lớn thời gian và tiền bạc cho một thứ có lẽ không bao giờ xảy ra. BTW, byte kép không phải là vấn đề của chúng tôi, chúng tôi sử dụng Unicode ở mọi nơi: D
user281377

Nó có ý nghĩa đó là kịch bản tôi đoán.
Jimmy Collins

Bạn thực sự không cần phải biết nhiều về tiếng Ả Rập và tiếng Nhật để chuẩn bị quốc tế hóa. Có những hướng dẫn chung thường đủ tốt. Nếu bạn đang hỗ trợ nhiều ngôn ngữ châu Âu và sử dụng Unicode, rất có thể bạn sẽ đến đó.
David Thornley

1

Tôi viết các ứng dụng Android và bản địa hóa khá dễ dàng bằng cách sử dụng các tệp chuỗi kiểu java. Hầu như không có nỗ lực nào để quốc tế hóa hoàn toàn trên tất cả các ngôn ngữ Android.


Đúng là các công nghệ nền tảng mới hơn đã được thiết kế với mục đích địa phương hóa. Theo kinh nghiệm của tôi với iOS, đây là một quy trình đủ đơn giản để bản địa hóa các loại ứng dụng này.
Jimmy Collins

1

Trả lời có. Mặc dù trong môi trường tôi làm việc (Python / Zope / Plone), rất dễ dàng để bản địa hóa các chuỗi sau đó, vì vậy tôi bỏ qua điều đó nếu đó không phải là một yêu cầu ngay từ đầu.

Nhưng tôi lưu trữ văn bản trong các đối tượng unicode, vv

Vì vậy, vâng. Tôi chắc chắn rằng các ứng dụng của tôi rất dễ dàng để bản địa hóa và ngay cả khi không được bản địa hóa sẽ hoạt động trong môi trường quốc tế. Không làm như vậy là một sai lầm, vì nỗ lực cần thiết là nhỏ, và lợi ích rất lớn.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.