Как стать автором
Обновить
5
0
Называйте Андреем @narciruss

Пользователь

Отправить сообщение
ну да, он ищет по большим буквам, что мешает искать не по

M A M C

а по

m _a _m _c

?
ой, точно, перепутал =)
Попробуйте использовать VIM/EMACS, там слава богу задать такие стиливые особенности — минутное дело. Кстате, во многих IDE с поддержкой тем тоже это есть, правда не так очевидно и «просто» как в случае с vim/emacs.

P.S. спасибо за идею =)
Предположу что можно использовать модули.

RGB::to_color()
GPS::is_connected?()

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

обычные переменные: my_super_var
контанты и имена классов/модулей: MySuperClass, MySuperConst
вернул на место %) Переезжаю на новый блог-engine, поэтому закрыл его временно.
AR на 100% это использовать вообще все. Я боялся, что меня не поймут и примут слово «АР на СТО» как полный отказ от sql. В то время как AR на 100 -> это использование sql на процента 2-3
Не, вы не хотите чего-то со мной нормально поговорить %) Изначально я был груб, потом исправился и попытался понять вашу точку зрения.

Моя такова — AR-паттерн со всеми приблудами — очень крутая вещь, и реально спасает во всех проектах. Хотите пример?

Допустим у нас есть модель User:

class User < ActiveRecord::Base
# создадим scope:
named_scope :active, :conditions => «is_active = true»
end

теперь чтобы отобрать активных пользователей мы напишем:

User.active.all

Захотим добавить условие? Легко:

User.active.all(:conditions => «email ILIKE %gmail.com»)

В результате получим всех активных пользователей с почтой от гугла. Но зачем нам здесь sql? вынесем его в модель:

class User < ActiveRecord::Base
# создадим scope:
named_scope :active, :conditions => «is_active = true»
named_scope :respond_to_gmail, :conditions => «email ILIKE %gmail.com»
end

Теперь мы сможем комбинировать наши скоупы как хотим, вынося весь sql в модель (бизнес-леер).

С приходом Rails-3 и AREL появилась возможно создавать lazy-запросы (что очень удобно для создания фильтров, поисков и тп)

result_users = User.where(:active => true) # запрос еще не будет отправлен в sql
result_users.order(:id) # отсортируем по id, но запрос так еще не будет отправлен
result_users.first # а теперь запрос будет отправлен и в качестве результата мы получим первого активного пользователя

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

Понятно что нужно понимать где и куда это сувать, но если какие-то конкретные примеры где это не к месту?

П.С. Я не говорю о том, чтобы юзать AR на 100%. В сложных проектах со сложными отношениями между моделями иногда приходится писать чистые SQL запросы, для отображения какой-нибудь примудрой статистики. Но в большинстве случаев, для блогов, сайтов или хабров -> никакие сложные sql запросы нафиг не нужны.
да нет же. хорошо, если вы крутиться в среде с нормальными людьми и нормальным кодом. У меня вот, на моей нынешней работе начальник трахает меня за плохо-названный метод. И я очень рад этому, я сам постоянно прошу его — прорецензировать мой код и сказать какие места в нем откровенно слабые. Многие мои знакомые вертятся в каких-то непонятных конторах, получают копейки и пишут какой-то полный пе*ец. Но это проблема конечно же людей, а не языка.

(вствая на сторону пхп скажу, что сам язык вполне себе нормальный. Там и ооп, и неймспейсы и даже замыкания. Иногда не очень выразительно, но возможностей для создания абстракций там уж поболее чем в Си, хотя Си мало кто осмеливается обвинять в «херовасти»)

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

Поработов с большим рейлс-проектом начинаешь понимать всю прелесть AR-абстрации, в частности всю прелесть AREL'а (появился в 3-их рельсах) и вещей вроде named_scope'ов :)
Ну конечно желательно сначала разобраться с AR, прежде чем пользоваться им во всю :D

@user = User.find(1)

и затем во view:

@user.posts.each do |post|

вызовет eager logging, или грубо говоря — «херовый sql» запрос.

Вместо этого лучше делать User.find(1, :include => :posts)

чтобы не выбирать лишние данные из sql лучше писать: User.find(:1, :select => «id,name») и так далее.

Нужно хорошо понимать уровень абстракции, тогда работа будет максимально эффективна.

На счет Haml/Sass:
Haml жжот во все поля %) С ним жизнь упростилась в разы. Между тем, советую вам пользоваться плагинами аля simple_form ля генерации форм. В рельсах и так все просто, а с haml&&simple_form(или formstatic) жизнь вообще становиться сахаром.

С sass дел не имел.
хорошо-хорошо, простите %)
ну я ж и говорю — пхп ваше полное говно, даже зенды не спасают :D у нас все в порядке с реализацией и использованием active-record'а.

Информация

В рейтинге
Не участвует
Откуда
Россия
Дата рождения
Зарегистрирован