Що таке маршрути в Ruby on Rails?

текст перекладу
Ruby on Rails (Rails) — популярний фреймворк, який використовується для розробки веб-додатків. Однією з найсильніших рис Rails є система «маршрутів», яка зв’язує URL-адреси з відповідними діями контролерів. У цій статті ви дізнаєтесь, що таке маршрути Rails, як вони працюють і як використовувати їх у своїх проектах.

1. Що таке маршрути?

Маршрути — це система, яка направляє вхідні HTTP-запити до правильного контролера та дії. У Rails кожен URL відповідає певній дії (функції) в контролері. Коли користувач відвідує сторінку, Rails направляє запит до відповідного контролера та дії. Ця дія зазвичай отримує дані для відображення користувачу або виконує іншу задачу, наприклад, … Читати далі

Оволодіння специфікаторами доступу в Ruby (public, protected та private)

pic

Чи замислювалися ви, як працюють контролі доступу, такі як private і protected, у сучасних версіях Ruby?

Я помітив, що багато досвідчених розробників Ruby мають труднощі з поясненням ключових відмінностей між методами private та protected. Щоб пролити світло на це питання, я вирішив написати цю статтю.

Перш ніж заглиблюватися, давайте розглянемо кілька тверджень. Ми визначимо, які з них правильні, а які — ні:

  1. Публічні методи не мають контролю доступу. Їх можна викликати ззовні класу будь-яким екземпляром цього класу.
  2. Як protected, так і private методи не можна викликати ззовні визначеного класу.
  3. Методи protected доступні з підкласів, а методи private — ні.
Читати далі

Асинхронний JavaScript і Promises: Потужність сучасного вебу

JavaScript є основою сучасних веб-додатків. Однак динамічний характер вебу іноді ставить під питання традиційні парадигми синхронного програмування. Саме тут в гру вступає асинхронний JavaScript. У цій статті ми розглянемо, як працює асинхронний JavaScript і як Promises роблять його більш читабельним та зручним для керування.

Що таке асинхронне програмування?

Асинхронне програмування — це техніка, яка дозволяє коду виконуватися без очікування на інші процеси. Це особливо корисно для завдань, що потребують багато часу (наприклад, виклики API, читання/запис файлів або таймаути).

Наприклад:

console.log("1-ше завдання");  
setTimeout(() => {  
 console.log("2-ге завдання (після 3 секунд)");  
}, 3000);  
console.log("3-є завдання");

Як ви бачите, друге завдання завершується пізніше, … Читати далі

Three Spark: Шаблон для проектів на Three.js

pic

Three Spark Demo

Three Spark: Шаблон для проектів на Three.js

Робота з Three.js для створення вражаючих 3D веб-досвідів може бути захопливою, але налаштування проекту з нуля часто здається повторюваним процесом. Від налаштування інструментів до організації файлів і додавання бібліотек, проходить час, перш ніж ви зможете фактично почати будувати.

Саме тут на допомогу приходить Three Spark — спрощений шаблон, розроблений для того, щоб ви могли швидко й ефективно розпочати роботу з проектами на Three.js.

Що таке Three Spark?

Three Spark — це відкритий шаблон для розробників, які працюють з Three.js. Він усуває клопіт із налаштуванням нового проекту, надаючи попередньо налаштоване середовище … Читати далі

Чому молодші розробники плутаються з асинхронним кодом (і як навчитися працювати з ним)

pic

Зображення створене за допомогою DALL-E

Асинхронне програмування — це одна з найскладніших, але водночас найважливіших тем у сучасній розробці, особливо в веб-розробці. Якщо поглянути на найбільш поширені труднощі початківців (і не тільки початківців), однією з частих скарг є незрозумілість того, що відбувається "під капотом", чому код "стрибає" і не дає передбачуваних результатів, або чому програма не чекає, поки функція завершить роботу.

У цій статті ми розглянемо основні причини цієї плутанини, ключові концепції асинхронії та те, як їх зрозуміти, щоб ви перестали заплутуватися і навчилися ефективно писати, налагоджувати та підтримувати асинхронний код.

Оригінальна стаття російською: [**Посилання на статтю в

Читати далі

Параметри функцій, аргументи та їх використання в JavaScript.

Функції в JavaScript можна визначити як будівельні блоки програми. Вони використовуються для того, щоб ваш код міг бути викликаний кілька разів без повторень. Це можна порівняти з Lego деталями, які є унікальними, але все ж частинами цілого об'єкта, що створюється.

pic

Деталі Lego

Звичайний формат оголошення функцій у JavaScript.

function fallow() {  
 alert("Hello Everyone")  
 }

Ключове слово function завжди йде першим і використовується для створення функції, "fallow" — це ім'я функції, список параметрів функції в дужках (ці параметри відокремлюються комами), а код функції міститься всередині фігурних дужок.

Параметри функцій

Параметри функцій можна визначити як змінні, перелічені в дужках при оголошенні функції, … Читати далі

Як працює метод Array sort в JavaScript

pic

Фото Faris Mohammed на Unsplash

Привіт, друзі. Сьогодні я хочу поговорити про сортування масивів у JavaScript за допомогою методу sort(). Одразу хочу зазначити, що цей метод НЕ повертає новий відсортований масив. Він сортує початковий масив і повертає посилання на нього. Це дуже важливо пам’ятати, щоб потім не зіткнутися з годинами дебагу.

Можливо, у вас логічно виникне питання, який алгоритм використовує метод sort(). І ось я вас засмучу — однозначної відповіді я не дам! Тому що кожен рушій реалізує цей метод по-своєму. Наприклад, V8 (той, що використовується в Chrome і Node.js) використовує сортування вставками (Insertion Sort) для … Читати далі

Вступ до курсу Next.js

pic

Ласкаво просимо до остаточного посібника з освоєння Next.js!

Якщо ви шукаєте спосіб легко створювати готові до виробництва повноцінні веб-додатки, ви потрапили за адресою. У цьому блозі я познайомлю вас з Next.js, передовою фреймворком для React, який спрощує розробку веб-додатків завдяки таким функціям, як маршрутизація, отримання даних і оптимізоване рендерингування з коробки.

Це введення ідеально підходить як для новачків, так і для досвідчених розробників, які цікавляться тим, чому Next.js є вибором номер один для сучасної веб-розробки.

Що таке Next.js?

Next.js — це фреймворк для React, який спрощує розробку повнофункціональних веб-додатків. Хоча React чудово підходить для створення користувацьких інтерфейсів, він … Читати далі

Основні відмінності між масивами та літералами об’єктів у JavaScript

pic

Літерали об'єктів

Об'єкти зберігають колекції різних даних у форматі ключ-значення, наприклад:

{ name: “Clarisse” }.

Тут ключ — це name, а значення — “Clarisse”. Ключ використовується пізніше, коли потрібно отримати дані, які до нього прив'язані. Об'єкт можна створити за допомогою фігурних дужок {…} з необов'язковим списком властивостей, і вони повинні бути у форматі ключ-значення, як зазначено раніше. Коли використовуються фігурні дужки, така декларація називається літералом об'єкта.

Візуально це можна уявити як набір файлів, що зберігаються в коробці. Кожен файл містить дані, прив'язані до певного ключа. Це полегшує пошук файлу за його іменем або додавання/видалення файлів.

pic

Щодо JavaScript, приклад … Читати далі

Запитання для співбесіди з JavaScript 2025

1. У чому різниця між var, let та const в JavaScript?

  • var: Обмежений функцією, може бути перевизначений, підвищений.
  • let: Обмежений блоком, не може бути перевизначений, не підвищений.
  • const: Обмежений блоком, не може бути змінений.

Приклад:

var x = 10;  
let y = 20;  
const z = 30;  

x = 15; // Дозволено  
y = 25; // Дозволено  
z = 35; // Помилка: спроба присвоїти значення змінній, яка є константою

2. Поясніть концепцію замикань (closures) в JavaScript з прикладом.

  • Замикання виникає, коли функція зберігає доступ до свого лексичного оточення, навіть коли виконується поза ним.
  • Приклад:
function outer() {  
 
Читати далі