Deutsch

программирование, курсы для детей оффлайн.

1092  1 2 все
`Alexa` знакомое лицо17.02.24 19:49
`Alexa`
NEW 17.02.24 19:49 

детям от 7 лет уже можно что-то оффлайн в Берлине предлагать или рано.


онлайн пробовали scratch -вообще не понравилось.

#1 
wh75wh75 постоялец17.02.24 21:09
17.02.24 21:09 
в ответ `Alexa` 17.02.24 19:49
детям от 7 лет уже можно что-то оффлайн в Берлине предлагать или рано.

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


В соё время я для своего просто не сиог найти офлайн.

онлайн пробовали не понравилось.

Зато делали пробные занятия от Российской школы, понравилось парню, да и цены демократичней тогда были, но не нашли способа оплачивать отсюда.

#2 
`Alexa` знакомое лицо17.02.24 21:39
`Alexa`
NEW 17.02.24 21:39 
в ответ wh75wh75 17.02.24 21:09

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

#3 
AlexNek патриот17.02.24 21:52
AlexNek
NEW 17.02.24 21:52 
в ответ `Alexa` 17.02.24 21:39

Есть большое подозрение что учёба - это пожелание родителей, а не ребенка.

Спорт, танцы, музыка - как то еще могу понять. Но сидеть и пялится в комп - пожалейте ребенка.

#4 
alex445 коренной житель17.02.24 22:23
NEW 17.02.24 22:23 
в ответ `Alexa` 17.02.24 19:49, Последний раз изменено 17.02.24 22:24 (alex445)

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


Чтобы ребёнку сходу понравилось гонять джейсоны или делать CRUD для БД - т.е. то, что в основном и делает большинство программистов (а вовсе не роботы и игры) - это нонсенс. Программирование это не самоцель, а средство для достижения других целей. По-моему, к программированию именно так и надо идти - не напрямую. Напрямую - это верный способ отбить всё желание, особенно у ребёнка.

#5 
wasja-de знакомое лицо17.02.24 23:16
NEW 17.02.24 23:16 
в ответ `Alexa` 17.02.24 19:49

Есть несколько фактов:


в возрасте 7 лет очень сложна абстракция с переменными,

также в этом возрасте ребенок не может понимать тексты хоть каких программ, которые не видны на одном экране (то есть если программа в один экран не влазит, можно не пытаться объяснять - не получится).


Классическое программирование сейчас совсем не имеет драйва, и обучение языкам программирования можно сделать только если ребенок захочет, а захочет он только если ему будет 14+ лет или если ему будет очень надо.


Чтобы ему было надо, ИМХО, есть два метода:


найти что-то захватывающее, связанное с машинным зрением,

найти что-то захватывающее на поле ардуинки и сенсоров.


Я сам пытался, мои дети сконвергировались через компьютерное зрение примерно в возрасте 12 лет, и когда с компьютервижином пошло, и языки программирования стали заходить, и сопутствующая математика и численные методы. Хотя JS, json, БД, шарп, и все, что тут принято называть тулсами программиста - мои до сих пор не знают, хотя вот-вот старшей 18 стукнет.

#6 
alex445 коренной житель17.02.24 23:21
NEW 17.02.24 23:21 
в ответ wasja-de 17.02.24 23:16, Последний раз изменено 17.02.24 23:25 (alex445)
Я сам пытался, мои дети сконвергировались через компьютерное зрение примерно в возрасте 12 лет, и когда с компьютервижином пошло, и языки программирования стали заходить, и сопутствующая математика и численные методы. Хотя JS, json, БД, шарп, и все, что тут принято называть тулсами программиста - мои до сих пор не знают, хотя вот-вот старшей 18 стукнет.


А может, они хотели стать виндсёрферами, или артистами, или пекарями? А вы их не туда сконвен... сконвект... ну вы поняли.


в возрасте 7 лет очень сложна абстракция с переменными,
также в этом возрасте ребенок не может понимать тексты хоть каких программ, которые не видны на одном экране (то есть если программа в один экран не влазит, можно не пытаться объяснять - не получится).

Неужели и абстрактная фабрика фабрик не зайдёт? А также подробности генерации байткода виртуальными машинами и стопицот признаков отличия абстрактного класса от интерфейса? Блин, в современном программировании без этого никуда. Приходишь на собес, а там сидит такое чудо со шпаргалкой под столом, и играет в боженьку, вершащую судьбы людей. Главное, детям не рассказывать, что их ждёт, а то они нафиг это ваше программирование пошлют. ))

#7 
Отпускник завсегдатай17.02.24 23:30
NEW 17.02.24 23:30 
в ответ alex445 17.02.24 23:21

кстати на прошлой неделе послушал, как у нас кандидата спрашивали отличия абстрактного класса от интерфейса. Мне аж стало стало, что сам ответа не знаю и пришлось гуглить. Вот основные имхо (пока не забыл).
1. АК может наследовать от интерфейса(ов), наоборот - нет.
2. АК может содержать функции с телом, интерфейс - нет.
3. АК может иметь поля, интерфейс - нет.

Ничего не забыл?

#8 
Murr патриот18.02.24 06:25
Murr
NEW 18.02.24 06:25 
в ответ `Alexa` 17.02.24 19:49

Программирование, как создание кода на каком-то формальном языке, для 7-леток бесполезно - уровень оперирования абстрактными понятиями недостаточен.


Если есть желание готовить детенышей к ИТ - надо искать что-то где дадут базовую алгоритмику.

#9 
`Alexa` знакомое лицо18.02.24 09:35
`Alexa`
NEW 18.02.24 09:35 
в ответ Murr 18.02.24 06:25

всем ответившим спасибо.

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

училась в институте(2-х) и это было выброшенное время.

программирование надо сейчас и в будущем как прикладное умение, как писать и читать сейчас, поэтому хотелось бы как-нибудь плавно ввести в курс дела.

7 это рано, он ни читать , ни писать толком не умеет, я пока ищу идет, т.к. в школе , как я понимаю, такому не учат.

#10 
alex445 коренной житель18.02.24 10:21
NEW 18.02.24 10:21 
в ответ Отпускник 17.02.24 23:30, Последний раз изменено 18.02.24 10:32 (alex445)
1. АК может наследовать от интерфейса(ов), наоборот - нет.
2. АК может содержать функции с телом, интерфейс - нет.
3. АК может иметь поля, интерфейс - нет.


Ничего не забыл?

Понятия не имею. Но вот эти "тот от этого может наследовать, а наоборот - нет", это примерно так же как "АК начинается на А, а интерфейс - на И". Таких "отличий" можно накопать десятки и сотни.


Вдобавок, в том же Сишарпе в зависимости от версии языка отличия разные, т.к. они эти интерфейсы постоянно изменяют и добавляют им возможностей, типа дефолтных имплементаций. Отсюда и далее. То же самое про поведение сборщика мусора, что там в байткоде сгенерится и прочая хрень, которая так же зависит от версии и имплементации конкретной виртуальной машины и компилятора. Чел, который задаёт такие вопросы, сам до конца не понимает, что спрашивает, и если к нему посреди работы вдруг подойти и неожиданно хлопнуть по плечу, проорав в ухо "а ну ска быра говори, чем интерфейс от абстрактного класса отличается?! 13 с половиной отлиий, а то уволю!", он разве что промямлит что-то невразумительное и будет судорожно искать так привычную шпаргалку под столом на коленях. )))


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

#11 
Отпускник завсегдатай18.02.24 21:19
NEW 18.02.24 21:19 
в ответ alex445 18.02.24 10:21

офигеть, при сталине в .net framework такой херни не было


interface IA
{
    void M() { WriteLine("IA.M"); }
}

A class that implements this interface need not implement its concrete method.

C#Copy

class C : IA { } // OK

IA i = new C();
i.M(); // prints "IA.M"


The final override for IA.M in class C is the concrete method M declared in IA. Note that a class does not inherit members from its interfaces; that is not changed by this feature:

C#Copy

new C().M(); // error: class 'C' does not contain a member 'M'


#12 
alex445 коренной житель18.02.24 22:06
NEW 18.02.24 22:06 
в ответ Отпускник 18.02.24 21:19, Последний раз изменено 18.02.24 22:23 (alex445)

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


А всё потому, что от интерфейсов классы не наследуются. Интерфейсы лишь обозначают контракты для классов - класс должен выполнить этот контракт. Интерфейсы наследуются от интерфейсов, классы - от классов. Дефолтные имплементации для интерфейсов - лишь при использовании объектов как интерфейсов.


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


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

#13 
Отпускник завсегдатай18.02.24 23:58
NEW 18.02.24 23:58 
в ответ alex445 18.02.24 22:06

ну тут есть все же капля логики

Эти дефолтные методы ничто иное как static методы. И т.к. они не наследуются, то и вызвать их через детей нельзя.

#14 
Murr_0001 местный житель19.02.24 00:39
Murr_0001
NEW 19.02.24 00:39 
в ответ `Alexa` 18.02.24 09:35

программирование надо сейчас и в будущем как прикладное умение, как писать и читать сейчас

-------

Невозможно.

Апдейт языков и технологий каждые 2-3 года.

Это как учить локальные языки на предмет читать и писать проезжая страны на поезде...

#15 
Murr_0001 местный житель19.02.24 01:02
Murr_0001
NEW 19.02.24 01:02 
в ответ Отпускник 17.02.24 23:30
отличия абстрактного класса от интерфейса.

2. АК может содержать функции с телом, интерфейс - нет.

-----------

есть алаверды по данному вопросу

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

#16 
alex445 коренной житель19.02.24 01:23
NEW 19.02.24 01:23 
в ответ Murr 18.02.24 06:25, Последний раз изменено 19.02.24 01:25 (alex445)
Программирование, как создание кода на каком-то формальном языке, для 7-леток бесполезно - уровень оперирования абстрактными понятиями недостаточен.


Если есть желание готовить детенышей к ИТ - надо искать что-то где дадут базовую алгоритмику.

В одном видео на ютубе смотрел, рассказывали про китайскую девочку, которая уже в 7 лет решает сложные математические задачки, изучает алгоритмы и английский язык. Учится с утра до вечера. Родители не скрывают, что хотят, чтобы она работала в Гугле. И вот против этих биороботов без детства вам придётся конкурировать. Если, конечно, эти биороботы не сойдут с ума. Но таких много, и многие из них проходят в те же Гуглы просто как типа "молодые таланты" - по результатам всяких олимпиад и прочего. Затем приезжают учиться в США, на стажировки, и там и остаются. Сделать Ютуб без идиотского интерфейса или поправить баги в продуктах это не помогает, но места рабочие они занимают.

#17 
alex445 коренной житель19.02.24 01:27
NEW 19.02.24 01:27 
в ответ Murr_0001 19.02.24 00:39

программирование надо сейчас и в будущем как прикладное умение, как писать и читать сейчас

-------

Невозможно.

Апдейт языков и технологий каждые 2-3 года.

Раза в 2-3 реже, если не обращаться внимания на всякий мусор. Тот же Шарп уже скоро 20 лет будет - куда с него апдейтиться? Только горизонтальное направление - на другой язык, со сменой стека.

#18 
alex445 коренной житель19.02.24 01:41
NEW 19.02.24 01:41 
в ответ Murr_0001 19.02.24 01:02

отличия абстрактного класса от интерфейса.

2. АК может содержать функции с телом, интерфейс - нет.

-----------

есть алаверды по данному вопросу

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

Все подобные вопросы - долбаные ребусы на эрудицию. Типа как вы сказали, или что-то вроде "с какими элементами языка можно использовать модификаторы доступа (public и т.п.)", или "какие операторы можно перегружать, а какие нельзя и почему? а если очень хочется? а есть ли замена перегрузке? а какая? а когда лучше применять? а когда лучше не применять? а почему? а зачем? а если вот так, этак и шиворот-навыворот, тогда что?...".


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

#19 
Murr патриот19.02.24 19:28
Murr
NEW 19.02.24 19:28 
в ответ alex445 19.02.24 01:41

долбаные ребусы на эрудицию

------

Ну так указано же - алаверды - перехват и поездка по ушам интервьюора.

Смысл - в подмене понятий - "чистая виртуальная функция" - часто используемый термин. Он - на слуху и всем понятно что под ним понимается.

Вот только это плюсовый термин и каким бы не был ответ по имплементации такой функции в шарпе - он, априори, не может быть правильным.

Единственный правильный ответ - плюсовый термин не может применяться шарпе.спок

#20 
1 2 все