Разработка на сайтове на Ruby on Rails

От самото начало на световната мрежа всеки сайт съдържа полезно съдържание. За 90% от уебсайтовете в Интернет съдържанието е най-важното нещо. Добрият уебсайт трябва да има добро съдържание. Преди петнадесет години беше прост текст, без маркиране и красиви снимки. Днес това са сложни страници с динамични елементи (плъзгачи). Чудесен пример са статиите lookatme. Как се осъществи преходът от обикновен текст към елегантни страници?

Текстов формат или начало

  • Разбираемост за човек в "сурова" форма
  • Лесно редактиране

Простият формат на текстово съдържание бързо се сблъска с ограниченията си и хората излязоха с нов формат - HTML (Hyper Text Markup Language). Това направи възможно подчертаването на някои части от текста като специални (заглавия), добавянето на изображения и значително увеличаване на възможностите за редактиране на съдържание в сравнение с обикновен текстов формат. Снимките направиха съдържанието по-интересно и визуално. Въпреки това, за да се използват новите функции, беше необходимо да се прибегне до по-сложно редактиране на съдържанието. HTML е дървовидна структура, маркирането изисква отварящи и затварящи тагове. Ако объркате реда, дървото (структурата) на съдържанието ще бъде нарушено. Редактирането на html в браузър беше неудобно и бяха необходими основни умения за маркиране на текст. Беше неудобно и неразбираемо за неподготвен човек да гледа текста, маркиран за компютри.

  • Богати функции в сравнение с обикновен текст

  • човешка неразбираемост
  • Висок процент грешки поради незатворени тагове

WYSIWYG или присъства

  • Грешки в оформлението
  • Няма поддръжка за динамични елементи

Какво следва?

Логичното решение би било да се преместите вмодулно структуриране на съдържанието. Можем да започнем с основни типове съдържание:

  • Текст с маркиране
  • Изображение
  • Плъзгач
  • Видео

Ще бъде ли удобно, ако страницата се състои от линейна последователност от основни типове съдържание? Как да вмъкна текст и изображение в 2 колони? Или в 3. Линейната структура не е подходяща.

Целият изходен код и документация са публично достъпни в github: redde/redditor

Най-интересното се случва в контейнерния клон. Малко по-късно ще напишем подробни инструкции за интегриране в проекти на трети страни.