В этой статье я попробую показать, как создать программу самому, ведь это очень просто. Многие из нас постоянно работают с программами, сложными и попроще, но многие не задумываются, а что-же на самом деле есть программа. Если описать коротко, то программа — это набор инструкций, которые отдаются компьютеру в соответствии с происходящими событиями. Событиями могут быть такие очевидные вещи как нажатие кнопок клавиатуры, перемещение мыши и нажатие ее кнопок. Также событиями, не такими очевидными для непосвященного пользователя, могут быть уведомления от от операционной системы, компьютерного железа таймера, часов, и так далее.
Не буду рассуждать на тему зачем может потребоваться писать самостоятельно программу, у каждого свои причины. Перейдем сразу к установке среды разработки и написанию минимальной программы, которая будет иметь одно окно, в котором будет одна кнопка, при нажатии на которуй программа будет закрываться.
Оглавление к статье
1 . Из чего состоит процесс создания программы
- Разработка алгоритма работы программы.
- Дизайн пользовательского интерфейса. Размеры и свойства окна программы, расположение элементов управление внутри окна (окошки, кнопочки, менюшки и другие) и так далее.
- Написание логики программы. Это именно та часть, которая реагирует на события от нажатия кнопок, события операционной системы и выводит результат своей работы на экран.
2 . Установка среды разработки
Так как большинство из нас не гениальные мальчики и девочки, родившиеся с клавиатурой в руках и не впитали языки программирования с молоком матери, нам понадобится программа более функциональная и наглядная чем блокнот. Эта программа называется интегрированной средой разработки (IDE — Integrated Development Eniroenment). Таких сред разработки много — это Microsoft Visual Studio, SharpDevelop, Netbeans, и другие. В данной статье мы будем писать программу под Windows, используя язык програмирования C#, поэтому остановим свой выбор на среде разработки SharpDevelop, которая является бесплатным продуктом с открытым исходным кодом. SharpDevelop содержит в себе все средства, которые нужны для написания полноценной программы: Средство визуального проектирования пользовательского интерфейса, автодополнение кода и многое другое.
Как создать и сменить пользователя в Windows 8, 8.1, 10
Устанавливать будем последнюю версию, которая доступна для загрузки на сайте разработчика.
Lightbox
Устанавливаем программу, думаю здесь не должно возникнуть сложностей.
После установки запускаем среду разработки.
3 . Создание программы
Нажимаем кнопку New solution, или меню File — New — Solution.
В открывшемся диалоговом окне выбираем: C# — Windows Applications — Windows Application — Название програмы — Create (Создать)
Видео #5. Учётная запись Майкрософт Windows 8
В закладке Projects открываем файл MainForm.Designer, как показано на рисунке.
В закладке Tools выбираемм элемент управления Button (Кнопка), перетаскиваем ее на форму. Теперь у yас форма содержит кнопку.
Давайте ее переименуем, и назначим ей действие — при нажатии кнопки будет закрываться программа.
Переименовуем кнопку: В окне Properties находим свойство Text, Меняем значение Button1 на Close
Назначаем обработчик события нажатия кнопки
Для этого делаем двойное нажатие на кнопке, программа автоматически создаст необходимую функцию Button1Click. Внутри этой функции пишем: this.Close();
При нажатии кнопки Close, окно программы закроется, в след за этим завершит работу и сама программа.
Сделаем что-нибудь посложнее, чем просто вывод текста на экран
В большинстве учебников для начинающих программистов первая программа выводит простое сообщение «Hello world!». Мне кажется это немного тупо, так как для того, чтоб заинтересовать начинающего программиста, нужно показать нечто большее и полезное, нежели просто окно с текстом.
Для того чтоб оценить возможности языка программирования C# и .Net Framework, давайте в нашей программе реализуем возможность выполнения простейших арифметических операций. Мне кажется это будет гораздо полезней.
Итак, давайте создадим следующие элементы интерфейса программы
- Ччетыре кнопки: «+», «-«, «*», «/»
- Три текстовых поля: два для выполнения арифметических операций и один для результата.
- Надписи (Labels)
- Кнопка закрытия окна осталась из примера, рассмотренного ранее
Добавлять элементы интерфейса программы весьма просто — перетягиваем их из панели инструментов в то место окна, где должен находиться элемент.
Обратите внимание, что имя элементов назначаются автоматически и, если не давать им осмысленные имена, и при достаточно боьшом их количестве, очень легко потеряться в хаосе, состоящем из элементов с названиями button1, button2, button3, textBox1, textBox2, textBox3 и так далее. Сразу после создания элемента, не ленитесь, давайте ему осмысленое имя — дальше, при создании обработчиков событий, имена функций будут генерироваться автоматически на основании имени элемента управления. Думаю никто не сомневается в том, что имя функции ButtonAddClick() гораздо более осмысленно, чем Button1Click()
Назначим обработчики событий нажатия кнопок
Выбераем по очереди каждую кнопку. Даблкликом создаем обработчик нажатия кнопки(Click). Если нужно добавить обработчик другого события — следует открыть вкладку События (значек в виде молнии) и там уже выбрать необходимое событие.
Пишем код обработчика
Приведу текст для операции сложения. По аналогии я думаю вы догадаетесь как сделать вычитание и другие виды действий с числами, в плоть до возведения в степень и так далее:
Проверяем работу программы
Обратите внимание, что я пока не реализовал проверку вводимого значения в текстовое поле. Если ввести в него некорректное значение — программа выдаст сообщение об ошибке, в которой сообщается, что вы пытаетесь преобразовать в числовое значение неправильную строку:
Пока все. Если есть вопросы или замечания — пишите в комментах.
Программирование (С#) для тех, кто хочет научиться, но не знает с чего начать
Это статья будет полезна людям, которые хотят получить новые навыки (писать программы), но не знают с чего начать или плохо понимают самые простые термины связанные с программированием. Людям абсолютно любого возраста и образования (достаточно среднего уровня знакомства с операционной системой Windows).
Я много лет программировал на языке С++, но мне захотелось (как хобби,а не для работы) сделать модель системы с хорошей визуализацией процесса. И тут я осознал, что надо использовать другой язык. Выбор пал на С# (читается Си Шарп ), потому что потом его удобно стыковать будет с графикой Unity . Я полез в документацию к языку и подумал: это мне легко начать программировать на новом языке, имея опыт других языков и сред разработки, а кто-то может хочет научиться, но бросает потому что просто не знает куда печатать код программы или как организовать программу, чтобы она делала то, зачем её писали. Поэтому я решил параллельно со своим обучением писать статью, в которой буду рассказывать что и как делать, видя проблемы, с которыми сталкивается новичок, изнутри.
Итак у нас есть компьютер с Windows и желание программировать. Программирование — это создание программы (чаще всего в текстовом виде). Потом эта программа выполняет то, что мы от неё хотим. Сам текст программы надо написать в редакторе.
Затем этот текст при необходимости подвергается отладке ( дебаг ) и упаковывается в файл-программу ( компиляция ). Редактор, который умеет делать отладку и компиляцию называется средой разработки ( IDE ). Я предлагаю использовать одну из самых крутых IDE (которая к тому же предоставляется бесплатно самими Microsoft) Visual Studio. Скачиваем её (версию Community, читается как комъюнити и переводится как «сообщество») с официального сайта и устанавливаем (на диске C желательно иметь около 20 Гб свободного места). Процесс установки интуитивно понятен. Ставим галочку в блоке C# и устанавливаем. Я поставил галочку ещё и в Unity, чтобы не качать и устанавливать его отдельно.
По процессу установки есть огромный кусок документации . Язык в документации переключается в левом нижнем углу, слева в колонке выбор тем, сверху в строке текущий раздел — всё в одном месте интуитивно понятно. Вообще С# имеет документацию, уроки и примеры почти на всех языках и это очень удобно, потому что на все вопросы можно найти ответы, в отличии от многих других языков программирования. Так же у языка имеется развитое комъюнити, так что типичные вопросы можно найти уже заданными кем-то на форумах просто воспользовавшись поиском Яндекса или самому задать, зарегистрировавшись на каком-то форуме по этому языку. Программирование это больше поиск способа решения, чем набор самого кода (текста программы), поэтому зачастую больше времени уходит (даже у опытного программиста) на чтение документации, поиск и изучение вариантов решения похожих задач (библиотек и шаблонов).
Пока скачивается и устанавливается расскажу чуть теории, а потом продолжим.
Основной принцип написания программ
Далее без теории всё равно не обойтись, поэтому я расскажу основной принцип написания программ. Алгоритм работы — это порядок действий сформулированный так, что не допускает домыслов или разных способов выполнения одного и тоже действия. Многие не любят конкретные примеры, но для того чтобы человек понял как работает программа следует поставить программу на место человека, тогда станет понятно отличие логики работы программы от человеческой.
Например жена хочет что-то приготовить и посылает Вас в магазин за продуктами и говорит: купи батон, молоко, если будут зелёные яблоки, то купи один килограмм, если будут красные, то сходи в магазин столько раз, сколько надо, пока не скупишь все красные яблоки.
Человек услышав такое, скорее всего увидев на полке и зелёные и красные яблоки, не купит килограмм зелёных, а скупит все красные. С точки зрения программы все команды выполняются последовательно и если сначала сказано взять килограмм зелёных яблок, то наличие красных будет проверено только после этого.
Чтобы были или зелёные или красные следует сказать » если будут зелёные яблоки, то купи один килограмм, если будут красные, то вместо покупки зелёных сходи в магазин столько раз «. Но тогда программа убедится, что зелёные яблоки есть, но отложит выполнение или отмену до тех пор пока не проверит наличие красных яблок. Эффективнее сказать сначала про красные, а потом про зелёные. На уроках информатики принято рисовать блок-схемы алгоритмов, но на практике к ним прибегают очень редко и они содержат много придуманных только что, но наглядных элементов. Нарисуем алгоритм этой задачи от жены (после дебага), используя для действий прямоугольник, для условий ромб.
WinRT — разработка приложений под Windows 8
В целом система Windows 8 рассчитана на тот же класс персональных компьютеров, что и Windows 7, то есть на машины на базе 32- или 64-разрядных микропроцессоров Intel х86. Система существует в обычном издании, называемом просто «Windows 8», и в издании «Windows 8 Pro» с дополнительными возможностями, ориентированными на квалифицированных энтузиастов и профессионалов. Как в Windows 8, так и в Windows 8 Pro могут выполняться программы двух типов:
- Настольные приложения.
- Новые приложения Windows 8, часто называемые приложениями Windows Store.
Настольные приложения представляют собой традиционные Windows-программы, которые сейчас работают под управлением Windows 7 и взаимодействуют с операционной системой через интерфейс прикладного программирования Windows, называемый Win32 API. Для запуска настольных приложений в Windows 8 включен знакомый рабочий стол Windows. Для их разработки можно использовать, например, WPF (Windows Presentation Foundation).
представляют принципиальный отход от традиционной модели Windows. Эти программы обычно выполняются в полноэкранном режиме (хотя две программы могут совместно использовать экран в режиме Snap View) и, как правило, оптимизируются для планшетов и сенсорных экранов. Эти приложения приобретаются и устанавливаются только из магазина приложений, находящегося под управлением Microsoft. (Разработчик также может развертывать и тестировать приложения непосредственно из Visual Studio.)
Для написания этих приложений был введен новый объектно-ориентированный интерфейс программирования, называемый (не путайте с Windows RT — версией Windows 8 для процессоров ARM). Внутренняя реализация Windows Runtime базируется на модели COM (Component Object Model) с предоставлением интерфейсов через файлы метаданных с расширением .winmd, находящиеся в каталоге /Windows/System32/WinMetadata. С точки зрения внешнего пользователя система в высокой степени объектно-ориентирована.
С точки зрения прикладного программиста Windows Runtime напоминает Silverlight, хотя во внутренней реализации API не является управляемым. Вероятно, для программистов Silverlight самое очевидное различие связано с пространствами имен: пространства имен Silverlight, начинающиеся с System.Windows, были заменены пространствами, начинающимися с Windows.UI.Xaml.
Большинство приложений Windows 8 состоит не только из кода, но и из разметки, будь то отраслевой стандарт HTML (HyperText Markup Language) или принятый Microsoft язык XAML (extensible Application Markup Language). В частности, преимуществам разбиения приложения на код и разметку относится возможность распределения процесса разработки между программистами и дизайнерами.
В настоящее время существуют три основных варианта программирования приложений Windows 8, каждый из которых основан на определенном языке программирования и языке разметки:
- C++ и XAML;
- C# или Visual Basic и XAML;
- JavaScript и HTML5.
Во всех трех вариантах задействуется интерфейс Windows Runtime, но он также поддерживается другим интерфейсом программирования для конкретного языка. Хотя смешанное использование нескольких языков в одном приложении невозможно, вы можете создавать библиотеки (типа Windows Runtime Component) с собственными файлами .winmd, доступные из любого языка Windows 8.
Для программистов, работающих на управляемых языках C# или Visual Basic .NET, WinRT выглядит знакомо. Приложения Windows 8, написанные на этих языках, не могут использовать Win32, COM или DirectX API с такой же простотой, как программисты С++, однако такая возможность существует.
Для программистов JavaScript среда Windows Runtime дополняется библиотекой WinJS (Windows Library for JavaScript), предоставляющей ряд функций системного уровня для приложений Windows 8.
После долгих размышлений (и душевных терзаний) я решил, что этот раздел нашего сайта должен быть почти полностью посвящен разработке приложений WinRT на C# и XAML. Меня много лет убеждали в преимуществах управляемых языков для разработки и отладки, и на мой взгляд, C# лучше всех языков подходит для Windows Runtime. Надеюсь, код C# будет достаточно понятен программистам C++ и JavaScript.
1. Основы WinRT и XAML
- Простое приложение WinRT
- Оформление текста
- Разработка с помощью кода
- Синтаксис XAML
- Ресурсы
- Векторная графика
- Растяжение графики и ViewBox
- Стили
- Привязка данных в XAML
2. Обработка событий, компоновка и элементы управления
- Маршрутизируемые события
- События изменения размера и ориентации
- Таймеры и анимации
- Элементы Border, Rectangle и Ellipse
- Элемент StackPanel
- Элемент ScrollViewer
- Элементы управления UserControl
- Элемент Canvas
- Элемент Control
- Элемент Slider
- Элемент Grid
- Настройки элемента Slider
- Кнопки
- Определение свойств зависимости
- Свойство Tag
- Элемент TextBox
- Элемент Thumb
3. MVVM и асинхронные операции
- Шаблон MVVM
- Привязки к TextBox в MVVM
- Кнопки и MVVM
- Асинхронные операции
- Файловый ввод/вывод
- Жизненный цикл приложения
- Реализация асинхронных методов
4. Всплывающие окна и строка приложения
- Контекстные меню
- Элемент Popup
- Строка приложения
- Шрифт Segoe UI Symbol
- Строка приложения для текстового редактора
- Создание редактора XAML
- Разбор XAML
5. Анимации и преобразования
- Основные принципы анимации
- Анимация свойств Double
- Анимация вложенных свойств
- Плавная анимация
- Анимации определенные в XAML
- Анимации по ключевым кадрам
- Анимация Object
- Стандартные анимации и переходы
- Преобразования
- Поворот элементов
- Сдвиг элементов
- Группы преобразований
- Масштабирование элементов
- Создание стрелочных часов
- Искажение элементов
- Математические расчеты преобразований
- Составные преобразования
- Преобразования Geometry
- Проекционные преобразования
- Трехмерные матричные преобразования
6. Шаблоны
- Шаблоны
- Шаблон данных DataTemplate
- Коллекции и интерфейсы
- Касание и выделение
- Панели и виртуализация
- Пользовательские панели
- Гистограммы
- Элемент управления FlipView
- Шаблон элемента управления ControlTemplate
- VisualStateManager
- Части шаблона
- Пользовательские элементы управления
- Шаблоны и контейнеры
7. Страницы и навигация
- Проблемы расширения экрана и масштабирования
- Режим Snap View
- Страничная навигация
- Состояние приложения
- Ускорение навигации
- Передача данных между страницами
- Стандартные шаблоны Visual Studio
- C# тест (легкий)
- .NET тест (средний)
Источник: professorweb.ru
Разработка приложений для Windows 8
Создать приложение Магазина Windows проще, чем вы думаете!
Приложения Магазина Windows представляют собой новый тип приложений, которые продаются в Магазине Windows и работают на устройствах под управлением Windows 8. Их легко установить и полностью удалить. Они работают в одном окне, которое по умолчанию занимает весь экран. Они автоматически работают с различными источниками ввода, включая сенсорный ввод, перо, мышь и клавиатуру. Вместо статичного значка они используют динамические плитки, на которых отображаются уведомления. Вы можете писать приложения Магазина Windows на самых разных языках, таких как C# и Visual Basic с XAML, C++ с XAML или DirectX и JavaScript с HTML/CSS.
Создать приложение Магазина Windows проще, чем вы думаете!
Приложения Магазина Windows представляют собой новый тип приложений, которые продаются в Магазине Windows и работают на устройствах под управлением Windows 8. Их легко установить и полностью удалить. Они работают в одном окне, которое по умолчанию занимает весь экран. Они автоматически работают с различными источниками ввода, включая сенсорный ввод, перо, мышь и клавиатуру. Вместо статичного значка они используют динамические плитки, на которых отображаются уведомления. Вы можете писать приложения Магазина Windows на самых разных языках, таких как C# и Visual Basic с XAML, C++ с XAML или DirectX и JavaScript с HTML/CSS.
Подготовка
Скачайте и установите бесплатные средства.
Майкрософт предоставляет два бесплатных средства, предназначенных для совместной работы, которые помогут вам при разработке, тестировании и развертывании приложений Магазина Windows: Microsoft Visual Studio Express 2012 для Windows 8 и Blend для Visual Studio. (Для этих средств необходима ОС Windows 8.)
Запустите Visual Studio для получения лицензии разработчика.
После установки средств запустите Visual Studio. Чтобы разрабатывать и тестировать приложения Магазина Windows, вам понадобится лицензия разработчика. Она бесплатная. При появлении приглашения Visual Studio следуйте инструкциям, чтобы получить свою лицензию.
(Лицензию разработчика можно получить, и не запуская Visual Studio. Дополнительные сведения см. в разделе Получение лицензии разработчика.)
Вам не нужно изучать новый язык, чтобы создать приложение Магазина Windows — вы можете воспользоваться теми знаниями, которые у вас уже есть.
- JavaScript с HTML/CSS
- C#, Visual Basic или C++ с XAML
- C++ с DirectX
Создание приложения
Скачайте средства разработчика, получите лицензию разработчика, выберите язык — и вы готовы к созданию своего первого приложения. Эти учебники расскажут вам, как это сделать.
- JavaScript с HTML: Создание первого приложения Магазина Windows на языке JavaScript
- C# или Visual Basic с XAML: Создание первого приложения Магазина Windows на языке C# или Visual Basic
- C++ с XAML: Создание первого приложения Магазина Windows на языке C++
- C++ с DirectX: Создание первого приложения Магазина Windows на языке DirectX
При планировании приложения Магазина Windows больше внимания уделяйте не включаемым в него компонентам, а области специализации приложения. Заблаговременное планирование различных конструктивных параметров, специальных возможностей, монетизации и продаж на глобальном рынке может сократить время разработки и упростить создание и сертификацию высококачественного приложения.
Если вы воспользуетесь руководством по взаимодействию с пользователем и шаблонами проектирования, вам будет гораздо проще спроектировать привлекательное и простое в использовании приложение.
Руководство по взаимодействию с пользователем объясняет, как спроектировать приложение, которое обеспечивает согласованное, изящное и привлекательное взаимодействие, и предлагает рекомендации по работе с конкретными компонентами оформления (например, макетом) и отдельными элементами управления (например, ListView).
Шаблоны проектирования представляют собой схемы, которые вы можете использовать для создания распространенных компонентов пользовательского интерфейса, например навигации, команд, сенсорного взаимодействия, рекламы и фирменной символики.
Планирование и проектирование приложения
- Раздел Планирование приложений Магазина Windows расскажет, как спланировать отличное приложение, приняв во внимание разные конструктивные параметры, фирменную символику, монетизацию, глобальный рынок, качество и сертификацию, а также специальные возможности.
- Раздел Требования для сертификации приложения для Windows 8 описывает критерии публикации приложения в Магазине Windows. Знание этих требований поможет вам спланировать отличное приложение.
- Раздел Шаблоны взаимодействия с пользователем поясняет, как расположить содержимое, где разместить распространенные команды, какие сенсорные жесты использовать, как встроить в приложение фирменную символику и обеспечить удобство для пользователя.
Создание пользовательского интерфейса
При создании приложения Магазина Windows вы получаете доступ к простым в использовании API, которые облегчают создание макета и представления. Вы можете проектировать пользовательский интерфейс с помощью конструктора в Microsoft Visual Studio или Blend для Visual Studio и настраивать его, непосредственно редактируя HTML или XAML.
Прочитайте эти разделы.
- JavaScript с HTML:
- Краткое руководство: определение макетов приложения расскажет вам, как с помощью HTML, CSS и JavaScript создать гибкий пользовательский интерфейс, который хорошо работает во всех состояниях представления.
- Краткое руководство: добавление элементов управления и обработка событий в HTML расскажет, как добавлять элементы управления и обрабатывать события.
- C#, Visual Basic или C++ с XAML:
- Краткое руководство: определение макетов покажет, как разработать пользовательский интерфейс, который автоматически адаптируется к разным состояниям представления.
- Краткое руководство: добавление элементов управления и обработка событий расскажет, как добавлять элементы управления и обрабатывать события.
Поиск и общий доступ для других приложений
При поддержке правильных контрактов в приложениях Магазина Windows можно осуществлять поиск по другим приложениям и даже делиться с ними содержимым. Контракты приложений дают приложениям возможность работать вместе. Они облегчают доступ к данным, которые хранятся в другом приложении или созданы им, устраняя необходимость работы с меняющимися стандартами или особыми API приложений.
Например, Windows позволяет пользователям совместно использовать содержимое в нескольких приложениях. Приложение, которое предоставляет общий доступ к содержимому, поддерживает контракт источника данных, обеспечивая соответствие определенным требованиям, а приложение, получающее такое содержимое, поддерживает контракт получателя данных, обеспечивая соответствие другому набору требований. Вам не нужно знать о конечном приложении ничего, кроме того, что оно поддерживает контракт получателя данных, — все работает автоматически.
Создание и обновление плиток
Плитка — продолжение вашего приложения, и она может предоставить намного более персонализированную и привлекательную информацию, чем традиционный значок. Используйте динамическую плитку, чтобы транслировать информацию на начальный экран, даже когда ваше приложение не запущено.
Использование устройств и датчиков
Приложения Магазина Windows могут получать доступ к нескольким типам устройств, таким как камеры и съемные носители. Кроме того, они могут получать доступ к данным с восьми датчиков, включая акселерометр, инклинометр, гирометр, компас, датчик освещения, датчик положения в пространстве и (с разрешения пользователя) датчик географического положения.
Продажа приложений
Windows 8 предлагает крупнейший единый потенциальный рынок для ваших приложений. Windows 8 и Магазин Windows позволяют миллионам покупателей по всему миру легко найти, попробовать и купить ваше приложение. Магазин Windows упрощает распространение ваших приложений, их обновление и получение дохода. Он связывает вас и ваших покупателей, предоставляя вам прямой доступ к отзывам и телеметрической информации. Мы даже помогаем вам продвигать ваши приложения.
Прежде чем размещать приложение в Магазине Windows, его нужно сертифицировать. Комплект сертификации приложений для Windows поможет вам протестировать свое приложение по многим аспектам перед его отправкой в Магазин Windows. Если ваше приложение будет отклонено, вы получите полезные отзывы и предложения, сможете быстро решить проблемы и снова отправить приложение для публикации. А благодаря информационной панели Магазина Windows вы будете точно знать, на каком этапе сертификации находится ваше приложение: начиная с выкладывания и заканчивая окончательной сертификацией и приемкой.
Организации, которым необходим непосредственный контроль над внутренним процессом распространения, могут ограничить доступ к каталогу Магазина Windows или распространять свои приложения сотрудникам напрямую, минуя Магазин Windows.
Публикация приложения в Магазине Windows
- Получение учетной записи разработчика. Лицензия разработчика позволит вам тестировать и создавать приложения, но если вы хотите продавать их в Магазине Windows, вам понадобится учетная запись разработчика.
- Использование комплекта сертификации приложений для Windows. Прежде чем опубликовать приложение в Магазине, его необходимо сертифицировать. Комплект сертификации приложений для Windows поможет вам выявить возможные проблемы перед отправкой приложения в Магазин Windows.
- Вывод приложения на рынок. Описание процесса отправки приложения.
Источник: blogs.windows.com