LINUX.ORG.RU

Веб-фреймворк на Objective-C

 ,


0

0

Некоторое время назад у меня появилась навязчивая идея сделать веб-фреймворк на Objective-C, это позволило бы писать веб-приложения, сохраняя гибкость и функциональность C, при этом пользуясь замечательным рантаймом Objective-C.

Основной проблемой была закрытость Foundation — базового набора классов Objective-C Apple. Веб-фреймвок, ограниченный серверной OSX, мало кому был бы интересен.

После изучения нескольких Opensource-клонов Foundation я остановил свой выбор на Cocotron. MIT-лицензия и хороший набор реализованного API — существенный плюс, но Cocotron разрабатывался как кросс-компилятор для Apple XCode.

FOW (Framework for Objective Web) основан на наборе моих скриптов сборки, позволяющих собрать GCC с патчами Apple (Objective-C 2.0) и Cocotron нативно на линуксе. Сам FOW собирается и работает как на Linux, так и на OSX.

Сегодня у меня был пробный запуск FOW на Linux-сервере (FastCGI через Lighttpd), который завершился полным успехом.

Для Objective-C уже существуют удобные библиотеки ORM и веб-темплейтов (да и CTemplates никто не запрещает использовать). А возможность собрать все это на Linux-машине, возможно, поднимет интерес к Objective-C среди не-эппловодов.

>>> Подробности

★★

Проверено: Shaman007 ()
Последнее исправление: cetjs2 (всего исправлений: 4)
Ответ на: комментарий от anonymous

> Дружочек, рассуждай о том, архитектуру чего ты знаешь. Википедия отдает 99.95% *статического* контента. Это значит, что однажды сгенерированная посредством php страничка кешируется на ~10 000 запросов. Поэтому неудивительно, что *у них* все работает.

Цифры, естественно, с потолка.

> В тех проектах, где *нельзя* кешировать страницы (а это - все проекты, где вывод зависит от конкретного пользователя: блоги, соц. сети, и т.п.), так вот, в этих проектах *всегда* так или иначе используется C или С++.

А разве вконтакте не на PHP? Как то не коррелирует это с вашим *всегда*. Или опять у вас будет оговорка "а вот в данном случае ввиду того, что X равно 2,17..."??

И ещё раз - "так или иначе" очень удобное выражение. PHP "так или иначе" использует Си, представьте себе.

Более того, я слабо представляю наколенную поделку на ObjC в составе 2M+ ресурсов.

anonymous_num_0
()
Ответ на: комментарий от anonymous_num_0

>Цифры, естественно, с потолка.

Как угодно. Найдите другие цифры, на Гугле ведь не забанили, не так ли?

>А разве вконтакте не на PHP? Как то не коррелирует это с вашим *всегда*. Или опять у вас будет оговорка "а вот в данном случае ввиду того, что X равно 2,17..."??

И что именно не коррелирует-то?

>И ещё раз - "так или иначе" очень удобное выражение. PHP "так или иначе" использует Си, представьте себе.

Разумеется. "Так или иначе" - выражение, очень удобное для всех. Вот сделали PHP-binding к некой сишной библиотеке, которая умеет брать данные из БД, класть их в кэш, а кэш - [ин]валидировать. И получился вебпроект на чем? На PHP? На C? Или - на комбинированной технологии?

А в случае с Perl и Python ситуация еще сложнее - для этих языков писать binding существенно проще чем к PHP, поэтому и сишных/плюсовых модулей к ним много больше чем на PHP.

anonymous
()
Ответ на: комментарий от anonymous_num_0

>Более того, я слабо представляю наколенную поделку на ObjC в составе 2M+ ресурсов.

Эту поделку - может быть. А то, что С++ в вебе используется - это факт, гугл/яндекс в вашем распоряжении, ищите информацию.

anonymous
()
Ответ на: комментарий от anonymous

> Вот сделали PHP-binding к некой сишной библиотеке, которая умеет брать данные из БД, класть их в кэш, а кэш - [ин]валидировать. И получился вебпроект на чем? На PHP? На C? Или - на комбинированной технологии?

тогда и надо взять тот язык, биндинги к которому пишутся легче, а накладные расходы -- меньше. Например, Haxe/NekoVM.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.