Си шарп с нуля

Формула программиста
основатель — Волосатов Евгений Витольдович




kalobyte
  • Звание: Микробитер
  • Накопленный опыт: 46 часов
  • Не состоит в «Клубе формулистов»
  • Последний визит: 2017-05-24 19:52:34

Видеокурсы

Дата активности Видеокурс Прогресс
2017-05-23 soft3 Теория ООП все 39 100 %
2017-04-21 soft0 Демо софт все 7 100 %
Итого: все 46 100 %

Консольные задачи

Этот формулист не решил ни одной консольной задачи
Сохранить страницу:

13540. Алексей Малышев
Алексей Малышев
ответить
→  kalobyte  # Теория ООП / Интерфейс. ФИНАЛЬНЫЙ УРОК. / 2017-05-24 21:29

Поздравляю с прохождением курса


10588. kalobyte
kalobyte
ответить
→  Иван Воронин   / 2017-05-24 08:16

Про чтение книг за кадром верно подмечено. Это напоминает мне уроки в школе. Учитель тупо по книжке что-то читает и от этого спать хочется. Конечно это больше к системе обучения претензия, учителя не могут выдумывать свои программы или отходить от учебников.

А ролик хорош, мне он сразу запомнился простотой объяснения, как сделать подобие жизни.


10588. kalobyte
kalobyte
ответить
→  Tekashnik   / 2017-05-24 08:11

Я думал никто не читает столько букв.


7119. Новопашин Владимир
Новопашин Владимир
ответить
→  kalobyte  # Теория ООП / Интерфейс. ФИНАЛЬНЫЙ УРОК. / 2017-05-24 06:12

С финалом!


10558. Иван Воронин
Иван Воронин
ответить
→  kalobyte  # Теория ООП / Интерфейс. VIP. Тяжёлая дружба кругов и квадратов. / 2017-05-24 03:18

Потому что тут усиленная практика, поэтому и желание есть кодить за Игромистром, а другие только книги читают за кадром, могли просто mp3 выложить, чтобы люди на ночь слушали. Так что не удивительно, что этот курс понравился и увлёк не только слушать и смотреть, но и самому кодить.


10558. Иван Воронин
Иван Воронин
ответить
→  kalobyte  # Теория ООП / Интерфейс. ФИНАЛЬНЫЙ УРОК. / 2017-05-24 03:12

Отличное видео, посмотрел с удовольствием, так как уже реализовывал игру Жизнь не один раз на этом проекте, даже на поле игры сапёр, скинул это видео себе в коллекцию, надо будет реализовать аналогичную версию, интересная штука =)


8275. Tekashnik
Tekashnik
ответить
→  kalobyte  # Теория ООП / Интерфейс. VIP. Тяжёлая дружба кругов и квадратов. / 2017-05-24 00:26

Целое сочинение на тему: "Как я полюбил ООП")))


1947. Denis
Denis
ответить
→  kalobyte  # Теория ООП / Интерфейс. VIP. Пересечение прямоугольников. / 2017-05-23 20:43

Можно считать, что одни над другими. Одни на земле, другие на небе =) Было бы 3Д, было бы понятнее =)


10588. kalobyte
kalobyte
ответить
→  Александр  # Теория ООП / Интерфейс. ФИНАЛЬНЫЙ УРОК. / 2017-05-23 19:29

Это не мое видео, я его приложил к моему каменту про творца.


3922. Александр
Александр
ответить
→  kalobyte  # Теория ООП / Интерфейс. ФИНАЛЬНЫЙ УРОК. / 2017-05-23 16:51

Молодец, kalobyte! Хорошо поработал и видео отличное сделал! С финалом!


13556. Колупаев Сергей
Колупаев Сергей
ответить
→  kalobyte  # Теория ООП / Интерфейс. ФИНАЛЬНЫЙ УРОК. / 2017-05-23 16:43

Поздравляю с финалом!


1. Евгений Волосатов
Евгений Волосатов
ответить
→  kalobyte   / 2017-05-23 15:33

Продлено


10558. Иван Воронин
Иван Воронин
ответить
→  kalobyte  # Теория ООП / Интерфейс. Создаём новую игру. / 2017-05-23 09:33

В программировании больше нужна логика. Математика на втором месте.


10558. Иван Воронин
Иван Воронин
ответить
→  kalobyte  # Теория ООП / Интерфейс. Кружочки гоняются друг за другом. / 2017-05-23 08:59

Не вижу тут никакой крутой математики, программа 3 класса. По поводу sx и sy - это смещение координат круга относительно текущих его координат.


10558. Иван Воронин
Иван Воронин
ответить
→  kalobyte   / 2017-05-23 08:55

Лучше один раз показать, чем сто раз прочитать!!! =)


10588. kalobyte
kalobyte
ответить
→  Иван Воронин   / 2017-05-23 08:53

У нас тоже в школе были пентиумы, но урок информатики был только у малолеток. Так что нормальный компутер я увидел только в 99м.
У меня еще была книжка тогда, насколько я помню, у спектрума был какой-то диапазон памяти типа буфер принтера или что-то такое, куда загружались шрифты или символы пользователя. Я тогда мало понимал, что это такое. В книжке были наборы цифр от 0 до 255 и был массив. А откуда эти цифры берутся - никто нигде не написал. Это  я уже потом много лет спустя разбирался с индикатором hd44780 и там в даташите был как раз показан весь принцип создания собственных символов в озу и пзу знакогенератора.

Так что толстая книга про написание игр на спектруме оказалась макулатурой. С тех пор я стал все меньше и меньше читать книг, а с приходом ютуба и совсем забил на них.


10558. Иван Воронин
Иван Воронин
ответить
→  kalobyte  # Теория ООП / Интерфейс. Кружок готов к игре! / 2017-05-23 08:51

Да, во всех 2D играх квадратные спрайты.


10558. Иван Воронин
Иван Воронин
ответить
→  kalobyte  # Теория ООП / Интерфейс. Кружок хочет играть. / 2017-05-23 08:41

Я когда на спектруме изучал этот же вопрос, создал необходимые спрайты через редактор шрифта, подгружал его в программу и рисовали ими объекты, получалось как надо. На бейсике всё медленее да, но работу по информатике надо было гдето делать, а у меня был только спекки, а на информатике уже были пентиумы 100, там писали на QBasic, вот и занимался портированием туда-сюда =))))))


1. Евгений Волосатов
Евгений Волосатов
ответить
→  kalobyte  # Теория ООП / Интерфейс. Кружочки гоняются друг за другом. / 2017-05-22 17:35

Здесь нет никакого матана :-) это элементарная школьная геометрия.
Sqrt без дополнительных скобок вычисляет квадратный корень только первой разности.  Скорее всего там получилось отрицательное число, из-за чего и вышло исключение


1. Евгений Волосатов
Евгений Волосатов
ответить
→  kalobyte  # Теория ООП / Интерфейс. Кружок готов к игре! / 2017-05-22 17:33

Вот именно поэтому я так долго думал про бильярдные шары, какова формула их столкновения. А Интернета тогда не было :-)


1. Евгений Волосатов
Евгений Волосатов
ответить
→  kalobyte  # Теория ООП / Интерфейс. Кружок хочет играть. / 2017-05-22 17:27

Какие замечательные воспоминания из прошлого века :-) я в школьное время не один вечер думал, чтобы вывести формулы для столкновения Шаров, хотел написать бильярд, но тех знаний так и не хватило, чтобы сделать это.


7119. Новопашин Владимир
Новопашин Владимир
ответить

10558. Иван Воронин
Иван Воронин
ответить
→  kalobyte  # Теория ООП / Интерфейс. Площадка для игры. / 2017-05-19 00:49

Тут тоже можно передавать, если надо.


10588. kalobyte
kalobyte
ответить
→  Евгений Волосатов   / 2017-05-18 23:26

А я его как раз и посмотрел. Не всегда доходит с первого раза.
Но я понял, что рандом надо тупо статично вызывать.


1. Евгений Волосатов
Евгений Волосатов
ответить
→  kalobyte  # Теория ООП / Интерфейс. Площадка для игры. / 2017-05-18 15:46

Посмотри это видео:
https://www.youtube.com/watch?v=a03X9gmDmto


7119. Новопашин Владимир
Новопашин Владимир
ответить
→  kalobyte  # Теория ООП / Интерфейс. Алгоритм игры. / 2017-05-18 07:01

Кстати с исправлением ошибок - да ты ошибку исправил, но пока не перекомпилируешь будет гореть синим.


7119. Новопашин Владимир
Новопашин Владимир
ответить
→  kalobyte  # Теория ООП / Интерфейс. Правила игры. / 2017-05-18 06:58

Насчет кириллицы согласен.


10558. Иван Воронин
Иван Воронин
ответить
→  kalobyte  # Теория ООП / Перемещение Снеговиков / 2017-05-18 02:21

Чтобы понять смысл кода, надо смотреть на реализацию в целом, а не конкретные пары строк.


10558. Иван Воронин
Иван Воронин
ответить
→  kalobyte  # Теория ООП / Перемещение других фигур / 2017-05-18 02:19

Этим уроки на данном проекте и радуют, что вначале городим огороды и изобретаем велосипеды, а потом плавным движением руки код превращается...


1. Евгений Волосатов
Евгений Волосатов
ответить
→  kalobyte  # Теория ООП / ПОЛУФИНАЛЬНЫЙ УРОК. / 2017-05-17 15:54

Спасибо за отзыв!


1. Евгений Волосатов
Евгений Волосатов
ответить
→  kalobyte  # Теория ООП / Перемещение Снеговиков / 2017-05-17 15:52

Функции называются одинаково, какая именно будет вызываться, зависит от типа объекта


1. Евгений Волосатов
Евгений Волосатов
ответить
→  kalobyte  # Теория ООП / Перемещение других фигур / 2017-05-17 15:52

Все гениальное – просто :-)


1. Евгений Волосатов
Евгений Волосатов
ответить
→  kalobyte  # Теория ООП / Перемещение круга / 2017-05-17 15:22

Процентный фактор мотивирует. :)


1947. Denis
Denis
ответить
→  kalobyte  # Теория ООП / ПОЛУФИНАЛЬНЫЙ УРОК. / 2017-05-17 13:46

this указывает на текущий экземпляр класса, в котором он употребляется (насколько я это понимаю). Используется, например для того, чтобы отличить переменные класса, от переменных функции. Например у тебя есть в классе переменные width, height. В конструкторе класса ты тоже можешь указать как входящие параметры такие переменные. Так вот, чтобы исключить двусмыслие, ты явно указываешь, что нужно присвоить переменной this.width значение входящей переменной width.


13556. Колупаев Сергей
Колупаев Сергей
ответить
→  kalobyte  # Теория ООП / ПОЛУФИНАЛЬНЫЙ УРОК. / 2017-05-17 11:09

Ключевое слово this указывает на конкретный элемент, например this.BackColor.


10558. Иван Воронин
Иван Воронин
ответить
→  kalobyte  # Теория ООП / Перемещение круга / 2017-05-17 01:04

Молодец, в этом и сила данного проекта, что упор на практику и эксперименты для наглядности. Но никто не мешает проводить дополнительные эксперименты если есть какие либо сомнения, предоставляя свою версию на скриншотах и/или видео.


3922. Александр
Александр
ответить
→  kalobyte   / 2017-05-16 09:43

Потому, что переменные называют в зависимости от того, для чего эта переменная создана, name это - name, counter - counter. Так принято, что бы не запутаться, наверно...


7119. Новопашин Владимир
Новопашин Владимир
ответить
→  kalobyte   / 2017-05-16 09:12

И зачем тут нужен this?


10588. kalobyte
kalobyte
ответить
→  Александр   / 2017-05-16 09:00

Ну да, я про подчеркивание в курсе. А зачем тогда называть переменные в классе и переменные в аргументах одинаково?


10588. kalobyte
kalobyte
ответить
→  Новопашин Владимир   / 2017-05-16 08:57

А что мешает определить переменную int aaa и потом сделать переменную ббб аргументом?

class aaa
{

int aaa

foo(int bbb)
{
aaa = bbb
}

}
Так не будет работать что ли?


3922. Александр
Александр
ответить
→  kalobyte  # Теория ООП / Мощь полиморфизма / 2017-05-16 08:26

Это как в том анекдоте, когда девушка программиста спрашивает у своего программиста, какие три самые важные вещи в жизни, по его мнению. Как вы думаете, что он ей ответил? Наследование, инкапсуляция, полиморфизм!


3922. Александр
Александр
ответить
→  kalobyte  # Теория ООП / Переезд graph в базовый класс / 2017-05-16 08:21

Ничего, kalobyte! Постепенно привыкнешь! Нужно писать this там, где происходит обращение к членам того класса, в котором ты находишься. Но, в большинстве случаев, this можно не писать, когда имя члена класса ни с чем больше нельзя спутать. Например, можно написать this.name = name; Но в C# принято, например, задавать имена приватных полей с нижним подчёркиванием, что бы внутри методов не писать this при присваивании значений _name=name;


7119. Новопашин Владимир
Новопашин Владимир
ответить
→  kalobyte  # Теория ООП / Мощь полиморфизма / 2017-05-16 07:50

Смотрю Виталик Кличко крепко прописался в нашей жизни.


7119. Новопашин Владимир
Новопашин Владимир
ответить
→  kalobyte  # Теория ООП / Переезд graph в базовый класс / 2017-05-16 07:49

this надо писать, когда неоднозначная ситуация с переменными в классе, например в классе есть переменная типа int count и на вход в функцию поступает переменная типа int count, а мы хотим получить значение от переменной, которая поступила на вход для той, которая есть в классе. Делаем this.count = count;


1. Евгений Волосатов
Евгений Волосатов
ответить
→  kalobyte  # Теория ООП / Рисователь снеговиков / 2017-05-15 10:32

Очень рад твоим успехам, ты молодец!


5027. Руслан
Руслан
ответить
→  kalobyte  # Теория ООП / Фигуральный базовый класс / 2017-05-15 10:08

GetType() вернет объект типа Type. Тогда по идее ты должен в case делать сравнение с typeoff(Line). Но в case ты можешь сравнивать только константные значения, а typeoff(Line) будет вычисляться динамически, во время выполнения. Поэтому в switch лучше указать shape.GetType().Name, что тебе вернет имя класса, а оно константное и соответственно в case "Line".


8275. Tekashnik
Tekashnik
ответить
→  kalobyte  # Теория ООП / Переезд метода Draw / 2017-05-15 04:57

Мы все рады, что тебе нравится))


3922. Александр
Александр
ответить
→  kalobyte  # Теория ООП / Фигуральный базовый класс / 2017-05-15 00:09

Может попробовать TypeCode, как здесь: http://stackoverflow.com/questions/7542793/how-to-use-switch-case-on-a-type


10558. Иван Воронин
Иван Воронин
ответить
→  kalobyte  # Теория ООП / Цветные карандаши / 2017-05-08 19:56

Всему своё время =)


10494. Алексей В.
Алексей В.
ответить
→  kalobyte  # Теория ООП / Структура пикселя / 2017-05-01 18:49

Отлично, Молодец!!!!! Так Держать!!!


10558. Иван Воронин
Иван Воронин
ответить
→  kalobyte  # Теория ООП / Структура пикселя / 2017-05-01 17:46

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


10558. Иван Воронин
Иван Воронин
ответить
→  kalobyte  # Теория ООП / Второй класс / 2017-05-01 17:35

Курсы все разные и если в каком-то из них появляется много вопросов, то этот курс явно изучаешь рано, вначале надо пройти более простые, где как раз на подобные вопросы даны ответы. Я уже прошёл не мало курсов и скажу так, они тут очень сильно разнятся по сложности, поэтому лучше их изучать по мере появления на проекте, что и сделано в Клубе Улиток.


10558. Иван Воронин
Иван Воронин
ответить
→  kalobyte  # Теория ООП / Урок рисования / 2017-04-30 16:26

Пол часа это ещё мало, иногда на это уходит несколько часов.


10558. Иван Воронин
Иван Воронин
ответить
→  kalobyte  # Теория ООП / Инкапсуляция мечты / 2017-04-30 16:24

Хорошая аналогия, молодец. =)


3922. Александр
Александр
ответить
→  kalobyte  # Теория ООП / Урок рисования / 2017-04-30 00:07

Очень правильный совет, kalobyte! Думаю, что главное, заниматься не много, а регулярно!..


10558. Иван Воронин
Иван Воронин
ответить
→  kalobyte   / 2017-04-22 09:43

Мои работы, когда обучался и шёл на красный диплом, тоже были самые крутые, на фокспро написал базу данных, к которой прикрутил поддержку синтезатора речи через писиспикер, который мог говорить по русски, а это были 9х года, а на паскале написал свой графический редактора с окнами как в винде 95, и это всё под досом, так что да, как я говорил уже ранее, мы родились в переходный период, когда технологии опережают время, а учителя ещё не родились и не выросли. Поэтому этот проект мне понравился именно практическим подходом. Советую следить за вебинарами, на них можно задавать интересующие вопросы, идеальная теория на практике.


10558. Иван Воронин
Иван Воронин
ответить
→  kalobyte   / 2017-04-22 09:38

"Там просто тупо преподносилось "делай так" и все." <--- вот в этом твоя основная проблема, ты просто делал именно так как писалось в книгах, а я каждую тему проверял на практике, я всегда придерживаюсь правила: "лучше один раз увидеть, чем сто раз услышать" и поэтому я всю жизнь проверяю всё, с чем приходится сталкиваться ЛИЧНО, не для того, чтобы подтвердить или опровергнуть чьи-то слова, а для того, чтобы узнать истину и понять как оно на самом деле работает, так как даже если написали верно, то как всегда что-то недосказали по тем или иным причинам, либо не углублялись, либо просто посчитали, что это не важный момент. Голова человеку дана, чтобы думать, анализировать полученную информацию и проверить её истинность в полевых условиях, взять к примеру ПК, ведь это не айфон, который по железу и ОС заточен, что что бы ты не писал, по-любому будет работать у всех, ПК это конструктор, который мало того. что может быть собран из непредсказуемого железа. так ещё и иметь или не иметь определённую железку в своём комплекте, это надо учитывать при разработке ПО. А по поводу розеток, я в 10 лет взял в каждую руку по одному ферритовому стержню и сунул в каждое отверстие розетки, ощущения получил не забываемые в течении пары секунд. Зарядился на всю жизнь, но как я говорил ранее, Старший брат электронщик, брал меня с собой на радио рынок и там покупали конструкторы ПК, дома он их паял, а я уже на бейсике баловался, писал не только игры, но и лабораторные работы, одна из них была, реализовать анимацию перекрёстка, светофоры в обе стороны движения, грузовые и легковые авто, останавливаются на красный, едут на зелёный, легковые обгоняют грузовые по левой полосе если нет препятствий и останавливаются на красный свет светофора на на второй полосе если грузовая уже заняла первую полосу стоит.
Позже, чтобы понять, как реализовано чужое ПО, занялся реверс инжинирингом, как раз изучением чужого кода, это даёт не мало знаний и опыта, который я до сих пор использую. А в последствии я понял одно, в книгах ответов нет, только больше вопросов, хочешь что-то узнать, экспериментируй по мере появления задач, если конечно это тебе действительно интересно. Время это очень ценный ресурс, чтобы тратить его на перелистывание книжек без должной практической проработки прочитанного.


10588. kalobyte
kalobyte
ответить
→  Иван Воронин   / 2017-04-22 08:48

У меня не было книжечек. В 92 году в мухосранске посреди тайги как-то не особо были компутеры и тем более книжки. Достал мне папаша книжку, но там был какой-то левый бейсик, для msx или коммодора что ли. Так что я методом тыка все изучал. Даже нашел команду вызова монитора  в спектруме. Чисто интуитивно догадался что там цифры значат. Писать на бейсике простые проги я тоже мог. Мой шедевр был - рисовальщик фигур, можно было подводить курсор в нужное место, вызвать команду рисования фигуры и задать координаты или вроде бы еще он умел рисовать пикселем как карандашом.
На шарпе я писал недавно прогу за деньги. Она управляет железкой по протоколу snmp.
Вся сложность состоит в том, что я не знаю как правильно сделать. Вариант а или б. Оба работать будут, но опытный человек может сразу сказать, что в этом случае вариант а будет лучше б. А почему лучше? Когда надо делать статический вызов, а когда динамический? Конда применить паттерн singleton?

Многие книги содержат ошибки фундаментальные. Потому что авторы сами не понимают тему. Например я много лет не мог понять, почему нельзя померять ток в розетке. На батарейке же я мерял и мог сказать, насколько хорошая батарейка. В 12 лет я купил цешку и померял таки. Пришлось потом шуп один чистить. Так и не понял, пока в пту не объяснили спустя 15 лет. При этом я столько книжек прочел по сто раз.
В этих же книжках пишут, что транзистор это усилитель то напряжения, то тока. На самом деле он никакой не усилитель. Обычный переменный резистор. Просто управляется не рукой, а током через базу. Как только я это понял, то сразу все стало понятно в схемах с транзисторами.
То же было с детектором. Никак не мог понять, как из выпрямленного вч тока появляется звук. Оказалось, что детектор это не диод, а целая схема из диода, конденсатора и резистора-нагрузки. И эта рц цепочка есть фильтр. Хотя приемник детекторный я делал еще в 7 лет и читал ту самую толстую книгу борисова.

Так что непонятно, о каких базовых знаниях ты говориш. Что надо знать, чтобы учить асм? В этих книжках я не нашел ответов на вопрос "почему". Там просто тупо преподносилось "делай так" и все.

А что касается применения на деле, то я всегда этого придерживался. Терпеть не мог решать задачи, которые не применяются на деле, как и работы. Я не сдал ни одной контрольной в быдловузе. Все это было на листочках, даже асм. И это в 2012 в илитном быдловузе гермашки. Единственное сдал на 1.3 - с++ проект. Управлял платой укв приемника из музцентра через лпт порт. Хотел еще разные типы индикаторов прилепить для демонстрации полиморфизма, но уже времени не было. Кстати с++ я не знаю. Только базовый уровень. Мой проект оказался самый крутой. А я ожидал чего-то большего от высшего технического заведения.


10558. Иван Воронин
Иван Воронин
ответить
→  kalobyte   / 2017-04-22 07:22

Чтобы увидеть динамику, надо самому перестать быть статичным. Я в 7 лет нашёл отличную книжечку С ПРИМЕРАМИ, для спекутрума, где вкратце рассказывалось, для чего это и пример программы, где это использовалось, так я её всю перепробовал и начал успешно писать игры/программы. А чтобы изучать ассемблер и понять сразу, надо иметь базу знаний предварительную, это всё равно что родиться и сразу пойти работать, вначале надо вырасти, за время роста выучить базовые знания, без которых тебя даже в магазине будут обделять на сдачу, получить необходимые теоретические и практические знания, а уж потом идти работать.

У нас тоже преподов не было адекватных по программированию. Поэтому только самообучение помогало двигаться дальше, причём тогда интернета не было. По поводу ГОР КНИГ процитирую свои слова из прошлого сообщения: "никто не предлагал читать горы книг, интернет тем и хорош, что можно найти примеры и описание нужной функции."

Теории должно быть ровно столько, сколько необходимо. Мне этот проект и нравится тем, что её тут минимум. Если что-то хочется узнать дополнительно, Игромистр дал наводку, топаешь и гуглишь необходимое, это как поход в магазин, отправили в молочных раздел, идёшь туда и там ищешь необходимый молочный продукт, а не шастаешь по всему магазину и ищешь не понятно что.

Нужно просто понимать одну простую вещь, изучать что-либо не применяя это на практике, пустая трата времени. Необходимо как минимум понимать, где можно это применить и применить именно там, для закрепления полученных знаний. А если просто повторять за учителем или просто слушать/читать теорию, ничего это не даст и выветрится очень быстро.


10588. kalobyte
kalobyte
ответить
→  Иван Воронин   / 2017-04-21 23:36

Я изучал ассемблер в 96 году для спектрума и ничего не понял. Я изучал его для контроллеров в 2003 и ничего не понял. Я изучал его для х86 в 2012 и только тогда боле менее понял. Преп в быдловузе боле менее годный попался. Вся твоя теория в гугле - это информационный мусор. Написано так, что я просто через 5 минут засыпаю. Поэтому я перестал читать книги уже лет 8 назад и смотрю только ролики. Мне нужно видеть изменения  в динамике. Т.е. написал кусок, запустил, посмотрел. Написал второй, посмотрел и сделал выводы.

Еще раз повторюсь, что теория не должна занимать дольше 15 минут. После этого мозги ничего не воспринимают. Так что не надо про горы книг и гуглы. 15 минут теории в рамках конкретного урока - это достаточно.

А оценил я что я прошел и моя оценка не идет дальше конкретного урока. Если в новых уроках есть вводная теория, то хорошо. Может быть ты проходил уроки с играми и там есть теория. Я закончу ооп и возьму еще пакет с прикладным софтом. Там особо в теории вдаваться не надо.


10558. Иван Воронин
Иван Воронин
ответить
→  kalobyte   / 2017-04-21 22:48

Если тебе хочется знать, что понимает процессор, изучай тогда ассемблер. так как остальные языки создаются для удобства пользователя, а компилятор всё перевод в машинный код, это и есть ассемблер. В остальном согласен, но хочу напомнить пару моментов касательно этого проекта:
1 - на этом проекте минимум теории, кому она нужна, идут гуглить то, что им НУЖНО и НРАВИТСЯ в данный момент, никто не предлагал читать горы книг, интернет тем и хорош, что можно найти примеры и описание нужной функции.
2 - Прежде чем предлагать советы по поводу будущих уроков, нужно выполнить все, что имеются на проекте, дабы иметь полноценное представление о текущем состоянии дел на этом поприще.
з.ы.
Я в 89 году написал первую игрушку и тоже на спектруме и с тех пор игры это отчасти и работа и хобби.
У меня старший брат занимается паяльниками и схемами. Поэтому я ушёл в сторону ПО.


10588. kalobyte
kalobyte
ответить
→  Иван Воронин   / 2017-04-21 22:18

Я решаю задачи, которые интересны мне и не решаю, которые неинтересны. Я делаю только то, что мне хочется делать и не делаю чего не хочется. Таков мой принцип жизни. В 94 мне было интересно узнать, как определяется попадание снаряда в противника и один человек подсказал мне. Я пришел домой и написал игрушку на спектруме. С тех пор игрушки перестали меня интересовать.

Насчет сложности. Если тупо повторять за роликом, то ничего сложного. Так пишут экзамены  в быдловузах те, кто никогда транзистор не видел. И сдают. А я 30 лет паяльствую, но посчитать режим работы транзистора - это сложно. Особенно не имея записей на бумажке. Нужно _понимать_ работу транзистора от и до и на основании ее вывести все формулы и по ним посчитать все в правильной последовательности. Только тогда у тебя будет понимание.
А можно тупо запомнить формулы и тупо применять. Тогда ты не будеш понимать, но зато ты знаеш, что сюда надо вставлять циферки от сюда и получим вот это.

Недавно на хабре была статья, где срывали покровы. Оказывается 95% программистов не понимают принципа работы чужого кода, а то и своего даже. Просто берут и вставляют чужие куски. И оно даже работает. И это оказывается может делать любой индус.

А что касается теорий, то я уже столько перечитал, но пока я нашел только единственного человека, кто может доносить теории простым языком. Поэтому я тут и делаю задания. Обучать других - это очень сложно, т.к. надо простыми словами донести до людей сложные вещи. Если ты сам не понимаеш принцип работы на уровне _ощущений_, то значит ты не понимаеш, как это работает. А если ты ощущаеш, то можеш легко говорить своими словами. Например я за 15 минут могу объяснить 3 принципа ооп без заумных слов и без привязки к какому-то языку программирования.
Тоже самое могу с интегралом или комплексным числом. Но при этом я понятия не имею, как руками считать это все. Могу посчитать в калькуляторе. Потому что все эти операции для моих мозгов неприятны. Это как если бы ты был хирург, а тебе бы еще приходилось при операции удалять кровь или зашивать брюхо. Для этого есть персонал и там не требуется каких=то знаний особых или умений.

Так что я написал пожелания к организации других уроков. Чтобы сначала была теория и человек мог представить в голове конечную цель. Например у меня не было калейдоскопа с 4 зеркалами. Только 3 и я имею картину в голове только такую. А вот если покажут картинку как на 4 зеркала, то ведь алгоритм будет уже совсем другой? Или же такой же?

У меня в голове была картинка, что калейдоскоп надо вращать. Значит у меня мысль была бы, что надо это вращение как-то сделать в коде. А оказывается, что никакого вращения и нет. А вот как это понять изначально? Я вот и написал, что сложность заключается в том, что в коде очень сложно реализовать вещи из реального мира.

Вот тебе еще пример. Надо измерить переменное напряжение. По формуле там есть интеграл.
https://geektimes.ru/post/254088/
Но интеграл - это абстгактная штука. В контроллере нет блока интеграла, в нем ацп стоит. И вот мы уже видим совсем другую формулу для ацп. И вот скажи, откуда ее взять или как понять, что нужно именно так делать? Поэтому и нужна теория, где бы говорилось, почему интеграл вдруг перестал существовать в реальном мире и превратился в обычные действия уровня 6го класса. Зачем я изучал это все в быдловузе, если на практике никакого интеграла нет, как нет и комплексных чисел и отрицательных, и дробных. Я когда узнал, что процессор не понимает отрицательных чисел, то был в шоке. Поэтому я и пишу подробные отчеты и каменты.


10008. Сергей Зулкарнаев
Сергей Зулкарнаев
ответить
→  kalobyte  # Демо софт / VIP. Калейдоскоп / 2017-04-21 18:50

Красиво получилось!


10558. Иван Воронин
Иван Воронин
ответить
→  kalobyte  # Демо софт / VIP. Калейдоскоп / 2017-04-21 18:10

Теория нужна? гугл в помощь. Сложно тем, кто проходит уроки в записи? ты пока единственный, кому сложно было. Заранее в голове нельзя всё предугадать, так не бывает, задачи решаются по мере их поступления. Не нравятся игры и математика? задаче, которую надо будет решить, абсолютно наплевать какие у тебя интересы в жизни, ты либо решаешь её либо нет.


1. Евгений Волосатов
Евгений Волосатов
ответить
→  kalobyte   / 2017-04-21 08:01

Привет. Доступ к теории ООП Открыт!


10558. Иван Воронин
Иван Воронин
ответить
→  kalobyte   / 2017-01-09 22:07

Если тебе именно ПО для винды, то я тут такие курсов не встречал, об этом лучше уточнить у Евгения Витольдовича, но я знаю точно, если технология будет востребована, курсы появятся.


10588. kalobyte
kalobyte
ответить
→  Иван Воронин   / 2017-01-09 21:18

А асп это же уже через веб работает. Для веба я знаю mvc с пхп фреймворками, а мне надо приложения для виндовса по такому. Врят ли там оно одинаково будет.


10558. Иван Воронин
Иван Воронин
ответить
→  kalobyte  # Демо софт / ФИНАЛЬНЫЙ УРОК / 2017-01-09 14:32

по поводу mvp можешь глянуть курсы по ASP.NET, тут имеется несколько таких, там похожие технологии используются и не только =)


1. Евгений Волосатов
Евгений Волосатов
ответить
→  kalobyte  # Демо софт / ФИНАЛЬНЫЙ УРОК / 2017-01-09 09:38

Спасибо, прекрасный отзыв, суть методики ты уловил на 100% и уверенно двигаешься к цели, молодец!


1. Евгений Волосатов
Евгений Волосатов
ответить
→  kalobyte  # Демо софт / Текстовый процессор / 2017-01-09 09:33

Во-первых, это ты уже смело можешь сделать сам.
Во-вторых, лучший формат уроков - 10-минутный.
В-третьих. идея программ этого курса - дать идею, сделать первые шаги.
А дальше можешь создавать и развивать программу сам.
Мне очень нравятся твои отчёты, у тебя здорово получается!


10588. kalobyte
kalobyte
ответить
# Начало / Мои успехи / 2017-01-08 15:21

1. В общей сложности меньше месяца (с перерывами лени).
2. Английские карточки с подключением плеера vlc вместо windows media player.
3. Управление радиоуправляемым роботом с телеметрией, системой opencv с распознаванием целей, хардбольный привод.
Перехват кнопок у МФУ или сканеров для сканирования в заданные папки и форматы.
Систему управления помещениями с контролем доступа по пинкоду или карточке постоянного клиента.
4. Этот сайт первый и единственный, что заставил меня реально брать и делать. Подача материала идет сразу и без занудной теории и расписывании разных возможностей компонента, функций или еще чего. Так же подготовительная работа с отметкой галочками. Плюс публичный отчет о проделанной работе с учетом трудностей и пожеланий.

Обычно другие курсы просто дают материал, долго и нудно рассказывают о теории и абстгактных прогах, которые ничего полезного и конечного не делают. Тут все проги имеют какое-то полезное назначение, которое можно представить в голове сразу и заранее, что дает тебе моментальную картину о том, что нужно будет сделать и как это должно работать примерно.
Обычно дают ввести а,б,ц и вывести на экран или сложить 2+2, или посчитать по какой-то формуле или алгоритму. Это все уныло и неинтересно. Я от такого спать хочу.
Все тутошние приемы можно потом использовать в качестве подсказки в дальнейших проектах.

5. Тупо смотреть ролик, брать и делать как там, а потом приделать свое, если оно требует расширения функцианала или другой механизм какой. Например в примере "12 месяцев" я храню картинки в самом .ехе файла как ресурсы и вытаскиваю их динамически. Мне так показалось более логичным и хотелось освоить механизм хранения и использования ресурсов. Вы можете сделать это в виде длл файлов, где имя файла будет отображать тематику картинок типа "кошки", "собаки", "цветочки" и в каждом файле по 12 картинок.


10588. kalobyte
kalobyte
ответить
→  Евгений Волосатов   / 2017-01-05 21:45

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


1. Евгений Волосатов
Евгений Волосатов
ответить
→  kalobyte  # Демо софт / Средняя оценка / 2017-01-05 21:41

Спасибо за комментарии.
Рекомендую курс "Новые технологии", там естькурс по делегатам и по многим другим аспектам.
Вижу, у вас есть интерес и положительная тенденция к изучению программирования!


10558. Иван Воронин
Иван Воронин
ответить
→  kalobyte  # Демо софт / Менеджер паролей / 2016-10-03 09:35

Это классическая ситуация, когда на что-то лишнее тратится времени больше, чем на саму задачу =) молодец! удачи


10588. kalobyte
kalobyte
ответить
→  Иван Воронин  # Демо софт / Менеджер паролей / 2016-10-03 07:26

Я только что закончил делать шаблон openoffice calc для выписки счетов. Там используются макросы для форматирования области печати и экспорт в пдф и одс файл по нужному пути, который задает сам клиент в шаблоне. Я эти макросы первый раз вижу и дока по ним очень плохая.

Но это несколько не то, т.к. там еще довольно сложные вычисления каких-то буховских штук и иногда они не нужны и бухша их стирает, на что тратится время.
Надо просто галочки ставить и тогда эти опции будут включены в вычисления. Если понравится ей этот шаблон, то предложу написать отдельный софт.


8959. Максим Саратов
Максим Саратов
ответить
→  kalobyte  # Демо софт / Менеджер паролей / 2016-10-02 13:07

Вы упорный человек!


10558. Иван Воронин
Иван Воронин
ответить
→  kalobyte  # Демо софт / Менеджер паролей / 2016-10-02 11:28

Молодец! запросы это стимул двигаться дальше, дерзай, иногда приходится изучать новый язык во время заказа и параллельно и изучением сразу же писать приложение, удачи


1. Евгений Волосатов
Евгений Волосатов
ответить
→  kalobyte  # Демо софт / Менеджер паролей / 2016-10-02 09:35

Правильный вывод - просто двигайся вперёд.
Дальше мы рассмотрим использование ООП.
Рекомендую курс "Теория ООП".


10588. kalobyte
kalobyte
ответить
→  Евгений Волосатов   / 2016-06-29 18:38

Спасибо за приглашение, но я терпеть не могу игры. В 94м мне показали, как реализуется в коде столкновение 2х объектов и у меня пропал интерес к играм. Меня больше интересует тема usb hid. Пробовал расковырять бесплатные обертки для hid.dll или libusb, но как обычно - ушло куча времени, а результата ноль. Потом я узнал, что виндовс захватывает мыши и клавиатуры и управлять ими нельзя. А я для простоты решил помигать светодиодом второй клавиатуры, но кроме как зависания ничего не вышло. Были куча примеров с custom requst, но мне пока это неинтересно.

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

Вобщем я так и не осилил, сделал на готовых библиотеках с модуляцией бпск31, сигнал как раз на слух похож. Потом сказали, что лицензию станции не продлили и оказалось не нужным.

3я тема - программно определяемое радио. Нигде ничего нет на русском по теме. Вроде есть люди, которые вроде бы в теме, но никто ничего не пишет. Как матановая формула описывает процесс модуляции или демодуляции хотя бы простейшего ам сигнала. Как это перевести в код и вообще понять. Вот есть хорошая статья https://habrahabr.ru/post/303104/
Сейчас опять надо сделать прогу, чтобы работала с этим приемником и декодировала рдс в текстовой файл + вещала в мр3 в сеть и чтобы все было консольное. Пока сделал из кучи консольных прог или одной графической, но неизвестная ее стабильность. Она кстати на шарпе написана.
Это типа будет контрольный приемник для радиостанции, а то человек купил целый трансивер с функцией приема укв станций и думал управлять им с компутера, а там по кабелю или данные, или звук. Оба одновременно не идет.

Так что я больше по железу. Если кто решит такой вебинар делать, то приду охотно.


1. Евгений Волосатов
Евгений Волосатов
ответить
→  kalobyte   / 2016-06-29 15:14

Долго думал, что тебе ответить на всё это.
Наверное только одно - очень рад знакомству с таким удивительным и целеустремлённым человеком.
Да, галочки творят чудеса, как и остальные "маленькие секреты", которых тут множество :)
Желаю удачи в обучении и приходи в субботу на вебинар!


10588. kalobyte
kalobyte
ответить
→  Евгений Волосатов   / 2016-06-28 22:29

А я альтернативно одаренный. Для меня написать 100 строк кода уже великий труд, хоть я и с 94 года это делаю.
Там не сложно, если тупо переписывать код с ролика. А вот понять, почему программа именно так построена - вот в этом сложность. У меня в мозгу автоматически за доли секунды формируется полная картина, как бы это сделал я и оно мешает малость.

Ну и когда видиш готовый результат с парой строк кода, то на первый взгляд все просто. Я вот 2 проекта недавно допиливал. Там не применялся подход mvc, и кода хтмл, яваскрипт и пхп с запросами к бд был перемешан. Нужно было это перенести на новый хостинг и там вылезли глюки, т.к. софт был написан с 2006 года.

В другом софте надо было найти ошибку, почему не всплывает flexbox при отправке данных в форму. Заняло месяц, а решилось закомментированием непонятной яваскрипт функции в одном файле. Я так до конца и не понял причины.
Второй вопрос с запретом кешировать мп3 решился добавлением случайного числа типа sfsdf.mp3?nocache=rand().
Казалось бы пара строчек кода, а сколько времени ушло на понимание причины.

То же самое при ремонте электроники.

Программирование - это очень сложно. Сложно в плане не придумать алгоритм работы программы. У меня на это доли секунд уходят. Сложно заставить работать кучу хлама друг с другом. Этот компонент влц требует еще пары длл, которых вообще нет в дистрибутиве плеера. Непонятно откуда они взялись в моем проекте после компиляции.
Вот я не знаю ответ на этот вопрос. Значит я уже что-то не понимаю до конца. Непонимание ведет к дискомфорту. Чтобы дискомфорт убрать - надо понять до конца 100%. А для этого надо потратить кучу времени на поиск и прочтение материала.

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

А весь секрет - в тех волшебных чекбоксах, которые надо заполнить и выполнить задания.


1. Евгений Волосатов
Евгений Волосатов
ответить
→  kalobyte  # Демо софт / Английские карточки / 2016-06-28 16:45

Разве там всё так сложно?
Вроде всё как-то проще на уроке было ...
Может стоит этот урок переместить в другой курс?


1. Евгений Волосатов
Евгений Волосатов
ответить
→  kalobyte  # Демо софт / Двенадцать месяцев / 2016-06-28 11:06

Привет.
Я очень рад, что ты уже начал самостоятельно работать и разобрался в таких важных вопросах!

Начинаем практику по языку C#




Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.
Научился: Пока все известно.
Важно было замечание насчет наследования и причины невозможности наследования казалось бы общих характеристик. А так же насчет полиморфизма. Именно такие важные замечания и нужны. Т.е. все действия должны отвечать на вопрос "зачем" и "почему так, а не этак". Пока что в других курсах я не видел таких ответов.
Научился: Переносить конкретные реализации функции draw в свой класс для фигуры.
Трудности: Понимание всех этих правильных приведений типов, чтобы нигде ничего не пропустить, а то бывает ошибка вылазит там, где ее нет, т.к. в другом месте что-то не так сделал.
Наконец-то началась оптимизация и раскладываний методов по полочкам. Раньше была неразбериха из-за одинаковых названий переменных в основном файле form1.cs, которые пересекались с внутренними переменными классов. Я-то знаю, что все должно быть внутри класса и показывать, что оно относится только к нему, что собственно и есть инкапсуляция. Сейчас код методов стал уходить из главного файла в конкретный файл отдельного примитива, но имеет одинаковый метод для рисования и без параметров, что очень важно.