Компонентный подход в программировании

       

Введение в программирование

В пятидесятые годы двадцатого века с появлением компьютеров на электронных лампах началось бурное развитие языков программирования. Компьютеры, стоившие в то время значительно дороже, чем разработка любой программы, требовали высокоэффективного кода. Такой код разрабатывался вручную на языке Ассемблер. В середине 50-х годов под руководством Джона Бэкуса для фирмы IBM был разработан алгоритмический язык программирования FORTRAN. Несмотря на то, что уже существовали разработки языков, выполняющие преобразование арифметических выражений в машинный код, создание языка FORTRAN (FORmula TRANslator), предоставляющего возможность записи алгоритма вычислений с использованием условных операторов и операторов ввода/вывода, стало точкой отсчета эры алгоритмических языков программирования.
К языку FORTRAN предъявлялись требования cоздания высокоэффективного кода. Поэтому многие конструкции языка первоначально разрабатывались с учетом архитектуры IBM 407. Успех разработки этого языка привел к тому, что производители других вычислительных систем стали создавать свои версии трансляторов. С целью некоторой возможной на тот момент унификации языка язык FORTRAN IV, разработанный в 1966 году, стал первым стандартом, именуемым FORTRAN 66.

Первые языки программирования
Трансляторы
Управляющие структуры
Определение и активация подпрограмм
Управление данными
Переменные и константы
Производные типы
Объявление структуры
Объявление производного типа
Терминология объектно-ориентированного программирования
Методы-члены класса


Статические члены класса
Механизмы наследования
Объявление переменных
Управляемый код
Механизмы наследования
Создание индексаторов
Использование делегата для вызова методов
Создание приложений на С++ в Visual Studio .NET
Архитектура "документ-отображение"
Элементы управления
Создание многостраничных диалогов
Создание формы
Иерархия классов
Проекты
Типы событий
Применение компоновок
Взаимодействие по протоколу TCP/IP

Компонентный подход в программировании

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

Программы "большие" и "маленькие"
Понятие жизненного цикла ПО
Унифицированный процесс Rational
Анализ предметной области
Качество программного обеспечения
Анализ области решений
Образцы человеческой деятельности
Данные–представление–обработка
Удобство использования программного обеспечения
Платформы Java и .NET
Наследование
Основные понятия компонентных технологий
Web-приложения
Общая архитектура Web-приложений
Развитие технологий J2EE
Задачи управления проектами

Искусство программирования на языке сценариев командной оболочки

Знание языка командной оболочки является залогом успешного решения задач администрирования системы. Даже если вы не предполагаете заниматься написанием своих сценариев. Во время загрузки Linux выполняется целый ряд сценариев из /etc/rc.d, которые настраивают конфигурацию операционной системы и запускают различные сервисы, поэтому очень важно четко понимать эти скрипты и иметь достаточно знаний, чтобы вносить в них какие либо изменения.
Язык сценариев легок в изучении, в нем не так много специфических операторов и конструкций. Синтаксис языка достаточно прост и прямолинеен, он очень напоминает команды, которые приходится вводить в командной строке. Короткие скрипты практически не нуждаются в отладке, и даже отладка больших скриптов отнимает весьма незначительное время.
Shell-скрипты очень хорошо подходят для быстрого создания прототипов сложных приложений, даже не смотря на ограниченный набор языковых конструкций и определенную "медлительность". Такая метода позволяет детально проработать структуру будущего приложения, обнаружить возможные "ловушки" и лишь затем приступить к кодированию на C, C++, Java, или Perl.

Зачем необходимо знание языка Shell?
Перевод чисел из одной системы счисления в другую
StatFieldsDoc