79 votes

Commenceriez-vous apprentissage Smalltalk ?

Ma questions est simple!

  1. Voulez-vous commencer à apprendre à Smalltalk si vous aviez le temps? Pourquoi? Pourquoi pas?
  2. Sais-tu déjà Smalltalk? Pourquoi recommanderiez-vous Smalltalk? Pourquoi pas?

Personnellement, je suis Ruby on Rails programmeur et je l'aime vraiment. Cependant, je suis en train de réfléchir à Smalltalk, car j'ai lu plusieurs blogs et certains l'appellent Ruby quelque chose comme "Smalltalk Lumière". La deuxième raison pour laquelle je suis intéressé par Smalltalk est en bord de Mer.

Peut-être que quelqu'un a fait la même transition avant?

EDIT: en Fait, ce qui m'a le plus excité à propos de Smalltalk/bord de Mer est l'Épisode suivant de WebDevRadio: Épisode 52: Randal Schwartz sur le bord de Mer (entre autres choses)

59voto

Si vous aimez Ruby, vous aurez probablement comme Smalltalk. IIRC bord de Mer a été porté à la pierre précieuse VM, qui fait partie de leur de pierre Gemme/S OODBMS. Cela a beaucoup plus de support pour les threads, de Rubis, de sorte qu'il est mieux de back-end pour un système à débit élevé. Cela peut être une bonne raison de prendre un coup d'oeil de près.

Raisons pour apprendre le langage Smalltalk:

  • C'est vraiment, vraiment agréable environnement de programmation. Une fois que vous avez obtenu votre tête autour de lui (il a tendance à être un peu un choc culturel pour les gens C++ ou Java), vous trouverez qu'il soit vraiment un bon environnement de travail. Même vraiment merdique, smalltalk comme l'Ancien Digitalk ceux que j'ai utilisé est un très agréable système à utiliser. Beaucoup de vieux XP et O-O gourou des types comme Kent Beck et Martin Fowler couper les dents sur Smalltalk retour dans la journée et peut parfois être entendu parler de la nostalgie pour le bon vieux temps dans le public (Merci à Frank Shearer pour la citation, +1) - développement Agile origine sur cette plate-forme.

  • C'est l'un des plus productifs développement de plates-formes dans l'histoire.

  • Plusieurs matures implémentations existent et il y a une surprise de grande base de code. À un moment donné, il a obtenu très à la mode dans le marché financier des cercles où les développeurs de productivité et de temps-à-marché est tout à fait une grosse affaire. Jusqu'au milieu des années 1990, il a été plus ou moins le seul jeu en ville (Avec l'exception possible de LISP) si vous voulais un support commercial langage de haut niveau qui a été adapté pour le développement de l'application.

  • Le déploiement est facile - il suffit de déposer le fichier image dans le répertoire approprié.

  • Pas vraiment une raison, mais la "bande des Quatre" Livre utilise Smalltalk pour un certain nombre de leurs exemples.

Des raisons de ne pas apprendre le langage Smalltalk:

  • C'est quelque chose d'un marché de niche. Vous pouvez avoir de la difficulté à trouver du travail. Toutefois, si vous devez produire une sorte de .com application où vous possédez les serveurs cela pourrait ne pas être un problème.

  • Il est considéré comme un système d'héritage par de nombreux. Il y a relativement peu de nouvelles de développement sur la plate-forme (bien que la Mer semble être la conduite d'un peu de la renaissance).

  • Il a tendance à ne pas jouer gentiment avec les traditionnels systèmes de contrôle de source (au moins dès le début-milieu des années 90 lorsque je l'ai utilisé). Cela peut ou peut ne pas toujours être le cas.

  • C'est un peu insulaire et aime à jouer par lui-même. Python ou Ruby sont construits pour l'intégration à partir du sol et ont tendance à être plus de la promiscuité et donc plus facile à intégrer dans la 3ème partie logiciel. Cependant, différents des autres, plus traditionnels systèmes souffrent de ce type de l'insularité à un degré plus ou moins et qui ne semble pas gêner leur utilisation beaucoup.

43voto

Randal Schwartz Points 9756

Eh bien, puisque vous avez mentionné mon nom, je sens que je devrais le carillon.

Comme je l'ai dit dans l'interview en podcast, et comme je l'ai démontré à maintes reprises dans mon blog à l' http://MethodsAndMessages.vox.com/, c'est "l'année de smalltalk". Et après avoir fait Smalltalk plaidoyer pour les dix derniers mois, je peux voir qu'il est vraiment passe. Plus de clients se tournent vers Smalltalk et en bord de Mer, et la Causerie, les vendeurs sont tous travailler dur pour s'emparer de ce nouveau afflux de l'attention. Plus de plus grand Smalltalk conférences sont prévues. Plus d'offres d'emploi sont affichées. Plus les billets de blog sont en cours.

Si vous vous tournez vers la Causerie d'aujourd'hui, vous n'êtes pas seul. Il y a beaucoup d'autres qui sont là-bas aussi.

27voto

brian d foy Points 71781

Smalltalk est un bon langage pour apprendre, et la grande chose, c'est qu'il suffit d'une journée pour le faire. C'est beaucoup plus que juste un langage académique. Les gens sont bâtiment énorme, évolutif, reproductible applications de manutention des milliards de dollars. Ils ont juste ne parle pas beaucoup. Voir, par exemple, de pierres précieuses et de l'Orient Overseas Container Lines: Une Expédition De L'Industrie De L'Étude De Cas.

De bord de mer est une bonne raison d'apprendre Smalltalk, mais je ne pense pas que vous trouverez des ordres de grandeur de mieux que de Rails.

La chose qui m'a convaincu, a été de pierres précieuses. J'aime vraiment de pierres précieuses en VERRE (pierres précieuses, Linux, Apache, Smalltalk, bord de Mer). Le tueur c'est en partie de pierres précieuses, qui gère l'ensemble de la persistance objet pour vous la plupart du temps sans que vous vous en doutiez. Voir certains de leurs démos et d'entendre ce que les gens font avec la pierre Gemme réinitialiser mon idée de ce que la "grande demande" signifiait.

La partie qui me dérange le plus sur des Rails est le mapping objet-relationnel. Ce n'est rien contre Ruby parce qu'il suce tout aussi difficile dans GLORP (qui gère ActiveRecord pour Smalltalk), ou Perl, ou quoi que ce soit d'autre. Les objets de mappage de tables de base de données est tout simplement pénible. Avec pierre précieuse, en pensant à la base de données disparaît, de sorte que le travail avec la base de données disparaît aussi. C'est comme une énorme pierre (ou une troupe de singes) est prise hors de mon dos.

15voto

Kevin Driedger Points 6184

L'apprentissage de Smalltalk va vous donner les bases orientées objet de développement de logiciels à partir du point de vue de l'homme qui a inventé OO (Alan Kay). L'idée d'un cumul de fenêtrage environnement de Smalltalk.

Une pierre d'achoppement pour l'apprentissage de Smalltalk est que c'est un passage de messages système, avec une étrange syntaxe pour le contrôle de flux comme:

i < 60
   ifTrue: [ self walk ]

Il a une très mature bibliothèque de classe qui a une consistance je n'ai pas vu de trop nombreux endroits. La bibliothèque de classe dans tous les environnements (même commerciale, Smalltalks) a source disponible qui vous permet d'apprendre à partir de la maîtrise de la langue. Lors de la programmation Smalltalk, je me suis toujours poser la question comment est-il réalisé dans l'environnement.

Smalltalk est généralement mise en œuvre dans une image qui est un environnement réel pour tous les objets de votre système.

Le débogueur interactif vraiment se sépare de Smalltalk de Ruby.

Bord de mer, c'est le web cadre de développement et a donné Smalltalk une nouvelle feu des projecteurs. Il s'agit d'une poursuite en fonction de l'environnement qui permet intra-hit de débogage lisse et un Riche Client type d'expérience de développement (en haut de l'application de flux peut être conçu dans une seule méthode). C'est l'intégration avec le script.aculo.nous a été fait d'une façon telle qu'il est très facilement à partir de l'intérieur de Smalltalk.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X