Complete ruby code
Upcoming SlideShare
Loading in...5
×
 

Complete ruby code

on

  • 2,641 views

Что делать, чтобы повысить качество кода

Что делать, чтобы повысить качество кода

Statistics

Views

Total Views
2,641
Views on SlideShare
2,467
Embed Views
174

Actions

Likes
3
Downloads
8
Comments
3

7 Embeds 174

http://www.belarusrubyonrails.org 97
http://belarusrubyonrails.org 30
http://lanyrd.com 26
http://brug.by 13
https://twitter.com 4
http://feeds.feedburner.com 2
http://dashboard.mindtickle.com 2
More...

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Complete ruby code Complete ruby code Presentation Transcript

  • Совершенный Ruby код http://goo.gl/g4uFT @ka8725 Андрей Колешкосуббота, 23 февраля 13 г.
  • Моя активность Поддержка, сделал Контрибьютор с нуля • redmine_s3 • locomotiveCMS • get_or_build • inherited_resources • railsguides.net • deviseсуббота, 23 февраля 13 г.
  • Проблемы кодасуббота, 23 февраля 13 г.
  • Индусы if i.to_s.length == 1суббота, 23 февраля 13 г.
  • Индусы if i.to_s.length == 1 if i.is_a?(Integer) && (0 <= i && i < 10)суббота, 23 февраля 13 г.
  • Китайцы if (i == 0 || i == 1 || i == 2 || i == 3 || i == 4 || i == 5 || i == 6 || i == 7 || i == 8 || i == 9)суббота, 23 февраля 13 г.
  • Китайцы if (i == 0 || i == 1 || i == 2 || i == 3 || i == 4 || i == 5 || i == 6 || i == 7 || i == 8 || i == 9) if 0 <= i && i < 10суббота, 23 февраля 13 г.
  • Знаниясуббота, 23 февраля 13 г.
  • Опрос хабр Если вы рубист, то с какого языка вы перешли на Ruby? 150 112,5 75 37,5 0 PHP Java C# Другой языксуббота, 23 февраля 13 г.
  • Быдлокодер http://lurkmore.to/Быдлокодер • VB, PHP, JavaScript, программирование мышкой • отсутствие языковой граммотности • отсутствие понимание собственного кода • много чего интересного по ссылке...суббота, 23 февраля 13 г.
  • Проблемы архитектурысуббота, 23 февраля 13 г.
  • Проектированиесуббота, 23 февраля 13 г.
  • Проектирование Не но! на деж де На жн о!суббота, 23 февраля 13 г.
  • Сложные проблемысуббота, 23 февраля 13 г.
  • Cложные проблемы Не идите прямо!суббота, 23 февраля 13 г.
  • Проблемы тестированиясуббота, 23 февраля 13 г.
  • Нету тестов? Не беда!суббота, 23 февраля 13 г.
  • Нету тестов? Не беда! Не проект!суббота, 23 февраля 13 г.
  • Последствия • Невозможно добавить фичу • Фикс одного бага создает два бага • Рефакторинг невозможен • Код попахиваетсуббота, 23 февраля 13 г.
  • Пути решения проблемсуббота, 23 февраля 13 г.
  • Пишите тесты • В меру • Научиться писать тесты = понять, когда их писать не нужно • http://goo.gl/1NHGUсуббота, 23 февраля 13 г.
  • Покрытие тестами • Не стремитесь к 100% покрытию • Достаточно acceptance-тестов • Не тестируйте стандартные вещи, плагины и т.п. • Не используйте Cucumberсуббота, 23 февраля 13 г.
  • Какие тесты писать? Интеграционные тесты Unit-тестысуббота, 23 февраля 13 г.
  • Важность тестов в MVC • Модели • Контроллеры • Хелперы • Отображение • Интeграционныесуббота, 23 февраля 13 г.
  • Kent Beck (создатель TDD) ‘Мне платят за код, который работает, а не за тесты. Моя философия - тестировать настолько мало, насколько это возможно для достижения нужного уровня уверенности’суббота, 23 февраля 13 г.
  • Тесты после кода? Нет!суббота, 23 февраля 13 г.
  • Тесты после кода? Нет! Да!суббота, 23 февраля 13 г.
  • Пример class User < AR validates :name, :presence => true end describe User it { should validate_presence_of(:name) } endсуббота, 23 февраля 13 г.
  • Пример class User < AR # validates :name, :presence => true end describe User it { should validate_presence_of(:name) } endсуббота, 23 февраля 13 г.
  • Пример class User < AR validates :name, :presence => true end describe User it { should validate_presence_of(:name) } endсуббота, 23 февраля 13 г.
  • TDD Red Refactor Greenсуббота, 23 февраля 13 г.
  • Используйте готовые решения • gems • Шаблоны проектирования • Сторонние сервисысуббота, 23 февраля 13 г.
  • Парное программирование С котом Aaron Patterson (@tenderlove)суббота, 23 февраля 13 г.
  • Продумывайте решение • Консультируйтесь у знающих • Вытягивайте инфу у заказчика до последней мелочи • Конструируйтесуббота, 23 февраля 13 г.
  • Переписать с нуля?суббота, 23 февраля 13 г.
  • Переписать с нуля?суббота, 23 февраля 13 г.
  • Переписать с нуля! • Существуют все вышеописанные проблемы • Вы знаете проект очень хорошо • Вам доставляет удовольствие • Заказчик готов на это и сам просит вас об этом http://goo.gl/slGtVсуббота, 23 февраля 13 г.
  • Просвещайтесьсуббота, 23 февраля 13 г.
  • Прочитайте эту книгу!суббота, 23 февраля 13 г.
  • Вопросы? @ka8725 Андрей Колешкосуббота, 23 февраля 13 г.