Tôi muốn biết tại sao Python không hoàn toàn hướng đến đối tượng. Ví dụ, nó không hỗ trợ các công cụ sửa đổi cấp độ truy cập riêng tư, công khai, được bảo vệ.
Những lợi thế và bất lợi của điều này là gì? Theo các biểu thức này, Python phù hợp với những ứng dụng nào [máy tính để bàn, khoa học, web hoặc khác]?
wjandrea
25.2k8 Huy hiệu vàng53 Huy hiệu bạc74 Huy hiệu đồng8 gold badges53 silver badges74 bronze badges
Hỏi ngày 24 tháng 7 năm 2010 lúc 13:47Jul 24, 2010 at 13:47
Mahdi Amrollahimahdi AmrollahiMahdi Amrollahi
2.8505 huy hiệu vàng25 Huy hiệu bạc35 Huy hiệu đồng5 gold badges25 silver badges35 bronze badges
6
Python không hỗ trợ đóng gói mạnh mẽ, đây chỉ là một trong nhiều tính năng liên quan đến thuật ngữ "hướng đối tượng".
Câu trả lời chỉ đơn giản là triết học. Guido không thích che giấu mọi thứ, và nhiều người trong cộng đồng Python đồng ý với anh ta.
Đã trả lời ngày 24 tháng 7 năm 2010 lúc 13:51Jul 24, 2010 at 13:51
Marcelo Cantosmarcelo CantosMarcelo Cantos
177K38 Huy hiệu vàng322 Huy hiệu bạc362 Huy hiệu Đồng38 gold badges322 silver badges362 bronze badges
7
Guido đã từng nói rằng "tất cả chúng ta đều đồng ý người lớn ở đây". Đây là lời giải thích dài hơn từ từ lâu: //mail.python.org/pipermail/tutor/2003-Ormult/025932.html
Có một thỏa thuận nhấn mạnh các yếu tố riêng tư và bạn không nên sử dụng chúng. Trừ khi bạn biết bạn đang làm gì và bạn thực sự muốn.
Liên kết cũng đề cập đến một cách khác để đặt nó trong trường hợp Perl:
"Một mô -đun Perl sẽ thích bạn ở ngoài phòng khách của nó vì bạn không được mời, không phải vì nó có một khẩu súng ngắn."
because you weren't invited, not because it has a shotgun."
Đã trả lời ngày 24 tháng 7 năm 2010 lúc 13:53Jul 24, 2010 at 13:53
1
Tôi nghĩ Python được thiết kế để trở thành một con lai. Bạn có thể viết trong các kiểu định hướng đối tượng hoặc chức năng.
Đặc điểm của định hướng đối tượng là sự trừu tượng, đóng gói, kế thừa và đa hình. Cái nào trong số này bị thiếu trong Python?
Định hướng đối tượng là một sự liên tục. Chúng ta có thể nói rằng Smalltalk là người thuần khiết nhất, và tất cả những người khác chiếm những địa điểm khác nhau trên quy mô.
Không ai có thể nói giá trị của là 100% thuần khiết là gì. Có thể viết mã hướng đối tượng rất tốt bằng các ngôn ngữ không phải là smalltalk, bao gồm Python.
Python rất hữu ích trong tất cả các lĩnh vực đó: khoa học [numpy], web [django] và máy tính để bàn.
Đã trả lời ngày 24 tháng 7 năm 2010 lúc 13:52Jul 24, 2010 at 13:52
Duffymoduffymoduffymo
302K44 Huy hiệu vàng367 Huy hiệu bạc555 Huy hiệu Đồng44 gold badges367 silver badges555 bronze badges
Tôi tin rằng Python là một ngôn ngữ thực tế, rất thực tế.
Các khái niệm cung cấp giá trị cho nhà phát triển được đưa vào, mà không xem xét quá nhiều về các khái niệm thần học như "thiết kế oo thích hợp" và công cụ. Đó là ngôn ngữ cho những người có việc phải làm.
Tôi nghĩ rằng Python phù hợp cho tất cả các loại môi trường, mặc dù máy tính để bàn hơi khó khăn do thiếu một khung. Đối với tất cả các ứng dụng, rất tiện dụng để sử dụng một khung, như Numpy cho các công cụ tính toán, xoắn hoặc Django cho các công cụ web và wxwidgets hoặc các thứ khác cho các công cụ máy tính để bàn.
Đã trả lời ngày 24 tháng 7 năm 2010 lúc 13:53Jul 24, 2010 at 13:53
Tôi nghĩ Python được thiết kế để trở thành một con lai. Bạn có thể viết trong các kiểu định hướng đối tượng hoặc chức năng.extraneon
Đặc điểm của định hướng đối tượng là sự trừu tượng, đóng gói, kế thừa và đa hình. Cái nào trong số này bị thiếu trong Python?2 gold badges46 silver badges50 bronze badges
3
Định hướng đối tượng là một sự liên tục. Chúng ta có thể nói rằng Smalltalk là người thuần khiết nhất, và tất cả những người khác chiếm những địa điểm khác nhau trên quy mô.
Không ai có thể nói giá trị của là 100% thuần khiết là gì. Có thể viết mã hướng đối tượng rất tốt bằng các ngôn ngữ không phải là smalltalk, bao gồm Python.Jul 24, 2010 at 14:05
Python rất hữu ích trong tất cả các lĩnh vực đó: khoa học [numpy], web [django] và máy tính để bàn.deinst
Đã trả lời ngày 24 tháng 7 năm 2010 lúc 13:523 gold badges46 silver badges45 bronze badges
Duffymoduffymo
302K44 Huy hiệu vàng367 Huy hiệu bạc555 Huy hiệu Đồng
Tôi tin rằng Python là một ngôn ngữ thực tế, rất thực tế.3 gold badges24 silver badges32 bronze badges
Các khái niệm cung cấp giá trị cho nhà phát triển được đưa vào, mà không xem xét quá nhiều về các khái niệm thần học như "thiết kế oo thích hợp" và công cụ. Đó là ngôn ngữ cho những người có việc phải làm.Dec 23, 2010 at 19:00