Цитата: AndreyK-AV от 07.02.2024 08:26:23Питон ещё и самый популярный язык обучения на информатике в средней школе при подготовке к КЕГЭ.
В принципе основные рекомендуемые языки это Pascal,Python, с++, Java , ещё Кумир, но могут быть и другие...
Мне с одной стороны без разницы на чем обучать, хотя проще и быстрее всего это делать на Pascal или Python. Для учеников понявших принципы и подходы к разработке программ на одном из языков, далее без особой разницы на каком писать, точнее какой язык более соответствует задаче, или какой язык принят в организации за основу на том и пишут.
У Pascal плюс, идёт практически на любом ПК что есть в школах, Python более современный, но в нём разбираются поменьше учителей информатики чем знающих Pascal, и опять же он тянет за собой среду разработки, а это повышает требования к технике.
Цитата: Siberian от 07.02.2024 11:50:24Pascal мёртвый язык. Впрочем, я не специалист в вопросах обучения, была же раньше какая-то логика в повсеместном изучении латыни. Python пока еще живёт, более того, он сейчас медленно заменяет собой matlab и язык R в научных исследованиях в институтах.
Про "тянет за собой среду разработки" - это неправда, вас ввели в заблуждение. То есть таки да, в PyCharm или в VSCode программировать удобнее, но легко можно обойтись и без них.
Цитата: AndreyK-AV от 07.02.2024 12:20:53Общеобразовательная школа по умолчанию консервативна, и просто не в состоянии бежать ориентируясь на передовую часть технического прогресса.
Я могу обучать хоть в машинных кодах, хоть на ассемблере (правда дековском), хоть на фортране и т.д. и т.п.
Однако для понимания принципов и подходов среднему ученику общеобразовательной школы, мне нужно что то логически завершённое, простое в реализации, и общедоступное хоть бейсик, хоть паскаль, хоть питон, но с последним придется ставить оболочку, так как в разъяснения к процедуре КЕГЭ этого требуют.
Цитата: GrinF от 07.02.2024 16:34:33далеко и очень далеко питону до вытеснения матлаба, который тоже не стоит на месте...
Цитата: Siberian от 07.02.2024 13:19:13Гм, а, например, инит-скрипты в линуксе - это не достаточно серьёзно? Или sh/bash это не скриптовый язык?
Цитата: gb от 07.02.2024 12:21:23Вся сила Пайтона в интерактивной среде разработки на основе файлов ipynb.
Цитата
Не только правописание проверяется в каждом блоке перед стартом, но ещё и разработка идёт быстрее. Есть несколько факторов ускорения:
- долгие медленные операции выполняются редко (один раз в день) и их результаты доступны потом;
- разработка идёт итеративно строка за строкой и тестирование происходит немедленно;
- благодаря md блокам сухой код можно разбавить текстом с формулами, графиками и диаграммами.
По сравнению с традиционной разработкой просто небо и земля.
Отдельно стоит возможность интеграции кода на других языках. Набирает популярность polar, который изначально написан на Rust и работает во много раз быстрее аналогов. Ожидается следующая мажорная версия numpy, который изначально содержал большие блоки на C и даже отдельные функции на Fortran.
Цитата: Siberian от 07.02.2024 16:54:09Да и пущай дальше развивается, я же не против. Но у него есть один существенный недостаток - лицензирование.
Мои наблюдения про "замещение" основываются по некоторым проектикам для СО РАН.
Цитата: Привет! от 07.02.2024 17:10:09Дык, компиляцию еще не отменили. Интерпретаторы конечно удобно, но это программирование для пользователей, скажем так.
Незаслуженно упускается из виду Виз. бэйсик, только потому что Сшарп его "заменил". Старые подходы были самые верные, когда ресурсы были маленькими а мозги большими.
Цитата: ps_ от 07.02.2024 16:55:30Питон не требует установки среды разработки. Писать программы можно и в Notepad. И это даже полезнее - дети начинают понимать что такое файлы, директории и командная строка.
Цитата: Прокруст от 07.02.2024 16:59:50Я в данном случае имел ввиду быстродействие.
А так-то да, на коленке написанный скрипт имеет место быть. И пока он не разрастется в миллионы строк, можно не обращать на это внимание.
Хороший язык должен
1. Быть быстрым. Скрипт - не годится.
2. Не тормозить периодически из-за автоматической кучи, как Java, C#, Go.
3. Не падать внезапно из-за ошибки как Си, Паскаль.
Здесь должен заметить что в принципе в Си есть перехват сигнала - и можно выйти соблюдая приличия и даже распечатать вызовы функций. Это конечно не 100% гарантия, но все же. И да - упавшая библиотека убъет процесс, что плохо.
4. Не считать себя умнее программиста, как язык Rust.
5. Не быть крутейшим языком фич и суперфич для выпендрежа, как С++
PS.
За неимением лучшего, пользуюсь Си.
Но этот язык не для масс. И из того списка что я привел, Паскль совсем не худший.
Цитата: AndreyK-AV от 07.02.2024 08:26:23Питон ещё и самый популярный язык обучения на информатике в средней школе при подготовке к КЕГЭ.
В принципе основные рекомендуемые языки это Pascal, Python, с++, Java , ещё Кумир, но могут быть и другие...
Мне с одной стороны без разницы на чем обучать, хотя проще и быстрее всего это делать на Pascal или Python. Для учеников понявших принципы и подходы к разработке программ на одном из языков, далее без особой разницы на каком писать, точнее какой язык более соответствует задаче, или какой язык принят в организации за основу на том и пишут.
У Pascal плюс, идёт практически на любом ПК что есть в школах, Python более современный, но в нём разбираются поменьше учителей информатики чем знающих Pascal, и опять же он тянет за собой среду разработки, а это повышает требования к технике.
Цитата: Siberian от 07.02.2024 17:49:27Да и пользуйтесь на здоровье, раз под ваши критерии С лучше всего подходит.
Мне же ваши критерии кажутся высосанными из пальца, некоторые так вобще криво сформулированы.
Лично я подбираю язык под конкретную задачу, в зависимости от которой важность могут иметь совершенно другие аспекты. Например, скорости и цена разработки, сложность поддержки продукта, наличие общедоступных библиотек и их качество.
Цитата: AndreyK-AV от 07.02.2024 17:18:04При одном часе информатики в неделю?
Ну хорошо, можно выбить ещё час внеурочки и все...
Но это у нас, где все сдают или кроме профиля физику или химию или биологию, мы в первую очередь нацелены чтобы выпускники шли в инженеры.
А вот у "соседей" там от пяти до семи часов в неделю.
Кстати там наших охотно берут и после началки, и после 9-го, они там вписываются без проблем, так как в плане технологий хорошо понимают и про файловую систему и про ядро ОС, ну и знакомы с базовыми алгоритмами и их программной реализацией, а в плане информатики как науки обладают логическим мышлением, знанием булевой алгебры, понятием о системах счисления, пониманием необходимого мат-аппарата необходимого, конечно соответственно уровню образования...
Но вот на КЕГЭ у нас идут единицы, и получается что компы, мы как ППЭ, готовим для учащихся других школ, там где приоритет компьютерные технологии.
Цитата: AndreyK-AV от 07.02.2024 17:18:04При одном часе информатики в неделю?
Ну хорошо, можно выбить ещё час внеурочки и все...
Но это у нас, где все сдают или кроме профиля физику или химию или биологию, мы в первую очередь нацелены чтобы выпускники шли в инженеры.
А вот у "соседей" там от пяти до семи часов в неделю.
Кстати там наших охотно берут и после началки, и после 9-го, они там вписываются без проблем, так как в плане технологий хорошо понимают и про файловую систему и про ядро ОС, ну и знакомы с базовыми алгоритмами и их программной реализацией, а в плане информатики как науки обладают логическим мышлением, знанием булевой алгебры, понятием о системах счисления, пониманием необходимого мат-аппарата необходимого, конечно соответственно уровню образования...
Но вот на КЕГЭ у нас идут единицы, и получается что компы, мы как ППЭ, готовим для учащихся других школ, там где приоритет компьютерные технологии.
Цитата: LightElf от 07.02.2024 17:54:33Кмк, в школе должны не языку учить, а программированию как таковому. Алгоритмы и структуры данных, все эти структуры, списки, деревья и подобное. И потому Питон - весьма плохой вариант, слишком много рюшечек и мало сути. Паскаль в этом смысле гораздо лучше.
Цитата: Siberian от 07.02.2024 18:17:55Жалко, что вы не ответили, какую оболочку требуют. А, может, это даже и хорошо - пришлось самому искать.
....
Цитата: gb от 07.02.2024 18:18:46А зачем сейчас писать сортировку пузырем? Время изменилось. Сейчас надо учиться мыслить векторами, матрицами, тензорами. Это иной стиль мышления.
Цитата: gb от 07.02.2024 19:42:10Программа вычисления факториала занимает две строчки:
import math
math.factorial(x)
Все! Рекурсия, указатели — это все тонкости уже не нужные. Основная ошибка участников обсуждения состоит в том, что они рассматривают программирование как составление текста программы для другого, а основной тренд идёт в область решения задач для себя. Рост грамотности ведёт к тому, что переписчики-каллиграфы нужны все меньше. Требуются Пушкины.
Цитата: ivan2 от 07.02.2024 19:59:33И чему равен факториал 100?
Хотя бы тип данных выходного числа укажите.
Цитатаroot@ad55d1526ccb:~# time python -c "import math; print(math.factorial(1000))"
402387260077093773543702433923003985719374864210714632543799910429938512398629020592044208486969404800479988610197196058631666872994808558901323829669944590997424504087073759918823627727188732519779505950995276120874975462497043601418278094646496291056393887437886487337119181045825783647849977012476632889835955735432513185323958463075557409114262417474349347553428646576611667797396668820291207379143853719588249808126867838374559731746136085379534524221586593201928090878297308431392844403281231558611036976801357304216168747609675871348312025478589320767169132448426236131412508780208000261683151027341827977704784635868170164365024153691398281264810213092761244896359928705114964975419909342221566832572080821333186116811553615836546984046708975602900950537616475847728421889679646244945160765353408198901385442487984959953319101723355556602139450399736280750137837615307127761926849034352625200015888535147331611702103968175921510907788019393178114194545257223865541461062892187960223838971476088506276862967146674697562911234082439208160153780889893964518263243671616762179168909779911903754031274622289988005195444414282012187361745992642956581746628302955570299024324153181617210465832036786906117260158783520751516284225540265170483304226143974286933061690897968482590125458327168226458066526769958652682272807075781391858178889652208164348344825993266043367660176999612831860788386150279465955131156552036093988180612138558600301435694527224206344631797460594682573103790084024432438465657245014402821885252470935190620929023136493273497565513958720559654228749774011413346962715422845862377387538230483865688976461927383814900140767310446640259899490222221765904339901886018566526485061799702356193897017860040811889729918311021171229845901641921068884387121855646124960798722908519296819372388642614839657382291123125024186649353143970137428531926649875337218940694281434118520158014123344828015051399694290153483077644569099073152433278288269864602789864321139083506217095002597389863554277196742822248757586765752344220207573630569498825087968928162753848863396909959826280956121450994871701244516461260379029309120889086942028510640182154399457156805941872748998094254742173582401063677404595741785160829230135358081840096996372524230560855903700624271243416909004153690105933983835777939410970027753472000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
real 0m0.090s
user 0m0.073s
sys 0m0.017s
root@ad55d1526ccb:~#