LINUX.ORG.RU

Ruby прекрасен

 , , ,


1

6

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

★★★

Ответ на: Недолисп от Camel

Кто-то это уже постил

Это ты эту статью форсишь?

без присвоения

Нет там такого. А вообще правильно.

без циклов

Хорошо.

без if

Очень хорошо.

Stil ★★★★★
()
Ответ на: Недолисп от Camel

В статье изложен необычный подход к написанию программ: без присвоения, без циклов, и даже без if.

При всем моем уважении к руби, в статье написана ахинея.

без циклов

он там рассматривает пример с each, это обычная функция, внутри которой может быть обычный цикл.

и даже без if

lol, там у него все тот же if, только с другим синтаксисом.

Что касается присваиваний, то в языках типа смолтока и руби вообще нет никаких присваиваний, в обычном смысле, там все есть собщение

Короче, детский лепет в твоей статье.

anonymous
()
Ответ на: комментарий от anonymous

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

Точно, анонiмус

kravich ★★★★
()
Ответ на: комментарий от anonymous

Гг, клоун разбирающийся в CS чуть менее чем никак пытается уличить в клоунаде других.

bj
()
Последнее исправление: bj (всего исправлений: 1)
Ответ на: комментарий от Hertz

если сравнивать сайты на ruby/php то вторые будут тормознутие, больше жрать ресурсов, и более трудоёмки в поддержке. я 3 дня назад поднимал под интернет магазин на руби, это шик, правда с монгодб повазился.

erzent ☆☆
()
Ответ на: комментарий от erzent

Просто в рельсах очень много сделано для оптимизации, куча всяких кешей. Руби считают языком одного фреимворка не потому что руби плохой, а потому что рельсы круты. А пхп сайты лепят из г**на которое под руку попало.

TDrive ★★★★★
()
Ответ на: комментарий от erzent

Практически все на io.js крутится с mongodb =)
На самом деле это потому что прототипы удобно лепить на монге

st4l1k ★★
()
Последнее исправление: st4l1k (всего исправлений: 2)
Ответ на: комментарий от holuiitipun

Курто когда ты сам пишешь такие штуки, а когда кто-то другой и тебе надо изменить его код, то ад =)

Если ты знаешь руби то это вполне легко читаемый код.

TDrive ★★★★★
()
Ответ на: комментарий от erzent

Из своего опыта большинство на PostgreSQL, где-то MySQL. еще был один очень крупный проект перешли с MongoDB на Neo4j

так что все индивидуально

anonymous
()
Ответ на: комментарий от anonymous

перешли с MongoDB на Neo4j

да, для модели данных проекта монга была неудачным выбором.

anonymous
()
Ответ на: комментарий от erzent

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

TDrive ★★★★★
()
Последнее исправление: TDrive (всего исправлений: 1)
Ответ на: комментарий от TDrive

Если ты знаешь руби то это вполне легко читаемый код.

Если в другом модуле прошла «иньекция», или модуль на 1к+ строк, то это трудно отследить.

holuiitipun
()
Ответ на: комментарий от erzent

Лол. Руби гораздо медленнее php, и уж точно форумы на php не предлагают иметь инстансы по 1gb ram минимум, чтобы оно хоть что-то отрендерило.

zz ★★★★
()
Ответ на: комментарий от TDrive

Что трудно отследить? Какой модуль на 1к+ строк? Ты о чем вообще?

Я про:

def Integer.all
  Enumerator.new do |yielder, n: 0|
    loop { yielder.yield(n += 1) }
  end.lazy
end

И подобные вещи.

holuiitipun
()
Ответ на: комментарий от TDrive

Он про комит который пришел, заманкипатчил built-in в 3rd party библиотеке и сломал твой код, который никак с ней не связан.

zz ★★★★
()

Ну это ж чудо, а не язык

Молодец, пока не буду тебе рассказывать про другие языки, а то тебе совсем башню снесет, а потом работу в хипсто-конторах не сможешь найти.

loz ★★★★★
()
Ответ на: комментарий от TDrive

И что в нем плохого?

То что это неявное изменение поведения. Если в проекте 2-3 человека, то это норм, если 10+ - ад. Идешки это не особо переваривают.

holuiitipun
()
Ответ на: комментарий от zz

Конкретно в данном случае у класса Integer в стандартной библиотеке нет метода all, так что этот код ничего не сломает. А так сломать можно все что угодно было бы желание.

TDrive ★★★★★
()
Ответ на: комментарий от TDrive

Он ничего не меняет, просто добавляет функционал.

Ага, один добавил одну, другой другую, а тертий свою с тем же названием.

holuiitipun
()
Ответ на: комментарий от TDrive

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

Ну я и в начале сказал, что так лучше не писать.

holuiitipun
()
Ответ на: комментарий от holuiitipun

Так называемый манки патчинг в руби это норма. Например в консольных программах очень часто классу String добавляют методы red, green... что бы можно было писать «Hello world».red , в рельсах в Active Support море всяких переопределений стандартных классов благодаря которым можно писать например

> 6.hour.ago
=> Sat, 04 Apr 2015 05:00:48 UTC +00:00

Примеров миллионы и все нормально работает.

TDrive ★★★★★
()
Ответ на: комментарий от zz

только вот пока все проекты на руби значительно быстрее работают чем на php, сколько видел сайтов на рельсах все лучше подобных на php.

erzent ☆☆
()
Ответ на: комментарий от loz

Молодец, пока не буду тебе рассказывать про другие языки, а то тебе совсем башню снесет, а потом работу в хипсто-конторах не сможешь найти.

Мне в хипстоконторы путь заказан, во-первых, их у нас нет, а во-вторых, я 12 лет работаю в таком нехипстерском направлении, какого еще поискать :) Так что моднявые язычки идут только ради общего развития и интеллектуального удовлетворения.

ovk48 ★★★
() автор топика
Ответ на: комментарий от ovk48

Я как раз не про моднявые, а про старые, недооцененные. Ну я и так вобщем уже много рассказал.

loz ★★★★★
()
Ответ на: комментарий от Deleted

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

erzent ☆☆
()
Ответ на: комментарий от erzent

Первый раз о ней слышу но имхо большинство сайтов упираются в работу с базой, а не скорость языка.

TDrive ★★★★★
()
Ответ на: комментарий от erzent

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

Адок, хорошо что я в такие не попадал.

loz ★★★★★
()
Ответ на: комментарий от loz

почему адок? приходят потом php макаки и занимайся сексом с их поделием, потому что оно не оптимизировано и сделано раз раз и в продакшен.

erzent ☆☆
()
Ответ на: комментарий от erzent

Ну и вобще, разве админ сможет сказать для чего подойдет эрланг, для чего го, а для чего питон? По-моему у него тупо компетенции не хватит.

loz ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.