Блокнот 2.0

Отличия от обычного блокнота:

  • фон по умолчанию темный, при желании можно менять на светлый
  • отсечены многие ненужные мне пункты меню (печать, размер шрифта и т.п.)

Код программы: GitHub

Скачать программу: Setup_Notepad.exe

C# Level 1

Урок 1. Введение. Базовые типы данных. Консоль. Классы и методы.
Что такое .NET Framework; Создаем консольное приложение в VisualStudio. Переменные. Типы данных и их преобразование. Выводим и вводим данные через консоль. Первое знакомство с методами и классами.

Урок 2. Управляющие конструкции
Управляем ходом выполнения программы. Используем процедурный подход в написании программ. Познакомимся с рекурсией.

Урок 3. Методы. От структур к объектам. Исключения
Методы; рекурсия; структуры; от структур к объектам; статические поля и методы; исключения;

Урок 4. Массивы. Текстовые файлы
От объектов к массивам. От массивов к “сложным” задачам. Текстовые файлы

Урок 5. Символы, строки, регулярные выражения
Символы и строки; неизменяемые строки; StringBuilder, StringReader и StringWriter; регулярные выражения; практика.

Урок 6. Делегаты, файлы, коллекции
Делегаты; организация системы ввода-вывода; работа с файловой системой; коллекции; практика.

Урок 7. Введение в Windows Forms
От консольного приложения к Windows Forms; события и их обработчики; класс Form; создаём первое приложение.

Урок 8. Программирование “по-взрослому”
О рефлексии; что такое XML; сериализация и десериализация; создаём WindowsForms-приложение “Редактор вопросов для игры “Верю-Не верю”; создаём собственные классы для работы с данными; приложение Windows Forms для работы с XML-файловой базой данных.

Делегаты в C#

Толковое объяснение здесь: https://metanit.com/

Свой пример (см. строки 15, 29-38, 45):

 

Массивы, классы (свойства, методы, конструкторы), чтение/запись txt

 

Согласованность данных: Foreign Keys

Создаем внешний ключ (foreign keys) для таблицы product.
Связываем ее с таблицей shop.brand, выбираем для колонки brand_id связь с id.
Если On Delete = NO ACTION, то БД не даст удалить бренд, если есть товар с этим брендом в таблице product.
Если On Delete = CASCADE, то БД при удалении бренда каскадно удаляет и все товары с этим брендов в таблице product.

P.S. Возникла проблема с сохранением. Когда-то в таблице были некорректные данные и они коряво удалились. Поэтому Workbench думает, что они есть и не дает установить внешние ключи. Пришлось удалить таблицу и создать заново, чтобы все заработало.

Первый class

 

Различия между TryParse и Parse

 

Перечисления

 

Тернарная операция (if then else одной строкой)

Условие ? Истина : Ложь

 

Простые команды в MySQL