Ruby on Rails

Ruby on Rails

BACKEND

Framework web full-stack được xây dựng bằng Ruby cung cấp cách tiếp cận "Convention over Configuration" và "Don't Repeat Yourself" để tối đa hóa năng suất. Kiến trúc MVC trưởng thành với Active Record ORM, scaffolding tự động, hệ thống migration vững chắc và hệ sinh thái đầy đủ cho REST API và ứng dụng web hiện đại.

Bạn sẽ học được gì

Ruby hiện đại với cú pháp thanh lịch, block, metaprogramming và gem

Active Record ORM với association, validation, callback và migration

Convention over Configuration cho năng suất tối đa

Rails generator cho scaffolding nhanh (model, controller, migration)

Action Cable cho WebSocket thời gian thực tích hợp native

Active Storage cho upload file với cloud storage (S3, GCS)

Action Mailer cho email giao dịch với template ERB

Active Job cho job nền với adapter (Sidekiq, Resque, Delayed Job)

Kiểm thử toàn diện (RSpec, Minitest, fixture, factory với FactoryBot)

Hiệu suất với cache (Redis, Memcached), eager loading và turbo-rails

Chủ đề chính cần nắm vững

Những khái niệm quan trọng nhất để hiểu công nghệ này và thành công trong phỏng vấn

1

Ruby: block, proc, lambda, symbol, metaprogramming, module và mixin

2

Kiến trúc Rails: mẫu MVC, config/routes.rb, autoloading, Zeitwerk

3

Active Record: model, association (has_many, belongs_to, has_and_belongs_to_many)

4

AR validation: presence, uniqueness, validator tùy chỉnh, ngữ cảnh validation

5

AR callback: before_save, after_create, around_update, lifecycle hook

6

Migration: create_table, add_column, change_column, rollback, schema.rb

7

Routing: resources, nested route, namespace, ràng buộc, route helper

8

Controller: params, strong parameters, filter (before_action), respond_to

9

View: template ERB, partial, helper, layout, content_for/yield

10

Active Record Query: where, joins, includes, preload, eager_load (phòng N+1)

11

Rails API mode: ứng dụng chỉ API, serializer (ActiveModel::Serializers, jbuilder)

12

Xác thực: Devise gem, has_secure_password, quản lý session, cookie

13

Phân quyền: Pundit gem, CanCanCan, policy, kiểm soát truy cập theo vai trò

14

Action Cable: channel, stream, broadcasting, kết nối WebSocket

15

Active Job: perform_later, queue adapter (Sidekiq), ưu tiên job, logic thử lại

16

Active Storage: đính kèm (has_one_attached, has_many_attached), variant, upload trực tiếp

17

Kiểm thử: RSpec (describe, context, it), FactoryBot, fixture, request spec, system test

18

Concern: ActiveSupport::Concern, tái sử dụng code, composition module

19

Rails engine: engine gắn kết, namespace, phát triển gem

20

Hiệu suất: fragment cache, Russian doll cache, tối ưu truy vấn, bullet gem

21

Bảo mật: bảo vệ CSRF, phòng SQL injection, bảo vệ gán hàng loạt (strong params)

22

Triển khai: Capistrano, Heroku, Docker, Puma/Unicorn server, asset pipeline