Java ou en Python pour les mathématiques?

Je suis en train d'écrire un assez lourd devoir de mathématiques de projet basée sur, qui va analyser par le biais d'environ 100 mo+ données plusieurs fois par jour, donc, j'ai besoin d'un rapide de la langue qui est assez facile à utiliser. Je serais allé avec le C, mais, l'obtention d'un grand projet à réaliser en C est très difficile, surtout avec le faible niveau de programmation obtenir de votre manière. Donc, j'étais sur le python ou java. Les deux sont bien équipées avec OO, donc je ne me dérange pas. Maintenant, voici mes avantages pour le choix de python:

  • Très facile à utiliser le langage
  • A une assez grande bibliothèque de trucs utiles
  • A un facile d'utiliser le tracé de la bibliothèque

Ici sont les inconvénients:

  • Pas exactement flamboyant
  • Il n'y a pas un natif python réseau de neurones de la bibliothèque qui est actif
  • Je ne peux pas fermer la source de mon code sans passer par un peu de mal à
  • Déploiement de code python sur les ordinateurs clients est difficile à traiter, surtout lorsque les clients sont des idiots.

Ici sont les avantages pour le choix de Java:

  • Énorme bibliothèque
  • Bien pris en charge
  • Facile à déployer
  • Assez rapide, peut-être même comparable à C++
  • La Encog Réseau de Neurones de la Bibliothèque est vraiment active et assez impressionnant
  • Prise en charge de réseau est vraiment une bonne
  • Typage fort

Ici sont les inconvénients pour Java:

  • Je ne peux pas trouver une bonne bibliothèque graphique comme matplotlib pour python
  • Pas construit dans le soutien à de grands entiers, ce qui signifie une autre dépendance (je veux dire VRAIMENT de grands entiers, et pas seulement en mathématiques.BigInteger taille)
  • Fichier IO est un peu maladroite par rapport à Python
  • Pas une tonne de tableau de manipuler ou de "faire de la programmation facile" type de fonctionnalités que python a.

Donc, j'espérais que vous les gars, vous pouvez me dire ce qu'il faut utiliser. Je suis également familiarisé avec les deux langues. Aussi, des suggestions pour d'autres langues est trop grand.

EDIT: WOW! les gars, vous êtes rapide! 30 minutes à 10 réponses!

  • Qu'entendez-vous par "VRAIMENT de grands entiers"? java.les mathématiques.BigInteger grandir, quelque soit la taille nécessaire pour stocker les numéros que vous avez affaire avec (au prix d'un peu maladroit de la syntaxe, bien que depuis Java n'a pas de surcharge d'opérateur)
  • Avez-vous envisagé d'utiliser un "vrai" système de calcul formel?Il n'a pas à être Mathematica (cher!), il y a beaucoup de moins cher, ou même gratuit choix.
  • Je me demandais à propos de "je veux dire VRAIMENT de grands entiers, et pas seulement en mathématiques.BigInteger" taille de commentaire. Pourquoi pensez-vous que java.les mathématiques.BigInteger numéros de ne pas le faire? Il me semble qu'avant de commencer à frapper ses limites, vous avez des problèmes avec la mémoire déjà.
  • Création d'un exécutable + les bibliothèques requises est un morceau de gâteau par exemple, avec cx_Freeze. Et le résultat ne peut être déchiffré à moins que quelqu'un de qualifié, c'est pas vraiment le faire (dans ce cas, vous êtes foutu de toute façon, à peu près indépendamment de la langue) - pour ne pas mentionner les objections habituelles à "je veux cacher mon sourcez".
  • Vous devriez liste des priorités: c'est la fermeture du code source doit? Combien de temps avez-vous? Par la route: le Python EST tapé fort, mais pas de manière statique.
  • py2exe peut faire de déploiement sur les clients des machines très facile.
  • avez-vous vu JFreeChart pour la représentation graphique en Java? (jfree.org/jfreechart) - c'est du bon
  • Il est assez trivial de décompiler java byte code, de sorte qu'ils sont jolis, même sur ce front, à mon humble avis.
  • JFreeChart est grand, qu'il semble. La dernière expérience que j'ai eu avec bigintegrs était il y a longtemps, et je me souviens d'eux n'étant réellement de taille arbitraire. J'ai peut-être tort, j'étais un débutant. La fermeture du code source est un must, j'ai autant de temps que j'en ai besoin, mais je voudrais faire aussi rapidement que possible, plus je prends le plus de pertes que j'ai à prendre.
  • J'ai décidé que je vais le meilleur des deux mondes, python pour la collecte de données, puis de l'analyser et de le donner à la classe java avec jython. Merci beaucoup tout le monde.