Автор Владимир Псарёв задал вопрос в разделе Интернет
Что такое Ядро программы? и получил лучший ответ
Ответ от Достоевский и мозжечок[гуру]
Термин этот - жаргон, но в нём есть доля истинны. В системах чуть более сложных чем notepad обычно есть какое-то количество модулей, например в проекте имеется примерно следующая схема: DB <-> Core_DB_Interface <-> Core <-> InternalInterface <-> ExternalInterface <-> UserInterface На самомо деле схема конечно сложнее, но для простоты я упростил до такой модели. Теперь смотрим что тут и как работает: 1) DB - хранилищие информации 2) Core_DB_Interface - набор хранимых процедур реализующих все внешние операции с базой данных, ни одна программа непосредственно к таблицам не обращается, только через хранимки - это обеспечивает в дальнейшем лёгкость изменнений структур таблиц и взаимоотношений при развитии проекта. В крайнем случае база данных может быть вообще полностью переделанна. Коль скоро Core_DB_Interface остаётся таким же ничего в програмном коде программ менять не потребуется. 2) Core - базовая функциональность, прошита бизнес логика. Она не должна вообще зависеть от способа хранения данных, ни от клиентской части которая визуализирует логику. Это и можно обозвать ядром программы. Функции прошитые здесь являются своего рода низкоуровневыми, что это значит на практике? Эти функции вызываются только из InternalInterface, и никогда из других модулей, приложений и т. п. , а значит: можно опустить все проверки на то что идиот пользователь ввёл какой-то мусор, опустить отлов ошибок которые могут быть связаны с "грязными данными", опустить проверку защиты и уровней доступа и т. п. Другими словами - это алгоритм решения задачи в чистом виде оптимизированный под скорость выполнения. Во вторых процедуры этого модуля элементарны по сути, они не собраны в сложные бизнес процессы. Например если у нас есть операция "зарегистрировать пользователя", то это включает в себя кучу более простых операций, таких как - проверить существование такого пользователя, записать его профиль в базу данных, добавить его в логи событий и т. п. В ядре как таковом эти операции реализованы в ввиде отдельных элементов 3) InternalInterface - набор функций которые дают доступ ядру программы. Они чуть более "высокоуровневые", т. е. реализуют "цепочки" вызовов ядерных функций для реализации наиболее типичных бизнес-алгоритмов. В данном случае они тоже предполагают что пришедшие данные "чистые и правильные". По сути это тоже часть ядра, хотя и чуть более высокого уровня. Клиентские части программы и другие программы к этому програмному уровню доступа не имеют. 4) ExternalInterface - набор функций для вызова методов InternalInterface. Практически они один в один дублируют методы InternalInterface и их вызывают. Но они обрастают массой проверок на то что данные правильные, на то что имеется необходимый уровень допуска для получения этих данных и т. п. На этом же уровне и отлавливаются большинство ошибок системы. Более низкие уровни ошибок генерировать обычно не должны. Здесь же ведуться и логи того кто и чего делал. Именно эти функции и вызываются всеми остальными модулями, программами, и т. д. входящими в систему. 5) UserInterface - непосредственно контролы на форме или на веб-странице или что-то что работает непосредственно с пользователем-человеком и обеспечивает только эргономичность и удобство работы + красоты.. . Никакой бизнес-функциональности здесь нет. Если клиентом выступает не человек, а программа, то она вообще не использует этот уровень напрямую подключаясь к ExternalInterface
это основной блок программы. Основой которой является главные задачи программы.
бред. примерно такое же как сердце полена
История создания Linux? Кто сздатель ядра Linux?
25 августа 1991 г. финский студент Линус Торвальдс разместил в Internet скромное сообщение о том,
подробнее...
Что такое Чудо?? ? Дайте определение этому понятию...
Слово чудо, как и все русские непроизводные слова в русском языке не имеет этимологии. И чтобы
подробнее...
Что такое ядро процессора?
Лишние 2 ядра - это, фактически, два лишних процессора. Ядро процессора - это центральный его
подробнее...
Не подскажете программу для оптимизации работы компьютера?
Советую программку поставить - легка в использовании и по простому всё.
#yaimg258198#
подробнее...
Для чего нужна программа WinDjView?
WinDjView - быстрая и компактная бесплатная программа для просмотра файлов формате DjVu с вкладками
подробнее...
Помогите с физикой, школьная программа.
13.В 1932 г. английский физик Джеймс Чедвик открыл частицы с нулевым электрическим зарядом и
подробнее...
Какой процессор лучше? Какой процессор лучше с 4 ядрами и 2500 Мгц или 2 ядра, но 3000 Мгц?
Процессоры отличаются друг от друга количеством вычислительных ядер, частотой, размером кэш-памяти
подробнее...
У меня ноутбук постоянно вырубается, незнаю с чем это связано, сижу например час, он нагревается, потом БАХ и вырубился
Наиболее распространенная причина перегрева ноутбука – это забитая пылью решетка радиатора системы
подробнее...
Как подписать документ ЭЦП в программе Office Wortd 2007? Не могу найти куда тыкать. Очень надо. ) Всем заранее спасибо.
Я, конечно, могу ошибаться, но ЭЦП ставится в своей программе и в других её поставить не возможно.
подробнее...
что такое корневой каталог?
Root directory (корневой каталог)
- основной каталог на жестком или гибком диске. Имеет
подробнее...
Помогите, позязя..) ) Нужен небольшой доклад о каких-либо бактериях... (биология 6 класс).
БАКТЕРИИ
БАКТЕРИИ, простые одноклеточные микроскопические организмы, принадлежащие к царству
подробнее...
как отключить активные отладчики в win7
Как отключить отладчик
В определенных ситуациях может возникнуть необходимость в
подробнее...
Этимология слова Чудо
Слово чудо, как и все русские непроизводные слова в русском языке не имеет этимологии. И чтобы
подробнее...
Какие художники входили в объединения "Алая Роза" и "Голубая Роза"?
Русский символизм как движение сформировался в Саратове. В конце 1890-х годов Павел Кузнецов и Петр
подробнее...
Максимальная скорость BMW 760i F01 БЕЗ ОГРАНИЧИТЕЛЯ!
Последним примером является разработка компании, подтверждающая выдающиеся характеристики - 760i
подробнее...