Translate

понеділок, 12 листопада 2012 р.

Functional Programming Principles in Scala



Coursera: Functional Programming Principles in Scala Review

Думаю ні для кого не секрет є те, що дуже великої популярності набувають всілякі онлайн курси. Спробуємо провести коротенький огляд найбільш очікуваного курсу цієї осені, а саме fp (functional programming) principles in Scala. 

Цей курс зацікавив багатьох з ряду причин:




  • Тренд  fp хоч  і далеко не є новим проте саме зараз здобуває все більшої і більшої популярності
  • Скала сама по собі є дуже цікавим предметом для дискусій і як на мене кожен повинен знати, коли її варто використовувати, як і які її переваги чи недоліки. Ну і рейти на скалі зараз одні з найвищих на ринку ІТ :)
  • Martin Odersky - професор, розробник скала і дженерік яви, частий доповідач на різноманітних конференціях, автор багатьох книжок. І мабуть саме ця обставина викликала найбільший ажіотаж серед потенційних слухачів, бо якщо слухати про скалу то мабуть саме від нього.
Сам курс розроблений на найвищому рівні, якщо порівнювати інші курси від корсери, то цей відрізняється саме за подачею матеріалу. Вам одразу буде доступний лінк на екліпсу з потрібними для роботи плагінами, короткі приклад по налаштуванні sbt (білд тул привязаної до курсу) і тд.

В відео гарно додано інтерактивна "квізова" частина, де посеред відео слухачеві пропонується самому щось реалізувати і перевірити правильність реалізації чи прості легенькі питання, що явно допомагає зосереджуватись на відео.

Прослухавши курс і роблячи д/з думаю кожен вільно зможе оперувати скала типами, колекціями, базовими алгоритмами. Саме на ці речі був зроблений найбільший ухил при подачі матеріалів. Що на мою думку не є так добре, бо чисто я очікував якогось порівняльного аналізу ситуацій де краще і чому потрібно використовувати скалу. Також хотілось побачити скалу на більш менш реальних задачах, а не на математичних алгоритмах. Хотілось побачити приклади скали саме там, де вона повинна бути використана, а саме в багатопотокових системах і тд.
Для розв'язування задачок, думаю, кожен може зайти на projecteuler або на topcoder і там їх розв'язувати досхочу...:).

Проте як висновок можу сказати, що курс дуже цікавий і "змусив себе пройти до кінця".
Але в той же час, я очікував від нього трішки іншого, проте це були тільки мої очікування.

ПС. Радо відповім на запитання, якщо вас щось зацікавить