Вам это будет интересно!

  • Вопрос для программистов! Школьники лесом

  • Помогите избавиться от японской клавиатуры. Сын чего-то нажал на планшете и все



  • Модель, абстракция

    Итак, спецификация (функция программы) меняется. А что же сохраняется (инвариантным)?
    Ответ: предметная область является достаточно стабильной. Сомнительно, что заказчик
    захочет из программы для бухгалтерии сделать программу для управления авиалайнером,
    не так ли?

    Что такое предметная область? Набор объектов, связанных отношениями. Модель
    рассматривает статические и динамические аспекты системы, в более программистских
    терминах — описывает строение и поведение. Все это смахивает на определение
    типа данных: множество допустимых значений и множество допустимых преобразований.
    Отсюда вывод — типы данных предназначены для реализации различного рода
    моделей.

    Есть люди, которые говорят, что программистам не нужна математика. Не верь им,
    мой читатель! Последние несколько сотен лет именно математику использовали для
    моделирования. С другой стороны, для общения с заказчиком нужны способности,
    которые малость отличаются от математических — тонкое знание
    психологии здесь не повредит.

    Можно посмотреть на эволюцию языков программирования. Fortran предоставлял
    средства для описания вычислений, встроенный небогатый набор базовых типов
    и ничего для определения пользовательских типов данных (ну если только
    массивы.)

    Pascal был знаменит своей богатой системой типов. Большие возможности
    для определения программистом структур данных плюс пользовательские процедуры
    и функции.

    Позже появились модульные языки. Наиболее известные из них —
    Modula-2 и Ada. Они позволяли определять типы данных в отдельных модулях,
    открывая клиентам лишь их интерфейс.

    Уровень языков программирования и проблема универсальных языков

    Когда-то (в 60–70-е года) некоторые люди хотели создать универсальный
    язык программирования. Это хорошо согласуется с верой многих программистов,
    неугасшей и поныне, в панацею от всех бед, в так называемые "серебряные пули".

    Несколько лет назад я задумался, почему мне нравятся определенные книгм по
    программирования, а другие, "попсовые", — нет. Плохие книги заливаются
    хвалебной одой описываемому языку или среде программирования. Авторы интересных
    книг описывают недостатки, границы области применимости средства, задают вопросы,
    на которые нет однозначного ответа, рассказывают о проблемах —
    заставляют задуматься, поразмышлять.

    ...Ну так вот, знаменитыми представителями языковой гигиантомании были
    Algol-68 и PL/I (позже Ada и C++, тест ниже верен и для них, но с
    некоторыми изменениями). Эти языки пытались включить средства для разработчиков
    программ на все случаи жизни, всевозможных видов программ и предметных
    областей. Пользователи были рады этому, и даже требовали еще больше возможностей.
    Однако Algol-68 и PL/I были побиты примитивным по сравнению с ними языком C.
    Странно, да?

    Какой язык хороший? На котором легче программировать. Программирование
    в контесте языков программирования мы будем трактовать как перевод задачи
    с естественного языка на машинный.

    язык природы
    естественный язык
    графический язык
    формальный язык
    язык программирования

    Специализированный язык программирования (наприме, HTML) —
    просто сказка в данном случае. Часто ими могут пользоваться даже конечные
    пользователи. Однако для общецелевых языков программирования встает вопрос:
    как приблизить язык программирования к языку прдметной области? Даже
    банальные (!) пользовательские процедуры служат этой цели; позволяют
    расширить язык и программировать в терминах предметной области.

    В начале предметной областью была вычислительная математика. Fortran
    подходил для нее практически идеально. Потом компьютеры стали использовать
    для экономических задач. Для них был создан Cobol. Но опять появились
    новые области и новые горизонты. Языки-гиганты пытались включить средства
    для всего спектра задач. Но новые задачи появляются каждодневно и разработчики
    языков программирования не могут за ними угнаться.

    В связи с этим общецелевые языки программирования должны быть простыми
    (легко изучить и держать в голове) и расширяемыми. Позволять пользователям
    описывать новые процедуры, структуры данных, типы данных и подобное. Это
    позволит адаптировать их для новых задач.

















































    Вам это будет интересно!

  • Вопрос для программистов! Школьники лесом

  • Помогите избавиться от японской клавиатуры. Сын чего-то нажал на планшете и все




  • Последние новости


    Пробковые утеплители

    Одним из высокоэффективных современных утепляющих материалов считаются плиты, изготовленные из измельченной коры пробкового дуба. Среди их главных достоинств следует назвать небольшой вес, твердость, прочность и устойчивость к гниению и образованию плесени при воздействии влаги. Пробковые теплоизолирующие материалы не повреждаются грызунами и не разрушаются...
    Читать далее »

    Приложение

    Утепление окна стекловолокном – обязательное условие, при котором значительно снизятся теплопотери. Теплоизоляция кирпичного дома плитами пенополистирола – надежный способ сделать жилище теплым и комфортным. Как сделать это правильно, показано на рис. 50. ...
    Читать далее »

    Пенополистирольные утеплители

    В последнее время на строительном рынке особенно высоким спросом пользуется теплоизолирующий материал URSA XPS. Его выпускают в форме жестких плит, размер которых составляет 1,25 × 0,6 м. Сырьем для производства данного материала является экструдированный пенополистирол, обладающий структурой с закрытыми ячейками. URSA XPS – это утеплитель, главными свойствами которого являются устойчивость к воздействию влаги и высока...
    Читать далее »

    Торфяные утеплители

    Для повышения теплоизоляционных характеристик ограждающих конструкционных элементов нередко используют торфоизоляционные плиты. Их производят на основе плохо разложившегося торфа, который отличается волокнистой структурой. В процессе обработки сырье формуют и выдерживают в условиях высокой температуры. Плотность торфоизоляционных плит составляет от 170 до 260 кг/м3, а коэффициент теплопроводности равен 0,06 Вт/(м°С)...
    Читать далее »

    Теория теплопередачи - основа строительства

    Современные физики говорят о 3 явлениях, выражающих теплопередачу, – теплопроводности, излучении и конвекции. Каждое из них обладает собственными характеристиками. Так, при определении свойств однородных твердых тел говорят о теплопроводности. Ее суть заключается в способности одного объекта передавать тепло другому при соприкосновении либо посредством промежуточного проводника (рис. 3). ...
    Читать далее »

    Древесно-стружечные теплоизолирующие материалы

    Одним из наиболее распространенных в настоящее время древесно стружечных утеплителей является фибролит. Его получают путем смешивания древесной стружки, портландцемента и воды. Древесная стружка, или древесная шерсть, при этом должна состоять из лент длиной не менее 50 см. В некоторых случаях портландцемент нередко заменяют магнезиальным вяжущим компонентом. Перед технологической обработкой древесную стружку, вы...
    Читать далее »

    Стеклянные утепляющие материалы

    Технология изготовления стекловаты во многом сходна с методом производства минеральной ваты. В качестве основного сырья выступают мел либо известняк, кварцевый песок и сульфат натрия либо сода. Кроме того, для получения этого утеплителя могут использоваться и остаточные продукты стекольной промышленности. Стеклянная вата состоит из тончайших волокон, которые получают путем вытягивания из предварительно расплавле...
    Читать далее »