сайт msdn там много всего полезного, а также есть автор Шилдт по-моему, руководство по с# правда там только создание консольных приложений, без использования визуальных компонентов. Используйте лучше всего Visual Studio 10 и выше, и изучайте свойства и методы визуальных компонетов - элементов, создание классов и т.п.
Сценарий - это программа, запускаемая внутри определенной программной системы и служащая для автоматизации действий этой системы по определенному сценарию.
Сценарии иногда называют скрипты.
Сценарий не имеет прямого доступа к ресурсам компьютера и действует через объекты другой системы, поэтому сценарий более безопасен чем обычная программа - сбой в сценарии не вызовет остановки всей системы или компьютера.
Сценарии позволяют легко писать программы для работы больших программных систем, работая в основном с объектами самой системы, - браузеров, офисных программ, командных интерпретаторов и т.д.
Пример:
Чтобы записать информацию в ячейку таблицы из файла .xls (для excel) надо запрограммировать обработку структуры файла, а если потребуется и новая версия, например .xlsx, то нужно будет программировать и обработку новой структуры файла, а для скрипта достаточно указать вкладку, номер строки и столбца ячейки, что гораздо удобнее и не требует таких усилий, как создание обычной программы.
При вызове скрипта все действия по модификации файла выполнит сама программа (в приведенном примере excel)
Так в чем проблема? Учить программирование никогда не поздно. Создаем форму, пишем скрипт на JavaScript, описываем логику, обработку данных. Добавляем взаимодействие с Ajax. Красиво оформляем при помощи CSS и все готово
Если это тест - то правильный ответ - наследование, полиморфизм, инкапсуляция и абстракция.
Но на самом деле тут можно порассуждать:
- к полиморфизму по определению можно отнести работу с void* или чем-то типа union (из С++). А это явно не ООП.
- инкапсуляция - это вообще базовый механизм. Его реализуют, например, модули (поддерживаемые в самых разных парадигмах, в том числе, предшествующих ООП).
- абстракция - еще более общее понятие чем инкапсуляция. Ну например, открываешь ты файл - значит используешь абстракцию, которая предоставляется операционной системой. Не важно ООП-язык используешь или нет.
Но если вы проходите тест по курсу ООП - то правильным ответом будут все эти механизмы, в описанные тут детали мало кто погружается.
Никак.
Даже на ассемблере это сделать невозможно. Более того, только на ассемблере или C++ (с помощью встроенного ассемблера) можно написать программу, которая будет менять свой код во время выполнения. Я когда-то так делал, когда писал на ассемблере программу, в которой получились подпрограммы, отличающиеся друг от друга парой тройкой операторов. Сделал одну такую, и перед вызовом её менял коды операторов на требуемые.
При использовании языков программирования, которые не поддерживают вставки кусочков на ассемблере такое сделать невозможно. А скрипты уж явно не поддерживают такое.
Но файл программы при этом не меняется.
Дело в том, что пока программа работает, записать что-то в её файл не получается, т.к. он уже открыт. Вирусы меняют коды программ перед их запуском. Т.е., именно они и дают команду на запуск программы.
Но это можно обойти, создав другой файл. Куда будет записано изначально требуемое изменение, и при запуске программы она сначала считает этот файл, а потом уже произведёт требуемые изначально кусочки кода. Но опять опять-таки - в языке программирования требуется поддержка ассемблера.
Но можно сделать и ход конём. Тут есть два способа. Оба предполагают использование вспомогательного файла. Данных или скрипта. Простой и сложный способы:
- Простой. Изменения по условиям. Создаётся другой файл, в который записываются определённые условия (или данные), на основании которых написанная программа, скрипт, будут работать определённым способом. И те условия можно будет каждый раз изменять. Сама программа или скрипт при этом останутся неизменными.
- Сложный. Для программ - тут надо точно знать, где и что менять в файле с двоичным кодом программы. Изменение скрипта попроще, ибо он в текстовом виде хранится. Тут надо другой скрипт, который нужно будет запускать перед завершением основного с передачей вспомогательному параметров о требуемых изменений первого. После завершения первого второй на основе переданных ему параметров произведёт изменения текста основного скрипта.