Hướng dẫn is python better for functional or object - python tốt hơn cho chức năng hoặc đối tượng
Tôi thấy những gì có vẻ giống như phần lớn các nhà phát triển Python về StackOverflow chứng thực việc sử dụng các công cụ chức năng ngắn gọn như lambdas, bản đồ, bộ lọc, v.v., trong khi những người khác nói mã của họ rõ ràng và có thể duy trì hơn bằng cách không sử dụng chúng. Sở thích của bạn là gì? Show Ngoài ra, nếu bạn là một lập trình viên chức năng khó tính hoặc Hardcore thành OO, bạn sử dụng những thực hành lập trình cụ thể nào khác mà bạn nghĩ là tốt nhất cho phong cách của bạn? Thực sự cảm ơn ý kiến của bạn! hỏi ngày 6 tháng 6 năm 2010 lúc 14:09Jun 6, 2010 at 14:09
1 Tôi chủ yếu sử dụng Python bằng cách sử dụng các kiểu theo hướng đối tượng và thủ tục. Python thực sự không đặc biệt phù hợp với lập trình chức năng. Rất nhiều người nghĩ rằng họ đang viết mã python chức năng bằng cách sử dụng rất nhiều Dưới đây là những suy nghĩ của tôi về lập trình chức năng và Python:
Paulmcg 60.8K15 Huy hiệu vàng90 Huy hiệu bạc128 Huy hiệu đồng15 gold badges90 silver badges128 bronze badges Đã trả lời ngày 6 tháng 6 năm 2010 lúc 18:32Jun 6, 2010 at 18:32
Mike Grahammike GrahamMike Graham 71.5K14 Huy hiệu vàng98 Huy hiệu bạc129 Huy hiệu đồng14 gold badges98 silver badges129 bronze badges Tôi sử dụng các tính năng của ngôn ngữ hoàn thành công việc với mã ngắn nhất, sạch nhất có thể. Nếu điều đó có nghĩa là tôi phải trộn cả hai, mà tôi làm khá thường xuyên, thì đó là những gì được thực hiện. Đã trả lời ngày 6 tháng 6 năm 2010 lúc 14:12Jun 6, 2010 at 14:12
Tôi vừa là một OPOP và lập trình viên chức năng và các phong cách này hoạt động rất tốt với nhau, chủ yếu là vì chúng hoàn toàn trực giao. Có rất nhiều ngôn ngữ định hướng đối tượng, chức năng và Python là một trong số đó. Vì vậy, về cơ bản, việc phân tách một ứng dụng thành các lớp là rất hữu ích khi thiết kế một hệ thống. Khi bạn thực hiện triển khai thực tế, FP sẽ giúp viết mã chính xác. Ngoài ra, tôi thấy rất khó chịu khi bạn ngụ ý rằng lập trình chức năng chỉ có nghĩa là "sử dụng các nếp gấp ở mọi nơi". Đó có lẽ là quan niệm sai lầm lớn nhất và tồi tệ nhất về FP. Nhiều điều đã được viết về chủ đề đó, vì vậy tôi sẽ chỉ nói rằng điều tuyệt vời về FP là ý tưởng kết hợp các hàm đơn giản (, chính xác và có thể tái sử dụng) thành chức năng mới, ngày càng phức tạp hơn. Bằng cách đó, khá khó để viết mã "gần như chính xác" - toàn bộ điều này thực hiện chính xác những gì bạn muốn, hoặc nó bị phá vỡ hoàn toàn. FP trong Python chủ yếu xoay quanh các trình tạo viết và người thân của họ (danh sách toàn diện) và những điều trong mô -đun Đã trả lời ngày 6 tháng 6 năm 2010 lúc 14:52Jun 6, 2010 at 14:52
Jochen Ritzeljochen RitzelJochen Ritzel 102K30 Huy hiệu vàng196 Huy hiệu bạc193 Huy hiệu Đồng30 gold badges196 silver badges193 bronze badges 1 Python chỉ có các tính năng lập trình chức năng cận biên nên tôi sẽ ngạc nhiên nếu nhiều người sử dụng nó đặc biệt cho điều đó. Ví dụ, không có cách nào để thực hiện thành phần chức năng và Ngoài ra, tôi không nghĩ rằng Đã trả lời ngày 6 tháng 6 năm 2010 lúc 14:17Jun 6, 2010 at 14:17
STHSTHsth Phim thương hiệu vàng 216K5252 gold badges274 silver badges364 bronze badges 4 Hầu hết các câu trả lời trên StackoverFlow đều ngắn, câu trả lời ngắn gọn và các khía cạnh chức năng của Python làm cho việc viết loại câu trả lời dễ dàng. Các tính năng oo của Python chỉ đơn giản là không cần thiết trong các câu trả lời 10-20 dòng, vì vậy bạn không thấy chúng ở đây nhiều như vậy. Đã trả lời ngày 6 tháng 6 năm 2010 lúc 14:49Jun 6, 2010 at 14:49
TSTENNERTSTENNERtstenner 9.84610 Huy hiệu vàng55 Huy hiệu bạc90 Huy hiệu Đồng10 gold badges55 silver badges90 bronze badges 1 Tôi chọn Python khi tôi tham gia một vấn đề ánh xạ tốt cho một giải pháp OO. Python chỉ cung cấp một khả năng hạn chế để lập trình một cách chức năng so với các ngôn ngữ chức năng toàn diện. Nếu tôi thực sự muốn lập trình chức năng, tôi sử dụng LISP. Đã trả lời ngày 6 tháng 6 năm 2010 lúc 14:22Jun 6, 2010 at 14:22
LancehlancehLanceH 1.68613 Huy hiệu bạc20 Huy hiệu đồng13 silver badges20 bronze badges 2 Là đối tượng Python hay chức năng?Python là định hướng đối tượng.Bạn có thể thực hiện lập trình chức năng trong đó.Nó được thiết kế, tuy nhiên, để ưu tiên lập trình dựa trên đối tượng.object-oriented. You can do functional programming in it. It is designed, however, to prioritize object-based programming.
Là lập trình chức năng Python tốt hơn?Python không phải là một ngôn ngữ lập trình chức năng nghiêm ngặt.Nhưng thật tầm thường để viết Python theo phong cách chức năng.Có ba chức năng cơ bản trên Iterables cho phép chúng tôi viết một chương trình mạnh mẽ theo cách rất tầm thường: bộ lọc, bản đồ và giảm.. But it is trivial to write Python in a functional style. There are three basic functions on iterables that allow us to write a powerful program in a very trivial way: filter, map, and reduce.
Là đối tượng PythonPython được coi là một ngôn ngữ lập trình hướng đối tượng hơn là ngôn ngữ lập trình thủ tục.object-oriented programming language rather than a procedural programming language.
OOP hay lập trình chức năng tốt hơn?Lập trình chức năng sẽ tốt hơn nếu bạn có một tập hợp cố định và bạn cần thêm các hoạt động cho chúng.Thêm các chức năng thực hiện các tính toán trên các loại dữ liệu hiện có là một ví dụ về điều này.OOP hoạt động tốt khi bạn có một bộ hoạt động cố định trên mọi thứ và bạn cần thêm nhiều thứ hơn.. Adding functions that perform calculations on existing data types is one example of this. OOP works well when you have a fixed set of operations on things, and you need to add more things. |