Играл в крестики-нолики, мелом на асфальте? Я играл, и очень много, был непревзойдённым профессионалом в своём дворе, изучил все ходы-выходы в этой программе, и замахнулся на создание искусственного интеллекта! :) Игрушка не сложная, она отлично подходит для упражнения в программировании для программиста.
Дата отправки отчёта:
4 февраля 2015 г.
Задание выполнено: за
3 час. 00 мин.
Что было сложным:
Наверное, понять логику.
Комментарии:
Очень хотелось бы больше разъяснений про мелочи вроде static или "фокус" с { get; private set; }
Static это объект который создаётся в памяти при запуске, его не надо создавать через new и он висит в памяти готовый к применению, очень сложно умудриться поймать NullReferenceException на статике, с опытом приходит, не стоит на этом зацикливаться, а когда поймёте всю суть статики не стоит применять её везде, это непроизводительно. private set означает что переменная int может изменяться только внутри своего класса методами класса в котором она находится, то есть вы например объявляете класс Counter, внутри класса public int col {get; private set;} сделать col ++ или col = 5 вы можете ТОЛЬКО внутри класса Counter вызвав например метод private void UpCount(){col++} а снаружи, в других классах при создании нового объекта Counter counter = new Counter(); вы чтобы поменять значение можете вызвать только метод couner.UpCount, либо только получить значение публичного поля, но не изменять его напрямую. Надеюсь понятно объяснил
извиняюсь, если вы создадите объект класса counter, то чтобы взывать метод UpCount вам нужно сделать его публичным, то есть не private void UpCount(){col++} а public void UpCount(){col++} ну и не только с int это можно сделать, например если это будет текстовая публичная переменная string с полямии get; private set, то написать какой-либо текст в ней вы можете только внутри класса в котором она объявлена, снаружи при использовании только доступными методами класса
Научился: Отработал работу с классами Трудности: Ничего.
Урок составлен просто отлично. Очень понимает понять логику графическое отображение логики программы.