Вы начали бы изучать Smalltalk? [закрытый]

79
задан Nathan Campos 18 December 2009 в 00:14
поделиться

19 ответов

Если Вам нравится Ruby, то Вам, вероятно, понравится Smalltalk. Побережье IIRC было портировано к Драгоценный камень VM, , который является частью их Gemstone/S OODBMS. Это имеет намного лучшую поддержку потока, чем Ruby, таким образом, это - лучший бэкенд для системы большого объема. Это могло бы быть серьезным основанием внимательно изучить его.

Причины изучить Smalltalk:

  • Это действительно, действительно хорошая среда программирования. Как только у Вас есть голова вокруг этого (это имеет тенденцию быть определенным культурным шоком для людей, привыкших к C++ или Java), Вы найдете, что он действительно приятная атмосфера для работы в. Даже действительно дрянной smalltalk как Старые Digitalk, которые я использовал, является удивительно приятной системой для использования. Многие из старого XP и типов гуру O-O как Kent Beck и Martin Fowler получил первый опыт в Smalltalk назад в день и может иногда слышаться тоскующий в течение добрых старых времен в общественности (Благодаря Frank Shearer для цитаты, +1) - Гибкая разработка, порожденная на этой платформе.

  • Это - одна из самых продуктивных платформ разработки в истории.

  • Несколько зрелых реализаций существуют и там существует удивительно большая кодовая база. Однажды это стало довольно модным в кругах финансового рынка, где производительность разработчика и время выхода на рынок является настоящим грандиозным предприятием. Вплоть до середины 1990-х это была более или менее единственная возможность (За возможным исключением LISP), если Вы хотели коммерчески поддерживаемый высокоуровневый язык, который подходил для разработки приложений.

  • Развертывание легко - просто отбрасывают файл изображения в соответствующем каталоге.

  • Едва ли причина, но Банда Четырех Книг использует Smalltalk для довольно многих их примеров.

Причины не изучить Smalltalk:

  • Это - что-то вроде специализированного рынка. Вы можете испытать затруднения при поиске работы. Однако при создании своего рода .com приложение, где Вы владеете серверами , это не могло бы быть проблемой.

  • Это просматривается как унаследованная система многими. Существует относительно мало новой разработки на платформе (хотя Побережье, кажется, управляет чем-то вроде Ренессанса).

  • Это имеет тенденцию не играть приятно с традиционными системами управления исходным кодом (по крайней мере, по состоянию на раннюю середину 90-х, когда я использовал его). Это может или не может все еще иметь место.

  • Это является несколько замкнутым и любит играть отдельно. Python или Ruby создаются для интеграции с нуля и имеют тенденцию быть более разнородными и таким образом легче интегрироваться со сторонним программным обеспечением. Однако различный другое более основное системы страдают от этого типа изолированности до большего или меньшего градуса, и это, кажется, не препятствует их использованию очень.

59
ответ дан ConcernedOfTunbridgeWells 24 November 2019 в 10:05
поделиться

Да, я интересуюсь им. Попробованный уже для запуска однажды, но не мог найти среду разработки Smalltalk, которая не стоила обеих рук и участка.

-5
ответ дан Brian Knoblauch 24 November 2019 в 10:05
поделиться

Я действительно не знаю то, что Вы ищете.

, Если бы Вы ищете различный язык для записи в, я думал бы, что это зависело бы в большой степени от доступных библиотек. Я не знаю ни Ruby, ни Smalltalk, но кажется вероятным, что самым эффективным способом записать виды Ruby on Rails приложений не может быть Smalltalk.

, Если Вы надеетесь изучать идеи позади Ruby, это могло бы быть очень хорошим перемещением. У меня ничего нет количественным, но я всегда чувствовал себя лучше об использовании инструментов (таких как системы языка), если я знал больше, чем просто инструменты, если я kmew идеи позади них или как они работали.

, Если Вы хотите изучить различные виды объектно-ориентированных языков, Вы могли бы хорошо хотеть изучить Smalltalk (если он значительно отличается от Ruby), что-то как Java или C++, и возможно также Система Объекта языка Common LISP.

, Если Вы просто хотите изучить что-то другое, Smalltalk может быть хорошим выбором. Я также предложил бы язык Common LISP, и у других людей, несомненно, будут другие предложения (можно ли получить хорошую систему Forth в наше время?).

1
ответ дан David Thornley 24 November 2019 в 10:05
поделиться

Я был разработчиком программного обеспечения в течение довольно многих лет теперь. Я услышал, что люди поднимают Smalltalk несколько раз, и конечно Smalltalk был вокруг приблизительно с 1980, но это - один из тех языков, этим никогда не кажутся для превращения его в господствующую тенденцию программного обеспечения. Вид подобного Objective C, CLIPS, PL/I, и т.д. - что-то, о чем Вы, возможно, услышали, но что-то, в чем никогда не программировало большинство людей.

я, вероятно, не не торопился бы для изучения Smalltalk, если я не должен был для конкретного задания. Я посмотрел на некоторые учебные руководства Smalltalk и примеры кратко несколько лет назад, и похоже, что это имеет некоторые ясные преимущества для определенных аспектов программирования OO (как понятие сообщения, кажется прохладным). Но к сожалению, это не господствующая тенденция и, кажется, не развивает много скорости.

3
ответ дан Ogre Psalm33 24 November 2019 в 10:05
поделиться

Мне преподавали Smalltalk в одном из первых курсов Программирования Объектного Востока уровня колледжа выпускника (приблизительно 1988). Учитель думал, что это лучше всего для запуска был "чистый" язык OO перед хождением дальше к более модному (мы сделали немного C++ в конце семестра).

той мерой, все еще лучше запуститься с чистого OO, хотя в эти дни у нас есть Java & C#, обоими из которых является "почти чистое" OO - достаточно близко, что можно добраться путем игнорирования функций неOO их и ограничения себя подмножеством чистого OO языков.

3
ответ дан James Curran 24 November 2019 в 10:05
поделиться

Я нахожусь полностью в Вашей обуви. Я использую RoR и изучаю землю Smalltalk. Вот некоторые профессионалы & недостатки я нахожу важными:

Профессионалы:

  • Зрелый & стабильная среда
  • Быстрый цикл разработки
  • Заставляет Вас думать больше и записать меньше

Недостатки:

  • Требует, чтобы различные взгляды
  • Все еще не вполне схватывали его

, Это довольно забавно, как я узнал о Smalltalk. Именно эта вещь keept открывающийся в Google заканчивается при поиске материала Erlang и Lisp. Однажды я проверил его и был поражен с хорошей средой окон. Несколько моментов спустя я нашел платформу Aida/Web. Я был сцеплен и начал изучать Smalltalk посредством веб-разработки с этой платформой.

Все еще вполне там, но настолько чертовски интересно, что я просто не могу сидеть не двигаясь...:-), я весело провожу время снова.

7
ответ дан Damir Horvat 24 November 2019 в 10:05
поделиться

Не согласился бы с плакатом, кто считает Вас, wouldn’t используют Smalltalk для крупных приложений †“that’s точно, где это сияет. Но я создал довольно отличный (отметьте нижний регистр), приложения прототипа менее чем за неделю также.

я изучил OO в ST, запускающемся в 92, невероятно довольный, что я сделал так. Это дало мне реальные знания в OO. Взгляды в классах. Никакие типы. ST имеет реальный акцент на обмен сообщениями. Если Вы хотите знать, что что-то отправляет объекту сообщение и получает ответ. По моему скромному мнению, идеал и IDE действительно поощряют Вас делать правильную вещь со своей связью и сцеплением.

В моем дневном задании Java, I’m, застрявший в файлах, дженериках, IDE’s нравится затмение, которые являются порядками величины, менее продуктивными что любой IDE ST. Я использовал ST единственное время, я закончил разработку раньше срока. На самом деле это было настолько продуктивно, и мы получили такое повторное использование, я должен был отъехаться к другому проекту, когда мне было нечего делать! (Хорошо, возможно, я, возможно, провел время, учась оценивать...)

писк Загрузки, найдите хорошую книгу и игру. Единственный недостаток - то, что, если Ваш дневной концерт использует Java или C#, you’ll заканчивают тем, что жаль, что Вы не могли бы использовать ST. You’d возвращаются домой раньше.

Chris Brooks

8
ответ дан Chris Brooks 24 November 2019 в 10:05
поделиться

Я не знаю Ruby..

Smalltalk чист язык OO. Если Вы чувствуете потребность действительно понять OO, и не только моделируемое OO большинства популярных языков 'OO' (как C++, Java, и т.д.), то я рекомендовал бы играть с smalltalk.

В smalltalk все - объект, с атрибутами, поведением и meta. На моделированиях у Вас есть типы данных, которые Вы используете в своих объектах.

я сказал бы игру с ним, Вы только извлечете выгоду.

8
ответ дан slashmais 24 November 2019 в 10:05
поделиться

Я рекомендую всем изучить Lisp (Схема) или Smalltalk.

Smalltalks имеют замечательные IDE, которые Вы не хотите пропускать, как только Вы преобладали над культурным шоком. И да, существует больше чем один свободный: Писк, дельфин, Smalltalk/X и (Некоммерческий) Visualworks.

Lisp может быть даже инструментом для очистки в своей математической основе, все же.

отношения

пз: на самом деле я рекомендую изучить обоих!

9
ответ дан blabla999 24 November 2019 в 10:05
поделиться

Nigel, одна кавычка, которую я имею, является этим:

, Хотя это - теперь долгое время, так как я сделал что-либо с ним, я назначаю Smalltalk, я все еще ни с чем не столкнулся вполне как он для способности передать мысли в машинный код. Это не просто язык: это - замечательная среда браузера, библиотеки и культура записи ясного, хорошо разработанного кода так быстро, как что-либо еще может провернуть спагетти. Когда участники JavaOne расхваливали, как Java был настолько более продуктивным, чем что-либо еще, мне был нужен мешок оберточной бумаги. О, хорошо, назад к разбиранию в моих путях к классам... - Martin Fowler (Журнал Разработки программного обеспечения, Jan 2001)

я нашел его здесь .

10
ответ дан Frank Shearar 24 November 2019 в 10:05
поделиться

Smalltalk изучения даст Вам основание в объектно-ориентированной разработке программного обеспечения с точки зрения человека, который изобрел OO (Alan Kay). Идея перекрывающейся оконной среды прибыла из Smalltalk.

камень преткновения А для изучения Smalltalk - то, что это - система передачи сообщений со странным синтаксисом для управления потоком как:

i < 60
   ifTrue: [ self walk ]

Это имеет очень зрелую библиотеку классов, которая имеет непротиворечивость, я не видел слишком многих мест. Библиотека классов во всех средах (даже коммерческий Smalltalks) имеет доступный источник, который позволяет Вам учиться от ведущих устройств языка. При программировании Smalltalk я всегда задаю вопрос, как это сделано в среде.

Smalltalk обычно реализуется в изображении, которое является продуктивной средой для всех объектов в Вашей системе.

интерактивный отладчик действительно разделяет Smalltalk от Ruby.

Побережье является платформой веб-разработки и дало Smalltalk новый центр внимания. Это - основанная на продолжении среда, которая позволяет, чтобы внутрихит отладил, и гладкий опыт разработки типа Толстого клиента (поток главного приложения может быть разработан в отдельном методе). Это - интеграция с script.aculo.us, был сделан таким способом, которым это легко называют из Smalltalk.

15
ответ дан Kevin Driedger 24 November 2019 в 10:05
поделиться

Smalltalk является хорошим языком для изучения, и большая вещь состоит в том, что только требуется день, чтобы сделать это. Это намного больше, чем просто академический язык. Люди создают огромные, масштабируемые, воспроизводимые приложения, обрабатывающие миллиарды долларов. Они просто не говорят об этом очень. Посмотрите, например, GemStone и Восток Зарубежные Контейнерные Строки: Тематическое исследование Судостроительной промышленности .

Побережье является серьезным основанием изучить Smalltalk, но я не думаю, что Вы найдете его порядками величины лучше, чем направляющие.

вещью, которая убедила меня, был GemStone. Мне действительно нравится СТЕКЛО Драгоценного камня (GemStone, Linux, Apache, Smalltalk, Побережье). Уничтожающей частью этого является GemStone, который обрабатывает всю объектную персистентность для Вас главным образом без Вас думающий об этом. Наблюдение некоторых их демонстраций и слушание о том, что люди делают с GemStone, сбрасывают мою идею того, что "означало большое приложение".

часть, которая прослушивает меня больше всего о направляющих, является объектно-реляционным отображением. Это - ничто против Ruby, потому что он сосет столь же трудно в GLORP (который обрабатывает ActiveRecord для Smalltalk), или Perl или что-либо еще. Отображение объектов к таблицам базы данных является просто болезненным. С GemStone, думающим о базе данных, исчезает, таким образом, работа с базой данных исчезает также. Это похоже на огромный камень (или отряд обезьян) взят от моей спины.

27
ответ дан brian d foy 24 November 2019 в 10:05
поделиться

> не мог найти среду разработки Smalltalk, которая не стоила обеих рук и участка

Google - свободный smalltalk

Cincom Smalltalk, Писк, GNU Smalltalk

15
ответ дан 24 November 2019 в 10:05
поделиться

Ну, так как Вы упомянули меня по имени, я чувствую, что должен вмешаться.

, Поскольку я сказал в том интервью подкаста, и как я неоднократно демонстрировал в своем блоге в http://MethodsAndMessages.vox.com/ , это" год smalltalk". И теперь сделавший поддержку Smalltalk в течение прошлых десяти месяцев, я вижу, что это действительно происходит. Больше клиентов обращается к Smalltalk и Seaside, и поставщики Smalltalk все упорно работают для получения этого нового притока внимания. Планируется больше более крупных конференций Smalltalk. Отправляется больше регистраций задания. Больше сообщений в блоге делается.

, Если Вы обращаетесь к Smalltalk сегодня, Вы не являетесь одними. Существуют многие другие, которые являются там также.

Редактирование

ну, много лет спустя, я теперь рекомендую Dart вместо этого. Это - большой язык, порожденный Google, но теперь принадлежавший комитету по ECMA. Это выполняет серверную сторону в стиле node.js, но также и сторону клиента в современных браузерах путем трансукладки к JavaScript. Много хороших книг, блогов, помогает каналам, поддержке IDE, общедоступный живой pastebin. Я думаю, что это определенно получило участки... достаточно так, чтобы я записал программное обеспечение автоматизированного обучения для обучения его локальный или онлайн, и я вполне уверен существует книга или два в работах от меня. И Gilad Bracha, прежний Smalltalker является основным фактором дизайна, таким образом, существует много Smalltalk в Dart.

43
ответ дан Randal Schwartz 24 November 2019 в 10:05
поделиться

Не начал бы изучать его, если бы у меня было время. Почему нет? Поскольку это было бы более продуктивным и прибыльным в финансовом отношении для изучения C# или Java.

, С другой стороны, если бы Ваш человек, увлеченный своим хобби, и хотел бы пойти на археологическое, роют, то я предложил бы провести некоторое время, смотря на Какой, Когда, Почему и как из smalltalk путем исследования Alan Kay. Захватывающая история и невероятный человек (в конце концов, он заработал Превращение Премии). Тогда, возможно, игра с писком немного для получения чувства для языка. После этого Вы могли бы испытывать недавно найденное уважение блоков, закрытий и Объектно-ориентированных принципов.

я знаю и использую Smalltalk, имею в течение приблизительно 15 лет, все еще поддержание это, и не рекомендовал бы Smalltalk другу. Почему нет? Занятость является хорошей вещью иметь и продолжать добираться. Хотя можно узнать о много из Smalltalk, Вы не можете легко повернуть это в то, чтобы выгодно быть используемым в этот день и возраст.

кроме того, Вы, казалось, были взволнованы по Побережью, и я приму партнерство Побережья/Драгоценного камня. Я использовал GemStone в течение достаточно долгого времени, и два вместе являются очень привлекательными. Я надеюсь, что они могут получить долю рынка и импульс, требуемый быть успешным.

5
ответ дан daduffer 24 November 2019 в 10:05
поделиться

Smalltalk: Получение сообщения: http://www.smalltalk-resources.com/Smalltalk-Getting-the-Message.html

4
ответ дан 24 November 2019 в 10:05
поделиться

Этот поток стал для меня очень актуальным. Я планирую миграцию программного обеспечения на веб-приложение. Это программное обеспечение, основанное на базе базы данных. Особенно я проверяю альтернативы 1) Рельсы 2) Seaside

Если я смогу получить цифры для Драгоценного камня/С в качестве Базы данных, я это тоже учту. Так что для меня это означает, что я должен выучить Smalltalk (лучше), чем раньше. Потому что, возможно, это будет моя работа на ближайшие 15 лет. Вы будете (и не должны) работать с программами, которые вам не нравятся, так долго ;-). У меня сложилось впечатление, что Gemstone/S - одно из "убийственных" приложений. Но упорство Objects до сих пор является очень сложным полем....

.
2
ответ дан 24 November 2019 в 10:05
поделиться

Не! Если вы действительно начнете изучать его, вы можете больше не захотеть программа в чем-то еще.

Это может быть неправда, если вы программисты для Lisp.

4
ответ дан 24 November 2019 в 10:05
поделиться

Если вы хотите лучше понять экстремальное программирование (и даже Scrum), я бы сказал да .

Почему нетерпеливым Java-программистам нужно изучать Smalltalk:

http://www.dafydd.net/archive/2010/why-smalltalk-isnt-just-another-language/

3
ответ дан 24 November 2019 в 10:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: