Phần mềm được phát triển bằng Python là gì?

Có hơn 500 ngôn ngữ lập trình hiện tại, với nhiều ngôn ngữ được viết hơn mỗi ngày. Phải thừa nhận rằng phần lớn các chồng chéo này và một số lượng lớn không bao giờ được sử dụng bên ngoài môi trường lý thuyết hoặc phòng thí nghiệm. Nhưng đối với các ngôn ngữ lập trình được sử dụng trong viết mã và kinh doanh hàng ngày, bạn phải lựa chọn. Bạn nên học những ngôn ngữ nào và tại sao bạn nên đầu tư thời gian vào việc học chúng?

Vì đây là một trang web dành riêng cho Python, chúng tôi đã cho bạn biết lý do tại sao Python là một ngôn ngữ tuyệt vời để học. Và bạn có thể biết về cách Python có lẽ là ngôn ngữ được ưa thích nhất cho Raspberry Pi [vì hầu hết đều được cài đặt sẵn nó]. Và khi biết điều đó, bạn sẽ biết mình có thể làm được những điều tuyệt vời gì với bộ công cụ Pi và chỉ cần một chút khéo léo. Mặc dù thật dễ dàng để biết cách bạn có thể mày mò với Python, nhưng bạn có thể tự hỏi làm thế nào điều này có thể chuyển thành các ứng dụng kinh doanh thực tế và trong thế giới thực

Những gì chúng tôi sẽ làm bây giờ là cho bạn biết về tám công ty hàng đầu mà bạn biết sử dụng Python. Bằng cách đó, bạn có thể thấy những cơ hội tuyệt vời trong thế giới thực dành cho các nhà phát triển Python ngoài kia

Ánh sáng công nghiệp và ma thuật

Industrial Light and Magic [ILM] là công ty sản xuất hiệu ứng đặc biệt được thành lập vào năm 1975 bởi George Lucas để tạo FX cho Chiến tranh giữa các vì sao. Kể từ đó, họ trở thành đồng nghĩa với FX, giành được nhiều giải thưởng cho tác phẩm của họ trong phim và quảng cáo

Trong những ngày đầu, ILM tập trung vào các hiệu ứng thực tế, nhưng sớm nhận ra rằng các hiệu ứng do máy tính tạo ra là tương lai của FX nói chung. Bộ phận CGI của họ được thành lập vào năm 1979 và hiệu ứng đầu tiên của họ là chuỗi vụ nổ của Dự án Genesis trong Star Trek II. Cơn thịnh nộ của Khan

Ban đầu, studio CGI của ILM chạy trên hệ vỏ Unix, nhưng điều này chỉ xử lý một lượng công việc tương đối thấp. Vì hãng phim đã nhìn thấy trước tương lai của CGI nên họ bắt đầu tìm kiếm một hệ thống có thể xử lý quá trình nâng cấp mạnh mẽ mà họ đã thấy trong tương lai.

ILM đã chọn Python 1. 4 trên Perl và Tcl, chọn sử dụng Python vì tích hợp vào cơ sở hạ tầng hiện có của họ nhanh hơn nhiều. Do khả năng tương tác dễ dàng của Python với C và C++, ILM rất đơn giản để nhập Python vào phần mềm chiếu sáng độc quyền của họ. Điều này cho phép họ đặt Python ở nhiều nơi hơn, sử dụng nó để gói các thành phần phần mềm và mở rộng các ứng dụng đồ họa tiêu chuẩn của họ

Studio đã sử dụng Python trong nhiều khía cạnh khác trong công việc của họ. Các nhà phát triển sử dụng Python để theo dõi và kiểm tra chức năng đường ống, duy trì cơ sở dữ liệu của mọi hình ảnh được tạo cho mỗi bộ phim. Khi ngày càng nhiều chương trình của ILM được kiểm soát bởi Python, nó đã tạo ra một bộ công cụ thống nhất đơn giản hơn cho phép tạo ra một quy trình sản xuất hiệu quả hơn. Đối với một ví dụ trong thế giới thực, không đâu khác ngoài OpenEXR, một định dạng tệp HD được ILM sử dụng. Là một phần của gói, PyIlmBase được bao gồm [mặc dù nó có phụ thuộc vào Boost]

Mặc dù có nhiều đánh giá, ILM tiếp tục nhận thấy Python là giải pháp tốt nhất cho nhu cầu của mình. Sự kết hợp giữa mã nguồn mở kết hợp với khả năng sao lưu các thay đổi đảm bảo rằng Python sẽ tiếp tục đáp ứng nhu cầu của ILM trong một thời gian dài

Loại bỏ các quảng cáo

Google

Google đã hỗ trợ Python ngay từ đầu. Ban đầu, những người sáng lập Google của “Python nơi chúng ta có thể, C ++ nơi chúng ta phải. ” Điều này có nghĩa là C++ đã được sử dụng khi cần kiểm soát bộ nhớ và mong muốn độ trễ thấp. Ở các khía cạnh khác, Python được kích hoạt để dễ bảo trì và phân phối tương đối nhanh

Ngay cả khi các tập lệnh khác được viết cho Google bằng Perl hoặc Bash, chúng thường được mã hóa lại thành Python. Lý do là vì tính dễ triển khai và cách duy trì Python đơn giản. Trên thực tế, theo Steven Levy – tác giả của “In the Plex”, con nhện thu thập dữ liệu web đầu tiên của Google được viết lần đầu tiên bằng Java 1. 0 và khó đến mức họ đã viết lại nó thành Python

Python hiện là một trong những ngôn ngữ phía máy chủ chính thức của Google—C++, Java và Go là ba ngôn ngữ còn lại—được phép triển khai để sản xuất. Và trong trường hợp bạn không thực sự chắc chắn về tầm quan trọng của Python đối với Google, thì BDFL rất riêng của Python, Guido van Rossum, đã làm việc tại Google từ năm 2005 đến 2012

Trên hết, Peter Norvig nói

“Python đã là một phần quan trọng của Google ngay từ đầu và vẫn như vậy khi hệ thống phát triển và phát triển. Ngày nay, hàng tá kỹ sư của Google sử dụng Python và chúng tôi đang tìm kiếm thêm những người có kỹ năng về ngôn ngữ này. ”

Facebook

Các kỹ sư sản xuất của Facebook đặc biệt quan tâm đến Python, khiến nó trở thành ngôn ngữ phổ biến thứ ba tại gã khổng lồ truyền thông xã hội [chỉ sau C ++ và phương ngữ PHP độc quyền của họ, Hack]. Trung bình, có hơn 5.000 cam kết đối với các tiện ích và dịch vụ tại Facebook, quản lý cơ sở hạ tầng, phân phối nhị phân, hình ảnh phần cứng và tự động hóa hoạt động

Việc dễ dàng sử dụng các thư viện Python có nghĩa là các kỹ sư sản xuất không phải viết hoặc duy trì nhiều mã, cho phép họ tập trung vào việc đưa các cải tiến vào hoạt động. Nó cũng đảm bảo rằng cơ sở hạ tầng của Facebook có thể mở rộng hiệu quả

Theo một bài đăng năm 2016 của Facebook, Python hiện chịu trách nhiệm cho nhiều dịch vụ trong quản lý cơ sở hạ tầng. Chúng bao gồm sử dụng TORconfig để xử lý thiết lập và chụp ảnh chuyển đổi mạng, FBOSS cho CLI chuyển đổi hộp trắng và sử dụng Dapper để lên lịch và thực hiện công việc bảo trì

Facebook đã xuất bản nhiều dự án Python mã nguồn mở được viết cho Py3 bao gồm API Quảng cáo Facebook và khung IRCbot Python Async. Facebook hiện đang trong quá trình nâng cấp cơ sở hạ tầng và trình xử lý của họ lên 3. 4 từ 2 và AsyncIO đang trợ giúp các kỹ sư của họ trong quá trình này

Instagram

Vào năm 2016, nhóm kỹ sư Instagram đã khoe khoang rằng họ đang chạy triển khai khung web Django lớn nhất thế giới, được viết hoàn toàn bằng Python. Điều này có thể vẫn đúng cho đến ngày nay. Min Ni, một kỹ sư phần mềm tại Instagram nói điều này về việc sử dụng Python trong sản xuất của họ

“Ban đầu, chúng tôi chọn sử dụng Python vì nó nổi tiếng về tính đơn giản và tính thực tế, điều này phù hợp với triết lý của chúng tôi là 'làm điều đơn giản trước tiên'. ’“

Kể từ đó, nhóm kỹ thuật của Instagram đã đầu tư thời gian và nguồn lực để duy trì khả năng triển khai Python của họ ở quy mô lớn [~800 triệu người dùng hoạt động hàng tháng] mà họ đang hoạt động tại

“Với công việc chúng tôi đã bỏ ra để xây dựng khung hiệu quả cho dịch vụ web của Instagram, chúng tôi tự tin rằng mình sẽ tiếp tục mở rộng cơ sở hạ tầng dịch vụ của mình bằng Python. Chúng tôi cũng đã bắt đầu đầu tư nhiều hơn vào ngôn ngữ Python và đang bắt đầu khám phá việc chuyển Python của chúng tôi từ phiên bản 2 sang 3. ”

Vào năm 2017, Instagram đã di chuyển hầu hết cơ sở mã Python của họ từ Python 2. 7 đến Python 3. Bạn có thể xem bài phát biểu quan trọng về PyCon 2017 mà Lisa Guo và Hui Ding đã trình bày và nghe về trải nghiệm của họ với quá trình di chuyển mã khổng lồ này

Spotify

Gã khổng lồ phát trực tuyến nhạc này là một người ủng hộ rất lớn cho Python, sử dụng ngôn ngữ này chủ yếu để phân tích dữ liệu và các dịch vụ phụ trợ. Ở mặt sau, có một số lượng lớn các dịch vụ giao tiếp qua 0MQ hoặc ZeroMQ, một thư viện và khung mạng nguồn mở được viết bằng Python và C++ [trong số các ngôn ngữ khác]

Lý do mà các dịch vụ được viết bằng Python là vì Spotify thích quy trình phát triển nhanh như thế nào khi viết và mã hóa bằng Python. Tất cả các bản cập nhật gần đây nhất cho kiến ​​trúc của Spotify đều đang sử dụng gevent, cung cấp vòng lặp sự kiện nhanh với API đồng bộ cấp cao

Để cung cấp các đề xuất và đề xuất cho người dùng, Spotify dựa vào khối lượng lớn phân tích. Để giải thích những điều này, Spotify sử dụng Luigi, một mô-đun Python đồng bộ hóa với Hadoop. Mô-đun mã nguồn mở này xử lý cách các thư viện hoạt động cùng nhau và nhanh chóng hợp nhất nhật ký lỗi để cho phép khắc phục sự cố và triển khai lại

Tổng cộng, Spotify sử dụng hơn 6000 quy trình Python riêng lẻ hoạt động cùng nhau trên các nút của cụm Hadoop

Loại bỏ các quảng cáo

hỏi đáp

Nền tảng câu hỏi và câu trả lời có nguồn gốc từ cộng đồng khổng lồ này đã suy nghĩ rất lâu về ngôn ngữ mà họ muốn sử dụng để thực hiện ý tưởng của mình. Charlie Cheever, một trong những người sáng lập Quora, đã thu hẹp lựa chọn của họ xuống Python, C#, Java và Scala. Vấn đề lớn nhất của họ khi tiếp tục với Python là thiếu tính năng kiểm tra đánh máy và độ chậm tương đối của nó

Theo Adam D'Angelo, họ quyết định không sử dụng C# vì đó là ngôn ngữ độc quyền của Microsoft và họ không muốn chịu bất kỳ thay đổi nào trong tương lai. Ngoài ra, mọi mã nguồn mở đều có hỗ trợ hạng hai tốt nhất

Java khó viết hơn Python và nó không hoạt động tốt với các chương trình không phải Java như Python đã làm. Vào thời điểm đó, Java còn ở giai đoạn sơ khai, vì vậy họ lo lắng về sự hỗ trợ trong tương lai và liệu ngôn ngữ này có tiếp tục phát triển hay không.

Thay vào đó, những người sáng lập Quora đã dẫn đầu từ Google, chọn sử dụng Python ở nơi họ có thể vì tính dễ viết và dễ đọc của nó, đồng thời triển khai C ++ cho các phần quan trọng về hiệu suất. Họ đã giải quyết vấn đề thiếu kiểm tra đánh máy của Python bằng cách viết các bài kiểm tra đơn vị thực hiện nhiều điều tương tự

Một cân nhắc quan trọng khác khi sử dụng Python là sự tồn tại của một số khung tốt vào thời điểm đó bao gồm Django và Pylons. Ngoài ra, vì họ biết rằng Quora sẽ liên quan đến các tương tác giữa máy chủ/máy khách mà không nhất thiết phải tải toàn bộ trang, nên việc Python và JS kết hợp tốt với nhau là một điểm cộng rất lớn

Netflix

Netflix sử dụng Python theo cách rất giống với Spotify, dựa vào ngôn ngữ này để hỗ trợ phân tích dữ liệu của nó ở phía máy chủ. Nó không chỉ dừng lại ở đó, tuy nhiên. Netflix cho phép các kỹ sư phần mềm của họ chọn ngôn ngữ để viết mã và đã nhận thấy sự gia tăng lớn về số lượng ứng dụng Python

Khi được khảo sát, các kỹ sư của Netflix đã trích dẫn thư viện tiêu chuẩn, cộng đồng phát triển cực kỳ tích cực và rất nhiều thư viện bên thứ ba phong phú có sẵn để giải quyết gần như mọi vấn đề nhất định. Ngoài ra, vì Python rất dễ phát triển, nên nó đã trở thành cốt lõi trong nhiều dịch vụ khác của Netflix

Một trong những nơi chính mà Python được sử dụng là trong Cổng cảnh báo trung tâm. Ứng dụng web RESTful này xử lý các cảnh báo từ mọi nơi, sau đó định tuyến chúng đến những người hoặc nhóm cần xem chúng. Ngoài ra, ứng dụng có khả năng chặn các cảnh báo trùng lặp đã được xử lý và trong một số trường hợp, thực hiện các giải pháp tự động như khởi động lại một quy trình hoặc chấm dứt thứ gì đó đang bắt đầu bị rung. Ứng dụng này là một chiến thắng lớn cho Netflix khi xem xét khối lượng cảnh báo tuyệt đối. Xử lý chúng một cách thông minh có nghĩa là các nhà phát triển và kỹ sư không bị ngập trong các cuộc gọi dư thừa

Một lĩnh vực khác mà Python được sử dụng tại Netflix là với các ứng dụng khỉ được sử dụng để theo dõi các thay đổi và lịch sử bảo mật. Những con khỉ này được sử dụng để theo dõi và cảnh báo bất kỳ thay đổi nào trong các chính sách liên quan đến bảo mật EC2 trong bất kỳ nhóm nào, theo dõi mọi thay đổi trong các môi trường này. Chúng cũng được sử dụng để đảm bảo theo dõi hàng chục chứng chỉ SSL được đính kèm với nhiều miền của Netflix. Trong quá trình theo dõi, Netflix đã thấy số lần hết hạn không mong muốn giảm từ một phần tư xuống còn không kể từ năm 2012

Dropbox

Hệ thống lưu trữ dựa trên đám mây này sử dụng Python trong máy khách để bàn của nó. Nếu bạn có bất kỳ nghi ngờ nào về việc Dropbox đã đầu tư như thế nào vào Python, hãy xem xét rằng vào năm 2012, họ đã thuyết phục được Guido van Rossum, người tạo ra Python và nhà độc tài nhân từ suốt đời, rời khỏi Google và gia nhập Dropbox

Rossum gia nhập Dropbox với điều kiện anh ấy sẽ là kỹ sư, không phải trưởng nhóm hay thậm chí là quản lý. Trong năm đầu tiên của mình, anh ấy đã có thể giúp mang lại khả năng chia sẻ kho dữ liệu với những người dùng khác trong cộng đồng Dropbox

Mặc dù rất nhiều thư viện và nội dung bên trong của Dropbox là độc quyền và không phải nguồn mở, công ty đã phát hành một API rất hiệu quả được mã hóa bằng python cho phép bạn xem các kỹ sư của họ đang suy nghĩ như thế nào. Bạn cũng có thể hiểu ẩn ý khi đọc các cuộc phỏng vấn với các kỹ sư Dropbox về tỷ lệ phần trăm lớn mã phía máy chủ của họ là Python

Thật thú vị khi lưu ý rằng mặc dù các chương trình phía máy khách được mã hóa bằng Python, nhưng chúng sử dụng nhiều thư viện khác nhau trên cả máy Mac và Windows để cho phép trải nghiệm thống nhất. Điều này là do Python không được cài đặt sẵn trên Windows và tùy thuộc vào máy Mac của bạn, phiên bản Python của bạn sẽ khác nhau

reddit

Trang web này có 542 triệu khách truy cập mỗi tháng trong năm 2017, trở thành trang web được truy cập nhiều thứ tư ở Hoa Kỳ và được truy cập nhiều thứ bảy trên thế giới. Năm 2015 có 73. 15 triệu lượt gửi và 82. 54 tỷ lượt xem trang. Và đằng sau tất cả, tạo thành xương sống của phần mềm, là Python

Reddit ban đầu được mã hóa bằng Lisp, nhưng vào tháng 12 năm 2005, sáu tháng sau khi ra mắt, trang web đã được mã hóa lại thành Python. Lý do chính cho sự thay đổi là Python có nhiều thư viện mã hơn và linh hoạt hơn về mặt phát triển. Khung web ban đầu chạy trang web, web. py, hiện là một dự án mã nguồn mở

Trong một cuộc phỏng vấn năm 2009, Steve Huffman và Alexis Ohanian đã được hỏi trong Pycon tại sao Reddit vẫn sử dụng Python làm khung của nó. Theo Huffman, lý do đầu tiên cũng giống như lý do thay đổi

“Có một thư viện cho mọi thứ. Chúng tôi đã học được rất nhiều công nghệ này và rất nhiều kiến ​​trúc này khi chúng tôi tiếp tục. Và, vì vậy, khi tôi không hiểu nhóm kết nối, tôi có thể tìm một thư viện cho đến khi tôi hiểu rõ hơn về nó và tự viết. Không hiểu khung web, vì vậy chúng tôi sẽ sử dụng khung của người khác cho đến khi chúng tôi tạo ra khung của riêng mình…Python có một cái nạng tuyệt vời như thế. ”

Lý do thứ hai để Reddit ở lại với Python là một chủ đề chung xuyên suốt tất cả các công ty xây dựng với nó. Theo Huffman, đó là khả năng đọc mã

“Khi chúng tôi thuê nhân viên mới… tôi không nghĩ rằng chúng tôi đã thuê một nhân viên biết Python. Tôi chỉ nói, 'mọi thứ bạn viết cần phải bằng Python. ' Chỉ để tôi có thể đọc nó. Và thật tuyệt vời vì tôi có thể nhìn thấy từ khắp phòng, nhìn vào màn hình của họ, mã của họ tốt hay xấu. Bởi vì mã Python tốt có cấu trúc rất rõ ràng

Và điều đó làm cho cuộc sống của tôi dễ dàng hơn rất nhiều. […] Nó cực kỳ biểu cảm, cực kỳ dễ đọc và cực kỳ dễ ghi. Và điều đó chỉ giúp cuộc sống suôn sẻ”

Cập nhật. Và vâng, điều đó hiện tạo ra 9 công ty tầm cỡ thế giới sử dụng Python trong sản xuất. Ban đầu, chúng tôi không tính riêng Instagram vì công ty này thuộc sở hữu của Facebook. Tuy nhiên, với quy mô ấn tượng mà nhóm Instagram đang hoạt động, chúng tôi nghĩ sẽ hợp lý hơn nếu cung cấp cho họ một gạch đầu dòng riêng

Loại bỏ các quảng cáo

Ai khác?

Trong bài đăng này, chúng tôi đã xem xét tám công ty phần mềm thành công và đẳng cấp thế giới sử dụng Python trong sản xuất. Nhưng họ không phải là những người duy nhất. Kể từ năm 2018, việc áp dụng Python đã đạt đến một đỉnh cao mới và tiếp tục tăng

Chúng tôi đã bỏ lỡ bất cứ ai trong danh sách này?

Đánh dấu là đã hoàn thành

🐍 Thủ thuật Python 💌

Nhận một Thủ thuật Python ngắn và hấp dẫn được gửi đến hộp thư đến của bạn vài ngày một lần. Không có thư rác bao giờ. Hủy đăng ký bất cứ lúc nào. Được quản lý bởi nhóm Real Python

Gửi cho tôi thủ thuật Python »

Về Jason Reynold

Jason là một Pythonista cuồng nhiệt và là thành viên của nhóm hướng dẫn Real Python

» Thông tin thêm về Jason

Bậc thầy Kỹ năng Python trong thế giới thực Với quyền truy cập không giới hạn vào Python thực

Tham gia với chúng tôi và có quyền truy cập vào hàng nghìn hướng dẫn, khóa học video thực hành và cộng đồng các Pythonistas chuyên gia

Nâng cao kỹ năng Python của bạn »

Chuyên gia Kỹ năng Python trong thế giới thực
Với quyền truy cập không giới hạn vào Python thực

Tham gia với chúng tôi và có quyền truy cập vào hàng ngàn hướng dẫn, khóa học video thực hành và cộng đồng Pythonistas chuyên gia

Nâng cao kỹ năng Python của bạn »

Bạn nghĩ sao?

Đánh giá bài viết này

Tweet Chia sẻ Chia sẻ Email

Bài học số 1 hoặc điều yêu thích mà bạn đã học được là gì?

Mẹo bình luận. Những nhận xét hữu ích nhất là những nhận xét được viết với mục đích học hỏi hoặc giúp đỡ các sinh viên khác. và nhận câu trả lời cho các câu hỏi phổ biến trong cổng thông tin hỗ trợ của chúng tôi

Phần mềm nào được phát triển bởi Python?

PyCharm, một IDE nguồn mở và độc quyền để phát triển Python. PyScripter, Phần mềm mã nguồn mở và miễn phí Python IDE cho Microsoft Windows. PythonAnywhere, một dịch vụ lưu trữ Web và IDE trực tuyến. Công cụ Python cho Visual Studio, plug-in mã nguồn mở và miễn phí cho Visual Studio

Phần mềm nào sử dụng ngôn ngữ Python?

Python là lựa chọn tuyệt vời để phát triển web. Điều này phần lớn là do có nhiều khung phát triển web Python để lựa chọn, chẳng hạn như Django, Pyramid và Flask . Các khung này đã được sử dụng để tạo các trang web và dịch vụ như Spotify, Reddit và Mozilla.

Chủ Đề