Создатели калифорнийского стартапа 280North, судя по всему, довольно большие любители маков, а точнее языка Objective-C, который так полюбился разработчикам под мак, и не только им.
Поэтому не удивительно, что именно они совсем недавно представили интереснейшую разработку, а конкретнее язык Objective-J и, соответственно, фреймворк для него под названием - Cappuchino. Этот скриптовой объектно-ориентированный язык, основанный на JavaScript, по сути, предлагает web-программистам отказаться от самого web’a, как бы это парадоксально не прозвучало. Как заявил Росс Баучер из 280 North - "Cappuccino не требует от разработчика знания HTML, CSS, DOM, программист в Cappuccino имеет дело с сущностями более высокого уровня, такими как окна, области окон, графические элементы. “ Таким образом, разработка веб-приложений осуществляется фактически также как и десктопных приложений.
Пример применения данного инструментария - бесплатная весьма качественная Интернет-программа создания и демонстрации презентаций 280Slides, разработанная буквально за пару месяцев самой 280North, состоящей, кстати, всего из трёх человек.
Кстати, Библиотека Cappuchino представляет собой клон GNUstep, и поэтому распространяется как программное обеспечение с открытым исходным кодом, на условиях LGPL.
По утверждениям разработчиков языка из официального туториала – новый язык представляет собой надстройку над обычным JavaScript, а значит любой JS код будет рабочим ив Objective-J. При этом любой, кто знает JavaScript и обладает базовыми знаниями объектно-ориентированного программирования, без труда сможет освоить новый язык, даже не имея особых знаний Objective-C, на котором он был основан.
Язык Objective-J имеет два типа объектов, первый – это собственно JavaScript объекты, а второй это уже объекты самого Objective-J, основанные на классах и наследовании наподобие как в обычных C или Java. Объявление класса происходит следующим образом:
@implementation Person : CPObject
{
CPString name;
}
@end
Начинается всё с @implementation, за ним идёт имя класса, двоеточие и имя наследуемого класса. В фигурных скобках осуществляется объявление переменных.
Oбъявление методов внутри класса (также располагается где угодно между @implementation и @end) осуществляется следующим образом:
- (void)setName:(CPString)aName
{
name = aName;
}
- (CPString)name
{
return name;
}
Следует отметить, что объявление здесь не совсем обычное: минусом обозначается переменная, принадлежащая объекту, как обе переменные в примере выше, а плюсом переменная, принадлежащая классу. В фигурных скобках указывается возвращаемое значение. Когда метод имеет больше одного параметра, каждый параметр отделяется двоеточием, и при объявлении такого метода параметр состоит из метки, за ним идёт двоеточие, потом тип параметра и затем уже само имя параметра:
- (void)setJobTitle:(CPString)aJobTitle company:(CPString)aCompany
Имя метода в Objective-J своеобразно разделяется между всеми параметрами и представляет собой конкатенацию меток, что, кстати, повышает читаемость кода. В примере сверху метод называется setJobTitle:company:. Вызов данного метода осуществляется следующим образом, где данные следуют за метками:
[myPerson setJobTitle: «Founder» company: «280 North»];
Продолжение можно прочитать в туториале
Итак за первую неделю открытого доступа самую первую глючную версию инструментария скачало более десяти тысяч человек, что говорит о явной заинтересованности разработчиков данным начинанием. Конечно, Objective-J пока в начале своего пути и хватает моментов, которые ещё необходимо разрешить, но потенциал у него большой.
А вообще раз декстопные приложения перебираются в веб, то почему бы за ними не последовать и фреймворкам? Тем более что процесс уже идёт полным ходом, если вспомнить Google WebToolkit или MicroSoft Volta, а теперь вот и Cocoa->Cappuchino.
Читайте также
10 популярных курсов по изучению JavaScript для крутой веб-разработки
10 популярных курсов по изучению JavaScript для крутой веб-разработки
JavaScript остается одним из самых популярных языков программирования в мире. Мы собрали список курсов и сертификаций по Javascript от основ до необычных особенностей. В листинге как платные, так и бесплатные онлайн-курсы. Погнали за новыми знаниями!
2 комментария
Как оплачиваются самые популярные языки GitHub и какой прогноз
Как оплачиваются самые популярные языки GitHub и какой прогноз
Rust стал самым быстрорастущим языком по числу разработчиков
Rust стал самым быстрорастущим языком по числу разработчиков
Бесплатные курсы по TypeScript, React, 3D разработке. По итогам могут взять на работу
Бесплатные курсы по TypeScript, React, 3D разработке. По итогам могут взять на работу
Обсуждение
Релоцировались? Теперь вы можете комментировать без верификации аккаунта.