От Java я пришел к Scala через Groovy и Python. Некоторые функциональные особенности языка были уже знакомы, но, безусловно было огромное количество всего нового. Полность. с Вами согласен: после определенного момента скорость разработки непременно повысится — кода получается гораааздо меньше. Очень доволен переходом на Lift.
Язык мощный, очень много разных конструкций — сделать это тяжело, не сравнить с Java. Но меня устраивает eclipse для разработки под lift. Он действительно отображает ошибки компиляции (очевидно из-за того что сам компилирует код после сохранения), в IDEA же, как недавно просветили на встрече в Питере, иной подход — они сами пытаются воспроизвести все дерево синтаксиса Scala и соотвественно «обходятся» в проверке без компилятора.
рекурсивный вариант
У Вас при инициализации чего-то вида c = Dict({'a':1,'b':{'c':3,'d':4}}), судя по коду, не будут доступны через точку аттрибуты внутренних словарей
Мне вместе с Вами просто, возможно, пока сложновато это представить в полной мере. Взять веб-фреймворк для Scala — Lift. «Lift way», в отличие от своих Scala-аналогов, исключительно опирается на большое количество функциональных конструкций и уже довольно успешно используется в крупных компаниях.
Также DSL для работы с базой данных от Foursquare — Rogue
Думаю, статья направлена на ООП программистов со «средним» уровнем, которые читая это могут сразу примерить освещенные недостатки привычной парадигмы на себе, исходя из личного опыта.
Более плавное начало, думаю, можно найти в Functional Programming for Java Developers
Спасибо! Ломал голову, искал имя в его семье, смотрел не было ли докладов в этом одноименном штате за последнее время. Думал над «Scala сложна, детка!», но не решился, так и не определив что за Virginia :)
Да не критикует он читабельность кода. В силу специфики и мощи языка, сложность эта неизбежна. Тем более, что бОльшая сложность возникает в большей степени при реализации библиотечных функций, о чем и говорит на примере метода flatMap. Он всем доволен — и Scala, и собой.
Критику же я разглядел только в упоминании про IDE, но там же он и поясняет, что очень сложно создать средство разработки для подобного языка.
— что истинно функциональные программы не имеют побочных эффектов
тут, верояно, side effect. считаю тоже довольно устоявшимся. возможно, стоит взять в скобки?..
Хех, передовики… Работа с технологиями Oracle в моей компании (БД, Портал и все остальное, неизбежно прилагаемое)- это, пожалуй, единственное, чего я стараюсь избегать.
У нас соседний отдел пишет даже web-приложения на Pl/Sql, попробовал я как-то влезть в их портал со своей Джавой — написать портлет, так это оказалось практически нереально из-за дибильной инфраструктуры их сервера. Руками ничего не написать, нужно было программировать мышкой в ущербном JDeveloper, генерирующем километры xml для портлета. Соотвественно от идеи написания приложений для Oracle Portal я быстро отказался и начальник моего отдела меня понял.
Приложения с графическим интерфейсом все убогие. А нет, у них же сейчас NetBeans есть, доставшийся от Sun, вот он, пожалуй, единственный нормальный, хотя в нем все равно не работаю. Плююсь от SqlDeveloper. SqlDesigner у всех жутко тормозит и постоянно вылетает.
Вобщем мне Oracle любить не за что, только ненавидеть.
«Допиливание» все было связяно с гуевыми штуками — большие пачки обновлений приходили каждый день.
У Вас при инициализации чего-то вида
c = Dict({'a':1,'b':{'c':3,'d':4}})
, судя по коду, не будут доступны через точку аттрибуты внутренних словарейТакже DSL для работы с базой данных от Foursquare — Rogue
Более плавное начало, думаю, можно найти в Functional Programming for Java Developers
Критику же я разглядел только в упоминании про IDE, но там же он и поясняет, что очень сложно создать средство разработки для подобного языка.
тут, верояно, side effect. считаю тоже довольно устоявшимся. возможно, стоит взять в скобки?..
У нас соседний отдел пишет даже web-приложения на Pl/Sql, попробовал я как-то влезть в их портал со своей Джавой — написать портлет, так это оказалось практически нереально из-за дибильной инфраструктуры их сервера. Руками ничего не написать, нужно было программировать мышкой в ущербном JDeveloper, генерирующем километры xml для портлета. Соотвественно от идеи написания приложений для Oracle Portal я быстро отказался и начальник моего отдела меня понял.
Приложения с графическим интерфейсом все убогие. А нет, у них же сейчас NetBeans есть, доставшийся от Sun, вот он, пожалуй, единственный нормальный, хотя в нем все равно не работаю. Плююсь от SqlDeveloper. SqlDesigner у всех жутко тормозит и постоянно вылетает.
Вобщем мне Oracle любить не за что, только ненавидеть.