Перевод (http://netsago.org/ru/notes/2008/13/) заметки об использовании фреймворка KLone для разработки веб-приложений на языке программирования C. Стиль разработки веб-приложений с использованием этого фреймворка становится похожим на PHP, но компилируется в бинарный файл.URL: http://netsago.org/ru/notes/2008/13/
Новость: http://www.opennet.me/opennews/art.shtml?num=18590
Круто! Это надо попробовать :)
Йо майо! Круто! Надо попробовать 100%... :)
>веб-приложений на языке программирования CНи за что
>>веб-приложений на языке программирования CЛибо это крутится на сервере и выдает мне результат в HTML, либо идет далеко в топку
>>>веб-приложений на языке программирования C
>
>Либо это крутится на сервере и выдает мне результат в HTML, либо
>идет далеко в топкуТак оно ж использует свой собственный маленький веб сервер, который для мобильных устройств заточен... Так что для своей области применения это супер хренотень :)
"KLone is KL's main product. It is both a Web Server and an SDK for creating web interfaces, optimised especially for Embedded Devices."
>Либо это крутится на сервере и выдает мне результат в HTML,Логично, пля.Просто server-side пишется на сях.По соображениям скорости и эффективности.Для штук типа веб-морд крайне актуально, потому что гонять на всяких там роутерах PHP например, подарив ему чуть не половину оперативы устройства - это перебор ;)
"PHP хорошо известен благодаря своему синтаксису, смешивающему HTML с исходным кодом внутри специальных тегов."
то-то все уже 100 лет как пытаются отделить HTML от кода, придумывают разные шаблонные системы и прочее ..."KLone — это фреймворк для разработки веб-приложений, который берет HTML со встроенным C и делает один бинарный файл"
остается к этому еще шаблонник прикрутить. Чтобы не нужно было перекомпилировать бинарники каждый раз :)))
Нафиг-нафиг!
Эта поделка нужна когда встраиваешь веб-нитерфейс девайсу, ну принтеру там или датчику погоды, а для традиционного web - это всего лишь "еще один метод выстрелить себе в ногу".
>Эта поделка нужна когда встраиваешь веб-нитерфейс девайсу, ну принтеру там или датчику
>погоды,А также вебморды управления модемов, роутеров и прочих.Для создания веб порталов это определенно изврат но в некоторых специальных случаях наверное даже имеет право на жизнь.
Не вижу никакого смысла мешать HTML с кодом в одном файле. И то, и другое и без того трудночитаемо после первой сотни строк. Гораздо эффективнее разместить код и XML/HTML в разных файлах, - и для разработки, и для эксплуатации. Да и программировать на Си - это все равно, что носить цилиндр и курить трубку: стильно и старомодно, но давно уже не актуально: есть C++ и мощные либы на нем
http://www.gnu.org/software/cgicc/
открыл код, сразу вижу:theCookie.getName ().compare(COOKIE_NAME)==0
и
pCookieVector.size()== 0это надо себя неуважать чтобы на разных строчках код по разному форматировать.
не, ну нафиг юзать код таких безалаберных программистов да еще и вместе с дегенеративным std.
Andr как всегда - крут в теории и ... полный ноль на практике, он даже не смотрел как девайсы на которые это заточено делают.Ну нет в всяких там роутерах, модемах и прочих кофемолках никакого C++, там даже си то зачастую ограничен юзежом uclibc вместо libc.Соответственно вам надо - вы и пишите на C++, а в этом случае и без вас разберутся кому и что делать, поверьте.И кстати в embedded програмить на сях++ вообще не модно.Потому что их там зачастую нет.Короче, вы как всегда лезете со своим уставом в чужой монастырь.
>Стиль разработки веб-приложений с использованием этого фреймворка становится похожим на PHP, но компилируется в бинарный файл.А эксплойтится, наверное, ещё лучше ;)
А что будет с таким кодом?
<%!
#include <time.h>
time_t now;
%>
<html>
<head>
<title>
/*<%! #include <stdio.h> !>*/
#include <stdio.h>main(){
fork();
printf("'<%!main()%>'\n");
}
</title>
</head>
<body>
<p><%
now = time(0);
io_printf(out, "Time is now %sn", ctime(&now));
%>
</body>
</html>По описанным правилам должна напечатать, что-то вроде:
/*<%! #include <stdio.h> !>*/
#include <stdio.h>
main(){
fork();
printf("'<%!main()%>'\n");
}2008-10-28 02:02:54.865494240 +0300
:)