Don’t all programming languages have functions? If so, why aren’t all  dịch - Don’t all programming languages have functions? If so, why aren’t all  Việt làm thế nào để nói

Don’t all programming languages hav

Don’t all programming languages have functions? If so, why aren’t all programming
languages considered functional languages? Functional languages share a few basic
principles.
Avoiding Mutable State
The first principle is the use of immutable values. You might recall the famous Pythagorean equation from school, which relates the lengths of the sides of a triangle:
x
2
+ y
2
= z
2
If I give you values for the variables x and y, say x=3 and y=4, you can compute the value
for z(5in this case). The key idea here is that values are never modified. It would be
crazy to say 3++, but you could start over by assigning new values to the same variables.
Most programming languages don’t make a clear distinction between a value (i.e., the
contents of memory) and a variable that refers to it. In Java, we’ll use final to prohibit
variable reassignment, so we get objects that are immutable values.
Why should we avoid mutating values? First, allowing mutable values is what makes
multi threaded programming so difficult. If multiple threads can modify the same
shared value, you have to synchronize access to that value. This is quite tedious and
error-prone programming that even the experts find challenging [Goetz2006]. If you
make a value immutable, the synchronization problem disappears. Concurrent reading
is harmless, so multithreaded programming becomes far easier.
A second benefit of immutable values relates to program correctness in other ways. It
is harder to understand and exhaustively test code with mutable values, particularly if
mutations aren’t localized to one place. Some of the most difficult bugs to find in large
systems occur when state is modified non-locally, by client code that is located elsewhere in the program.
0/5000
Từ: -
Sang: -
Kết quả (Việt) 1: [Sao chép]
Sao chép!
Tất cả các ngôn ngữ lập trình không có chức năng? Nếu vậy, tại sao không phải là tất cả lập trìnhngôn ngữ được coi là ngôn ngữ hàm? Ngôn ngữ chức năng chia sẻ một vài cơ bảnnguyên tắc.Tránh Mutable nhà nướcNguyên tắc đầu tiên là việc sử dụng các giá trị không thay đổi. Bạn có thể nhớ lại phương trình Pythagore nổi tiếng từ trường học, trong đó các chiều dài các cạnh của một tam giác có liên quan:x2+ y2= z2Nếu tôi cung cấp cho bạn giá trị cho các biến x và y, nói rằng x = 3 và y = 4, bạn có thể tính toán giá trịcho z (5 in trường hợp này). Ý tưởng quan trọng ở đây là giá trị đã được sửa đổi không bao giờ. Nó sẽ làđiên để nói 3 c++, nhưng bạn có thể bắt đầu lên bởi gán cho các biến cùng một số giá trị mới.Hầu hết các ngôn ngữ lập trình không thực hiện một sự phân biệt rõ ràng giữa một giá trị (tức là, cácnội dung của bộ nhớ) và một biến đề cập đến nó. Trong Java, chúng tôi sẽ sử dụng cuối cùng để ngăn cấm««biến giải, do đó, chúng tôi nhận được các đối tượng có giá trị không thay đổi.Tại sao chúng tôi nên tránh đột giá trị? Trước tiên, cho phép các mutable giá trị là những gì làm chođa luồng lập trình khó khăn như vậy. Nếu nhiều chủ đề có thể thay đổi như vậygiá trị được chia sẻ, bạn phải đồng bộ hoá truy cập tới giá trị đó. Điều này là khá tẻ nhạt vàdễ bị lỗi lập trình rằng ngay cả các chuyên gia tìm thấy khó khăn [Goetz2006]. Nếu bạnlàm cho một giá trị không thay đổi, vấn đề đồng bộ hóa biến mất. Đồng thời đọclà vô hại, do đó, multithreaded lập trình trở nên xa dễ dàng hơn.Một lợi ích thứ hai của không thay đổi giá trị liên quan đến chương trình đúng đắn theo những cách khác. Nólà khó khăn hơn để hiểu và exhaustively kiểm tra mã với giá trị mutable, đặc biệt là nếuđột biến không phải là địa phương đến một nơi. Một số các lỗi khó khăn nhất để tìm thấy trong lớnHệ thống xảy ra khi nhà nước sửa đổi phòng không-tại địa phương, theo mã khách hàng được đặt ở những nơi khác trong chương trình.
đang được dịch, vui lòng đợi..
Kết quả (Việt) 2:[Sao chép]
Sao chép!
Đừng tất cả các ngôn ngữ lập trình có chức năng? Nếu vậy, tại sao không phải tất cả các lập trình
ngôn ngữ được coi là ngôn ngữ chức năng? Ngôn ngữ chức năng chia sẻ một vài cơ bản
nguyên tắc.
Tránh Biên Đổi Nhà nước
Nguyên tắc đầu tiên là việc sử dụng các giá trị bất biến. Bạn có thể nhớ lại các phương trình Pythagore nổi tiếng từ trường, có liên quan với độ dài các cạnh của một tam giác:
x
2
+ y
2
= z
2
Nếu tôi cung cấp cho bạn những giá trị cho các biến x và y, nói x = 3 và y = 4, bạn có thể tính toán giá trị
cho z (5in trường hợp này). Ý tưởng chính ở đây là giá trị không bao giờ thay đổi. Nó sẽ là
điên rồ khi nói 3 ++, nhưng bạn có thể bắt đầu lại bằng cách gán giá trị mới cho các biến tương tự.
Hầu hết các ngôn ngữ lập trình không có sự phân biệt rõ ràng giữa một giá trị (ví dụ, các
nội dung của bộ nhớ) và một biến chỉ với nó. Trong Java, chúng ta sẽ sử dụng cuối cùng để ngăn cấm
reassignment biến, vì vậy chúng tôi có được các đối tượng là các giá trị không thay đổi.
Tại sao chúng ta nên tránh đột biến giá trị? Đầu tiên, cho phép các giá trị có thể thay đổi là những gì làm cho
lập trình đa luồng rất khó khăn. Nếu có nhiều chủ đề có thể thay đổi cùng một
giá trị được chia sẻ, bạn phải đồng bộ hóa truy cập đến giá trị đó. Điều này là khá tẻ nhạt và
dễ bị lỗi chương trình mà ngay cả các chuyên gia tìm thách thức [Goetz2006]. Nếu bạn
làm cho một giá trị bất biến, vấn đề đồng bộ hóa sẽ biến mất. Việc đọc đồng thời
là vô hại, vì vậy lập trình đa luồng trở nên dễ dàng hơn.
Một lợi ích thứ hai của giá trị bất biến liên quan đến chương trình đúng đắn trong những cách khác. Đó
là khó khăn hơn để hiểu thấu đáo và kiểm tra mã có giá trị có thể thay đổi, đặc biệt là nếu
đột biến không khu trú ở một nơi. Một số trong những lỗi khó khăn nhất để tìm thấy trong nhiều
hệ thống xảy ra khi nhà nước đang biến đổi không địa phương, bằng mã khách hàng được đặt ở nơi khác trong chương trình.
đang được dịch, vui lòng đợi..
 
Các ngôn ngữ khác
Hỗ trợ công cụ dịch thuật: Albania, Amharic, Anh, Armenia, Azerbaijan, Ba Lan, Ba Tư, Bantu, Basque, Belarus, Bengal, Bosnia, Bulgaria, Bồ Đào Nha, Catalan, Cebuano, Chichewa, Corsi, Creole (Haiti), Croatia, Do Thái, Estonia, Filipino, Frisia, Gael Scotland, Galicia, George, Gujarat, Hausa, Hawaii, Hindi, Hmong, Hungary, Hy Lạp, Hà Lan, Hà Lan (Nam Phi), Hàn, Iceland, Igbo, Ireland, Java, Kannada, Kazakh, Khmer, Kinyarwanda, Klingon, Kurd, Kyrgyz, Latinh, Latvia, Litva, Luxembourg, Lào, Macedonia, Malagasy, Malayalam, Malta, Maori, Marathi, Myanmar, Mã Lai, Mông Cổ, Na Uy, Nepal, Nga, Nhật, Odia (Oriya), Pashto, Pháp, Phát hiện ngôn ngữ, Phần Lan, Punjab, Quốc tế ngữ, Rumani, Samoa, Serbia, Sesotho, Shona, Sindhi, Sinhala, Slovak, Slovenia, Somali, Sunda, Swahili, Séc, Tajik, Tamil, Tatar, Telugu, Thái, Thổ Nhĩ Kỳ, Thụy Điển, Tiếng Indonesia, Tiếng Ý, Trung, Trung (Phồn thể), Turkmen, Tây Ban Nha, Ukraina, Urdu, Uyghur, Uzbek, Việt, Xứ Wales, Yiddish, Yoruba, Zulu, Đan Mạch, Đức, Ả Rập, dịch ngôn ngữ.

Copyright ©2024 I Love Translation. All reserved.

E-mail: