2014-03-28 14 views
-2

我想開發一個應用程序,它將主要與一些GUI一起執行聯網。 我想到的最接近的類似應用程序是Microsoft Lync。 我想在選擇合適的工具方面得到一些建議,因爲我是這個項目的唯一開發人員,並且將在空閒時間開發。 作爲一個C++的傢伙,與Perl短暫停留我覺得C++需要大量的準備時間,但它具有最好的效率。 但在我的情況下效率(性能)並不那麼重要。 谷歌建議我應該去Python,但它並不總是正確的。 如此請求大師的建議。開發用於執行聯網的應用程序?

編輯:使我的問題更加量化的 -

這是發展以下條件的網絡應用的最佳語言/工具: -

  • 面向對象,編譯不像腳本可執行文件和對於多線程支持 是加號。
  • 不應該有自動內存管理。
  • 應該是有效的,而不是豬資源。 Java在運行時通過編譯浪費了大量的時間和資源:
  • 在一個漂亮的IDE上進行調試,性能分析和性能測試。
  • 應該很容易學習或至少有很好的學習/社區 的支持。
  • 開發源代碼需要較少的交貨時間。
  • 應該很容易移植到其他平臺。
  • 應該能夠創建封閉源商業應用程序,而不需要支付任何版稅的 。
  • 而且不應該有比Perl更多的方法。

回答

1

爲了在你的空閒時間快速發展,你一定要去PythonTwisted

扭曲的項目不同支持TCP,UDP,SSL/TLS,IP組播, Unix域套接字,大量的協議(包括HTTP, XMPP,NNTP,IMAP,SSH,IRC,FTP,和其他人), 以及更多。 Twisted 基於事件驅動的編程範例,這意味着Twisted的用戶可以編寫由 框架調用的短回調。 Source

另外:

扭曲包括功能強大的,高層次的組件,如Web服務器, 用戶認證系統,郵件服務器和客戶端,即時 消息,SSH客戶端和服務器,一個DNS服務器和客戶端,以及所有這些 高級組件構建在其上的底層基礎結構。每個組件都具有高度可擴展性,並且易於定製,並且所有組件都可以順利進行互操作。 這是對Python的威力以及Twisted的開發人員的創造力的讚揚,他們可以在兩個 的下載量內完成這麼多事情。 Source

Python是快速發展的一個很好的工具,扭曲的是一個非常快速和成熟的網絡框架。即使您沒有Python體驗,他們也一起爲您提供最佳選擇。

文檔很好,Python和Twisted的社區都很棒。請檢查TwistedTwisted Web文檔以獲得更好的洞察。

Here你可以找到最好的Twisted介紹之一,這將讓你開始以最優化的方式。您將瞭解Twisted內部工作的基礎知識以及某些實施背後的推理。之後,您將學習如何編寫出色的Twisted應用程序。

+0

Python中不能做Twisted中有什麼特別的東西嗎?或者它是Python中使用外部庫的標準做法。因爲在C++中你很少使用外部庫。 –

+0

你可以在Python中手動執行Twisted所做的一切。事實上,Twisted是用Python編寫的。但爲了阻止你重新發明輪子,我向你保證,Twisted以最好最快的方式做一切事情。如果你的目標是在合理的時間內完成你的申請,這是一條路。如果您的目標是儘可能多地學習網絡編程,請使用純Python。 – bosnjak

+0

檢查我的答案上的更新,強烈建議教程上的鏈接。你會從中理解你需要的一切。 – bosnjak