>(Q)BASIC то зачем? Затем, что архитектуру вычислительной техники нельзя давать сразу в полном объеме. Надо показать границы основных блоков ПК и от языка к языку "разжевывать" их хоть до транзисторов. Для первого этапа обучения вполне хватит понимания таких блоков, как: 1. Память и ее виды 2. Процессор 3. Устройства ввода-вывода. Чтобы закрепить это и развить интерес, вполне хватит средств (Q)BASIC'a.
>1. в первую очередь необходимо изучать алгоритмы и развивать алгоритмическое мышление.
>при чём уровни сложности от команд ветвления, до классов, шаблонов, графов, деревьев
>и пр.
Алгоритмическое мышление приходит с решением поступающих в мозг задач) Кстати, графы - это куда ближе к сетевому программированию, а до его архитектуры тоже дорасти надо)
>3. развивать знания, умения и навыки. и желательно максимально приближённо к реальности.
Выходные можно посвятить тому, что интересует обучающихся с учетом опыта, уже приобретенного ими)
>2. необходимо изучать архитектуру.
Обязательно. Но параллельно с каким-нибудь языком. Лично мое мнение таково, что паскаль - вещь не очень-то и нужная, С++ куда шире и яснее смотрит на задачи системного ПО. Здесь уже можно говорить об адресации памяти, ее распределении, подключить сюда основы дискретной математики.
>соответственно выбор:
>1. с/с++ - gcc + qtcreator = не плохой на мой взгляд
>выбор. и доступен каждому студенту/учащимуся (почему qtcreator? он прост. и не
>отвлекает от учебного процесса)
>естественно другие иде также затрагиваются
Code::Blocks, например;)
>2. раз знание архитектуры - асм нужен
безусловно) Жалко, что нигде не достать большую схему хотя б третьего пня, чтоб показать, что там куда бегает. Не менее занимательно, чем планетарий-)))))) И уж если дошли до асма, можно преподавать и VHDL, а параллельно к нему рассказать, из чего состоят регистры процессора и о программируемых логических интегральных схемах (ПЛИС). Вот где дискретная математика должна блеснуть во всей красе! Тут просто необходимо рассказать и показать, как с помощью формул алгебры логики можно уменьшить количество булевых операций, а соответственно блоков, а значит ускорить время выполнения и количество используемых схем.
>3. скриптовые языки. тут выбор огромен. от sh до питона... а если
>привезать к теме сети/интернет/субд и пр. (согласно программе обучения), то и
>js|php|mysql
насчет сетей лучше подождать HTML 5. Он должен взять на себя кучу работы, которая сейчас выполняется на javascript и php. Базы данных я не люблю, поэтому про них ничего говорить не буду-)