Archive for марта, 2011

RubyDev Ruby Tutorial #2 > Базовые типы данных в Ruby

марта 28, 2011  |  Published in Ruby, Основы


Строки

Строки — это произвольной длины наборы символов, которые заключены в одинарные или двойные кавычки. Пример строк:

«this is a string»
‘this is a string in single quotes’

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

%q!this is a string in single quotes!
%q{this is a string in single quotes}

Вы не можете использовать только цифры и буквы, все остальные символы доступны для заключения в них строкового литерала. Представленное в примере выше заключение строки в произвольные символы равносильно заключению в одинарные кавычки. Это важно знать потому, что между строкой в одинарных кавычках и в двойных имеется большая разница, но об этом чуточку ниже.
Read the rest of this entry »

Tags: ,

RubyDev Ruby Tutorial #1 > Введение в Ruby

марта 23, 2011  |  Published in Ruby, Основы

Предупреждение: Я не являюь профессиональным программистом, я любитель постигающий эту науку и желающий систематизировать свои знания путем написания учебника. Я стараюсь сделать его максимально полным и подробным, более качественным, чем все, что уже имеются. Создавая данный учебник я руководствуюсь своими личными соображениями о том, как он должен быть устроен и что в него должно быть включено. Если вам не нравится структура или изложение материала — просто не читайте, практика показывает, что это очень эффективный способ избежать болей ниже спины. Буду благодарен доброжелательной критике конкретно содержания, так как я не все знаю и даже в том, что знаю, могу заблуждаться.

Эта глава вводная, философская, совсем не практичная, однако очень важная. Она даст вам базовое представление о языке Ruby.

Философско-исторический аспект
Практический аспект
Установка Ruby
Кратко об элементах программного кода
Некоторые особенности Ruby Read the rest of this entry »

Tags: ,

RDR3T > Первая кровь: Структура приложения, первая модель и контроллер

марта 19, 2011  |  Published in Ruby on Rails, Ruby on Rails 3

В прошлой главе мы занимались тем, что создавали себе рабочую среду и создали свое первое приложение на Rails 3. В этой главе RubyDev Rails 3 Tutorial вы еще ближе познакомитесь со структурой приложения Rails, с Git и Bundler, а также создадите свою первую модель и контроллер и узнаете о том, что такое BDD и RSpec.

Прежде чем начать, давайте разберемся с некоторой терминологией: фреймворк Rails построен на основе нескольких принципах, которые очень важно знать любому программисту!

CoC (Convention over Configuration — Соглашение прежде конфигурации) — согласно этому принципу Rails содержит набор соглашений касательно структуры проекта, именования файлов и директорий, а также классов, модулей и так далее. Благодаря этому приложение на Rails избавляется от лишней настройки приложения, чем гораздо ускоряет разработку. Этот принцип вовсе не значит, что приложение на Rails не настраиваемо, Rails как раз таки один из самых гибких фреймворков для веб разработки. Этот принцип означает лишь, то, что мы избегаем лишней конфигурации и приближаемся к стандартизации.
Read the rest of this entry »

Tags: , , , , , , ,

Mongoid #2: Документы

марта 16, 2011  |  Published in Базы данных

mongoid logoДанная статья является переводом официальной документации:

Документы — основные объекты в Mongoid и любой объект, который сохраняется в базу данных должен включать в себя через include Mongoid::Document. Представлением документа в MongoDB является BSON-объект, который очень похож на хэш в Ruby или объект формата JSON. Документы могут храниться в своих собственных коллекциях в базе данных или могут быть включены в другие документы таким образом имея некую степень вложенности.

Объявление документов в Mongoid

Рассмотрим простой класс — модель человека. У каждого человека должны быть имя, фамилия и отчество. Мы можем объявить эти атрибуты человека объявив соответствующие поля (поле — field) в объекте представляющем человека. В Mongoid поля, по умолчанию, имеют тип String.

#person.rb
class Person
  include Mongoid::Document
  field :first_name
  field :middle_initial
  field :last_name
end

Read the rest of this entry »

Tags: , ,

RDR3T > Подготовка рабочего места

марта 7, 2011  |  Published in Ruby on Rails, Ruby on Rails 3

RubyDev Rails 3 Tutorial

Подготовка рабочего места

Created_at: 07.03.2011
Version: 0.1
Rails_version: 3.0.5
Ruby_version: 1.9.2

Данный учебник предполагает, что вы используете в качестве операционной системы Ubuntu Linux. Если вы используете другу операционную систему, например Windows, то я рекомендовал бы вам установить Ubuntu, через специальную утилиту wubi, или просто с диска, как вторую операционную систему. Дело в том, что Ruby и Rails заточены конкретно под работу на *nix системах, а поддержка платформы Windows — это бремя, которое несут на себе разработчики Ruby и Rails для популяризации платформы. Даже если вы являетесь большим поклонником Windows, то в скором времени после начала изучения Ruby и Rails вы поймете необходимость работы на другой операционной системе, например Ubuntu, так как в Windows могую появляться различные ошибки, кроме того Windows ораничивает вас в наборе используемых инструментов, например некоторые gem’ы не совместивы с Windows.

Прежде, чем приступить к изучению программированию веб приложений на Rails, вам необходимо организовать рабочее пространство на вашем компьютере. Вам потребуется система контроля версий Git, которая на данный момент является наиболее популярной среди Ruby / Rails программистов, менеджер версий Ruby — RVM, который позволит вам использовать сразу несколько версий Ruby, а также организовать для каждой версии несколько рабочих окружений со специфическим набором gem’ов (каждый такой набор (окружение) имеет официальное название — gemset), а также сам Ruby версии 1.9.2. Read the rest of this entry »

Tags: , , ,

Политика блога и Наполеоновские планы

марта 7, 2011  |  Published in Новости

RubyDev.ru совсем молодой блог, ему всего 11 месяцев и он все еще продолжает экспериментировать. На данный момент прихожу к выводу о необходимости написания конкретно авторских статей в виде циклов статей. RubyDev Rails 3 Tutorial, например один из таких циклов. С самого начала RDR3T будет содержать информацию о работе с GIT и, возможно, в этом учебнике будет применяться методология BDD (Behaviour-Driven Development).

Кроме RDR3T, будет запущен еще один большой проект — RubyDev Ruby Tutotial (RDRbT).

Перевод материалов по Mongoid и Английскому языку будет продолжаться. После перевода всей документации, будут вестись соответствующие циклы статей, а авторские статьи по Mongoid войдут в цикл RDR3T > Models > Mongoid.

Планируется еще один цикл статей посвященных JQuery и JavaScript:

JavaScript: JQuery
Javascript: Основы языка
JavaScript: Разный JavaScript (посвященный всяким-разным прочим JS библиотекам)

Надеюсь, RubyDev.ru станет профессиональным, многогранным ресурсом.

Политика блога:

1. Больше авторского материала
2. Меньше переводов
3. Статьи будут компилироваться в циклы
4. Более строгая модерация комментариев:

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

Tags:

Simple Past или Past Indefinite

марта 6, 2011  |  Published in English, Grammar

Simple Past или Past Indefinite
Простое прошлое время или прошлое неопределенное время

english_american

Форма:

[VERB+ed] или irregular verb.

Примеры:

* You called Debbie.
- Ты звал Дебби.

* Did you call Debbie?
- Ты звал Дебби?

* You didn’t call Debbie.
- Ты не звал Дебби.
Read the rest of this entry »

Tags: ,

Present Continuous

марта 2, 2011  |  Published in English, Grammar, Новости

english_americanPresent Continuous

Настоящее длительное время

[am/is/are + present participle]

Примеры:

* You are wathing TV.
- Ты смотришь телевизор.

* Are you watching TV?
- Ты смотришь телевизор?

* You are not wathing TV.
- Ты не смотришь телевизор.

Read the rest of this entry »

Tags: ,

Mongoid #1: Установка

марта 1, 2011  |  Published in Базы данных

mongoid logoДанная статья является переводом официальной документации:

Для работы с MongoDB, из Ruby, необходимо установить gem Mongoid:

$ gem install mongoid —pre

Для исправления производительности, вы должно быть захотите установить расширения для Mongo написанные на Си, которые совместимы с вашей системой:

$ gem install bson_ext

Read the rest of this entry »

Tags: , , ,

Мелкопост о MongoDB и Mongoid

марта 1, 2011  |  Published in Базы данных, Новости

mongoDBДобрый день, уважаемые читатели блога! Пишу сей пост с радостью, поскольку появился повод разобраться наконец-то с тем, что такое документо-ориентированные базы данных и с чем их едят. А это означает, что на RubyDev будет новый цикл статей, в первую очередь переводов официальной документации по MongoDB — документо-ориентированной базе данных, и Mongoid — библиотеке для работы с MongoDB в Ruby. В первую очередь начну с перевода документации по Mongoid, а дальше пойдет перевод документации по самой MongoDB и различных статей на тему.

Что же такое документо-ориентированные базы данных? В первую очередь хочу сказать, что пока я сам не очень разобрался, поэтому буду благодарен на правки в комментариях. Документо-ориентированные БД — это в первую очередь NoSQL базы данных. Во-вторых, документо-ориентированные базы данных, как видно из названия ориентируются на такие структуры данных, как «документ», в отличие от таблиц, которые используются в реляционных БД типа MySQL или PostgreSQL.

Что такое документ? - Документ, это грубо говоря венегрет из различных данных, ну или, техническим языком говоря, документ можно назвать многомерным ассоциативным массивом. В MongoDB для хранения данных используется формат BSON — бинарный эквивалент формата JSON.

Как установить MongoDB?
Установка предельно проста, идем сюда: , скачиваем подходящую стабильную версию и просто распаковываем содержимое в любую необходимую нам папку.

Чтобы запустить сервер MongoDB, необходимо запустить файл mongod:

$ ./mongod —dbpath data/db

Где параметр —dbpath указывает путь, где хранится база данных. По умолчанию MongoDB, хранит файлы в папке data/db, которую вам необходимо создать самостоятельно и правильно выставить права доступа, однако у меня что-то не завелось и мне приходиться каждый раз указывать папку с БД вручную.

Все, теперь вы имеете MongoDB на борту! Ждите в ближайшее время перевода официальной документации по Mongoid.

Tags: ,