Перед тем, как превратить Сервер Роботов в полноценную облачную систему управления электронными устройствами (т.е. в контрольный узел персонального интернета вещей) добавлением к нему веб-интерфейса, отойдем немного в сторону познакомиться с интрументами, с помощью которых будем создавать наше управляющее роботами веб-приложение.
Лично я - стандартный программист на Яве, в своё время для веб-разработки приноровился к JSP+Tomcat, с тех пор для для небольших эпизодических задач мне их вполне хватало. Но т.к. Сервер Роботов не просто крутится где-то в облаке, но и публикуется с исходным кодом в виде уроков, я не хотел использовать для него совсем уж откровенное (хотя и вполне актуальное) старьё, поэтому решил попробовать что-нибудь современное ультра-модное, но чтобы не совсем маргинальное. В этом смысле я уже давно посматривал в сторону функционального программирования вообще и Скалы в частности, теперь появился повод попробовать ее на практике конкретно в области веб-разработки.
А вообще в области программирования для веба существует большое количество разнообразных платформ, языков и фреймворков; по быстрому и углубленному знакомству с ними написано и напечатано большое количество разнообразных статей, постов и книг. Поэтому на основах Скалы и веб-разработки подробно останавливаться не буду; основной интерес для меня в конечном итоге будут представлять подключенные к серверу роботы, а на чем написан вспомогательный веб-интерфейс - вопрос второстепенный, при желании Скалу можно всегда можно заменить на любимый Раби или ПоХаПэ.
Почему Скала
очевидно из трейлера:
Скалу часто представляют как улучшенную Яву и говорят о том, что на неё довольно просто будет перейти Ява-программистам. Действительно, программы, написанные на Скале, компилируются в классы, которые работают поверх обычной глобальной и надёжной Ява-машины. В программе на Скале можно использовать любые библиотеки, написанные для обычной Явы (пожалуй, это важнейшее преимущество). Скала также является объектно-ориентированным языком, хотя точнее она одновременно включает объектно-ориентированные и функциональные парадигмы программирования.
Однако, для того, чтобы легко понимать программы, написанные на Скале (не говоря о том, чтобы писать), знания одной Явы может быть недостаточно. Множество новаций в Скале касаются именно синтаксиса. По моим первым впечатлениям, она старается быть настолько лаконичной, насколько это возможно. Программист может опускать разнообразные ключевые слова (например, не указывать тип данных при инициализации переменных, или даже не писать ключевое слово "return") - что именно имелось ввиду в каждом случае, будет пытаться понять из контекста компилятор. Явный плюс такого подхода - программы действительно получаются очень лаконичными, их (как я постепенно начал ощущать) довольно приятно писать, т.к. в коде можно набирать только то, что действительно важно. Побочный эффект такой лаконичности - при чтении чужого кода (примера из интернета или кода библиотеки) работу компилятора приходится осуществлять читающему человеку.
Лично у меня сходу не получилось вникнуть в смысл некоторых примеров кода на Скале, которые я рассматривал на старте, ни с первого, ни со второго раза, как это часто прокатывало с другими языками. Поэтому если вы начнете ощущать накатывающееся раздражение при просмотре некоторых фрагментов кода на Скале, которые будут приведены далее, из-за того, что вы непрерывно смотрите на эти три строчки уже восемнадцать минут и все равно не понимаете, что там, блин, написано, настоятельно рекомендую предварительно прочитать какую-нибудь вводную книгу по основам языка. Хороший вариант - «Функциональное программирование. SCALA для нетерпеливых.», Кей Хорстман (Cay Horstmann).
Всем привет, очень хотелось попасть на это мероприятие http://www.oracle.com/javaone/ru-ru/index.html, но к сожалению не получилось. Кто был на этой конференции, расскажите что было ? Программа интересная, но мне кажется мало чего полезного из нее можно вынести.
Web design is a one best tool to boost our business. Web design is really a great way to increase or expand a business in easy and fast way.Now a days,the popularity of web development is increasing…
Работать в mail.ru не прикольно ни разу. Звали на собеседование, ходил к ним. Особо не понравилось. У них там как в яндексе обещают золотые горы, а на самом деле фигушки.
Comments
Звали на собеседование, ходил к ним. Особо не понравилось.
У них там как в яндексе обещают золотые горы, а на самом деле фигушки.
А тех, кто догадывается, что *роутер* на самом деле должно говорить рАУтер,…
Нахреназачем это здесь?