Блог программиста

Опытный программист не только делится этим самым опытом, но и сам изучает что-то новое в сфере программирования и ИТ в целом и рассказывает об этом посетителям сайта!

Разработка сайтов на C++, плюсы и минусы

Сегодня нас стали посещать сомнения - а на правильном ли мы пути? Правильно ли это - разрабатывать сайты на C++? С таким вопросом мы обратились на форум уважаемого сайта linux.org.ru

Выкладываем некоторые самые запоминающиеся комментарии.

далее


Потомки PostModule

NewsModule - модуль новостей, BlogModule - модуль блога, BoardModule - модуль доски объявлений, GuestbookModule - модуль гостевой книги, ArticleModule - модуль статей, QuestionAnswerModule - модуль вопросов и ответов и даже ForumModule - модуль форума... Казалось бы что в них общего? Но если приглядеться, то они все очень похожи между собой и мало чем отличаются друг от друга! Даже не думая, порождаем их от общего абстрактного класса PostModule! Это быстрое и оптимальное решение, которое ускорит разработку проекта. Как будет в дальнейшем - жизнь покажет...

далее


NewsModule - новостной модуль

Модуль новостей сайта. Назовём NewsModule.

class NewsModule : public WebModule {
public:
	NewsModule(SiteManager *manager);
	virtual String generateContent(WebPage *page, HttpRequest &request);
	virtual String generateNews(WebPage *page);
	virtual String generateNewsItemView(WebPage *page, String newsId);
};

далее


StaticPageModule - модуль статических страниц

Первый модуль, который мы начнём разрабатывать, будет модуль статических страниц. Как будет работать такой модуль? Всё очень даже элементарно!

далее


WebModule - абстрактный класс модуля веб-страницы

Все модули веб-страниц будут порождены от одного базового класса WebModule. Распишем его структуру.

далее


Архитектура cjCms в графическом виде

Ранее мы описывали архитектуру cjCms. Чтобы лучше её представить - опишем в графическом виде.

далее


Сайт в ОЗУ - максимальная скорость работы!

База MySQL не является самой быстрой базой данных. Например, многие однозначно советуют использовать PostgreSQL. А что если применить другое решение - всё разместить в ОЗУ?

далее


Новая архитектура CMS

Идея CMS: cjCms должна быть универсальная, чтобы можно было писать как простенькие статические странички, так и всякие сложные порталы, магазины, конструкторы сайтов, соцсети...

далее


Возникновение сигнала SIGPIPE (ошибка EPIPE) при обращении из браузера Android устройства

Интересную проблему наблюдали прошедшую неделю! При скачивании файла 300 КБайт через браузер Android телефона, где-то после 10-15 КБайт приходила ошибка EPIPE (изредка даже ECONNRESET). Далее браузер инициировал повторное скачивание. Вначале мы грешили на наш веб-сервер. Однако, позже выяснилось, что это проблема сотового телефона Huawei 4C Honor.

далее


cjCms - CMS на языке C++

Почти две недели не работал сайт - велись работы по созданию cjCms и переводу под неё нашего сайта. На данный момент cjCms представляет из себя начальный вариант самой простенькой CMS. Она будет постоянно развиваться и совершенствоваться. Предполагается, что в ближайщее время на ней можно будет создавать сложные сайты, такие как магазины, соцсети, конструкторы сайтов...

далее

Наш проект: язык Cj
Cj - язык программирования (C++ & Javascript)
Новый язык программирования, для разработки веб, мобайл, десктоп-приложений, игр... подробнее...

Хотите поддержать проект?

  • Оставляйте ссылки на наш сайт
  • Станьте спонсором проекта
подробнее...

Контакты
vk.com/sitev_ru
Skype: sitev.ru
E-mail: mike@sitev.ru
github.com/sitev

Рейтинг@Mail.ru

Besucherzahler
счетчик посещений