Программирование на Си-шарп: различия между версиями

Материал из Викиверситета
Содержимое удалено Содержимое добавлено
Строка 32: Строка 32:
== Программирование игр ==
== Программирование игр ==


Для старта удобно использовать игру [[Microsoft Terrarium]]. Прочтите об этой игре. Попробуйте установить, если возникнут проблемы спрашивайте ниже.
Для старта удобно использовать игру [[Microsoft Terrarium]]. Прочтите об этой игре. Попробуйте установить и запустить, если возникнут проблемы спрашивайте ниже.

=== Проблемы при установке/запуске ===



=== Проблемы при установке ===





Версия от 17:09, 10 февраля 2010

Эта статья — часть материалов: кафедры Программирование

Создание консольного приложения

Прежде чем начать изучать язык нужно, проинсталлировать среду и убедится, что она работает на вашем компьютере. По традиции это начинается с написания программы «Hello, World!»:

  1. Прочитайте статью в Википедии об этом языке программирования: w:C Sharp.
  2. Скачайте и установите бесплатную среду программирования на Си-шарп Microsoft Visual C# 2008 Express Edition с официального сайта Майкрософт: [1]. Можно попробовать найти в своей локальной сети файл, содержащий в названии «VS2008Express».
    Подробная инструкция: В зелёном квадрате выберите Russian и нажмите Download; скачается файл vcssetup.exe (2,7 Мбайт); запустите его на своём компьютере; начнётся загрузка компонентов Microsoft Visual C# 2008 Express Edition (~80 Мбайт), а затем произойдет установка этих компонентов.
  3. Прочитайте Практическое руководство. Создание консольного приложения C# и создайте консольное приложение.

Выбор предметной задачи

Программирование само по себе не представляет особого интереса. С помощью программирования реализуются различные предметные задачи. От выбора той или иной задачи зависит на чем нужно будет сконцентрироваться в первую очередь. Условно задачи можно разделить на 4 вида:

  1. Программы обработки данных (как правило научные вычисления)
  2. Программы требующие пользовательский интерфейс (т.н. офисные приложения)
  3. Программы требующие графический интерфейс (как правило компьютерные игры или программы моделирования)
  4. Веб-программирование (в данном курсе оно не рассматривается )

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

Ваши ответы

ставьте # и отвечайте в свободном формате. Дискуссии так же поощряются, но оффтоп будет удаляться.

  1. Я тяготею скорее к номеру 3 (игры), однако с графикой и рисунками вообще не дружу. Пока можно попробовать написать текстовый квест. Насколько я понимаю, передо мной стоят три основные задачи:
    • Прописать класс игрока
    • Прописать локации
    • Прописать их взаимодействие
    Я примерно себе представляю, как должен выглядеть класс, однако на C# (как и на Delphi) я классов ещё не писал. Смутно представляю, что такое private, public, protected и зачем они нужны (в питоне этого нет). Когда я пробовал прописывать локации на Delphi, я использовал переменную, отвечающую за то, на какую локацию надо переходить, а сами локации прописывал в функции button_click, используя if. Наверняка есть более простой способ. Ну вот, как-то так... Freelancer Alex 14:50, 10 февраля 2010 (UTC)
  2. ?

Программирование игр

Для старта удобно использовать игру Microsoft Terrarium. Прочтите об этой игре. Попробуйте установить и запустить, если возникнут проблемы спрашивайте ниже.

Проблемы при установке/запуске

Создание растения

Чтобы запустить в террариум существо нужно создать динамически размещаемую библиотеку (.dll). По сути она мало чем отличается от .exe файла. Разница в том, что пользователь ее не запускает, и в ней содержится функции используемые другой программой.

Открываем Visual Stidio и создаем новый проект, выбирая Class Library (по умолчанию создаться заготовка файла - удаляем). Называем проект Food1. Добавляем новый файл Food.cs (снова по умолчанию там заготовка - стираем). Помещаем туда следующий текст:

using System;
using System.IO;
using OrganismBase;
[assembly: AuthorInformationAttribute("Vasa Pupkin", "pupkin@mail.ru")] // Информация об авторе
// Название класса существа
[assembly: OrganismClass("Food1")]
// Энергетическая емкость существа
[MaximumEnergyPoints(10)] 
// Размер взрослой особи
[MatureSize(26)] 
// Радиус разброса семян растения
[SeedSpreadDistanceAttribute(100)] 
public class Food1 : Plant 
{
	public override void SerializePlant(MemoryStream m) 
	{ }
	public override void DeserializePlant(MemoryStream m) 
	{ }
}

Сохраняем проект.

Теперь нужно подключить библиотеку из террариума. В директории инсталляции ищем файл OrganismBase.dll . Копируем его в директорию созданного проекта, лучше создать поддерикторию например, External. В проекте в окне справа ищем References, по правой кнопки мыши вызываем пункт Add Reference .., закладка Browse в которой показываем где находится OrganismBase.dll.

Жмем F6 и компилируем.

Создание приложений Windows Forms