Порівняння систем типів PHP7 і Hack


Однією з цікавих речей в PHP7, крім неймовірної продуктивності, є введення скалярного type-hinting'а в поєднанні з опціональним «strict» режимом. При читанні RFC я помітив, що PHP-код в прикладах виглядає дуже схожим на Hack. Якщо виконати один і той же код і PHP7 і в Hack? Яка різниця між ними? Ось що я дізнався.
Читати далі →

Короткий конспект по мові JavaScript

Я -.NET розробник. Але останнім часом все частіше стикаюся з JavaScript. Причому, в 50 відсотках випадків, я щось на ньому пишу, в інших 50 — розбираюся з чужим кодом, та ще й пройшли через минификацию, а іноді і обфускацію. У цій статті захотілося поділитися тими моментами, які мені здалися важливими для розуміння мови і ефективної роботи з ним. Тут не буде нічого нового чи невідомого для людей, які вже мали справу з мовою, і не буде чогось такого, чого не можна знайти в інших джерелах. Для мене стаття буде корисна як спосіб краще розібратися в предметі, для читачів, я сподіваюся, — як привід освіжити знання.

Брендан Айк згадував, що JavaScript був створений за 10 днів. Думаю, ідея виношувалася довше. Як би те не було, мова вийшов і з тих пір тільки набирає популярність. Особливо після появи AJAX.

JavaScript — мова зі слабкою динамічною типізацією, автоматичним управлінням пам'яттю і прототипным спадкуванням.

JavaScript складається з трьох відокремлених частин:

  • ядро (ECMAScript),
  • об'єктна модель браузера (Browser Object Model або BOM),
  • об'єктна модель документа (Document Object Model або DOM).


У статті, в основному, піде мова про ядрі. Звичайно, у прикладах коду будуть використовуватися елементи DOM і BOM, але загострювати на них увагу не буду.


Читати далі →