Об образовании.
На нашем факультете учат многим языкам программирования. Например, делфи, но выглядит это примерно так: "Смотрите, это Делфи. Идём дальше."
На нашем факультете учат многим языкам программирования. Например, делфи, но выглядит это примерно так: "Смотрите, это Делфи. Идём дальше."
в школе в любом случае бейсик изучают и хорошо изучают, если есть желание связать себя с программированием
С дуба рухнул? Какой Бейсик в школе?
У нас был Робот (двигать робота по клеткам) и три урока по Паскалю. Всё.
Я изучал python как первый язык. Нормально. Потом когда понадобилось быстро пересел на C#.
Во-первых python это живой язык, в отличии от Паскаля, можно сразу в продакш, грубо говоря.
Во-вторых он очень лаконичен и точно тоже прививает кодить правильно.
В-третьих у него великолепная документация, в отличии от Паскаля.
Я не понимаю ваших проблем с привидением :)
Я немного учил Бейсик в школе, немного Паскаль в университете, а нормально начал с пайтона.
Синтаксис не важен, но если взять python, то ты можешь сразу применять в бою, на реальном проекте. Паскаль Бейсик и Фортран вряд ли сейчас будут применяться, особенно на новичковском уровен. C++, да можно прямо в бой, но вот проблема в том что он очень сложен. Чтобы написать хоть что-то нужно написать довольно много знать. Python же прост и лаконичен и кроме того прививает хороший стиль.
На stackoverflow 1млн вопросов по python и 2К по паскалю. Там есть множество отличных примеров.
Есть docs.python.org есть отличная документация.
причем тут вопросы и документация?
может причина обилия вопросов в другом? и по паскалю всё понятно, так как справка, что есть в нем содержит полную информацию с готовыми примерами.
При том что Паскаль мёртвый язык.
Зачем учить то что никогда не пригодится?
Можно изучать то же самое на современном языке, который востребован и нужен.
В Python, кстати, тоже есть справка и множество примеров. Обилие вопросов достигается широтой использования. Если поискать, то почти всё уже написано.
В принципе нет никакой разницы между c++\c# и python, но в самом начале python удобнее своей лаконичностью и прививанием хорошего стиля.
в программировании микроконтроллеров особенно пригодится, там с типами данных можно программу похерить.
Потому что из-за динамической типизации в начале обучения новые программисты не составят конкуренции старым.
сейчас прохожу в вузе параллельно Си и Питон. От всей этой динамической типизации уже блевать хочется. Хуй поймешь что в коде происходит. Еще и массивов нет, бесит.
Вчера писал машину Тьюринга и в листе из строк (по сути скорее из символов) забыл привести один int к строке. В итоге join ругался на типы данных в списке, минут 20 убил на поиск пропущенного str(). В си я бы просто объявил массив char.
Дело навыков. Я на такую ошибку убил бы несколько секунд, т.к. все написано в логах ошибки. Требуются только знания языка. С таким подходом можно многие языки забраковать. Если не знать Си, то и там будешь тратить длительное время на дебаг.
На самом деле наоборот, зачем массивы во всех остальных языках, когда листы гораздо удобнее и не менее производительные. Атавизм.
Чувак, массив - фундаментальная структура.
А список, стек, хэш-таблица, древовидная структура и т.д. - это все производные, в реализации которых применяется массив.
То же самое можно сказать о указателях, но почему-то от них отказываются в угоду упрощения.
Насчёт массивов то же самое, работаю джавистом, даже не помню когда в последний раз использовал чистый массив. В универе, наверное
Удобный для чтения синтаксис, особенно для новичков. Алгоритмы лучше и проще показывать на его примере.
Алгоритмы лучше и проще показывать? Чем условный двоичный поиск будет проще и понятнее, если написать его на пайтоне?
Мне кажется у вас какие-то предрассудки
Питон больше навредит, ибо нету нормальной системы типов, нету стабильной типизации, всяких манипуляций с мутабельностью) Вот хаскель заебись)
Ничего, потому что мы говорим об учебном языке. Он должен быть наглядным, простым для чтения. Никаких монстров вроде "end.", "program", "begin" и иже с ним, там быть не должно. Или это цель такая: сначала максимально изнасиловать мозг учащегося подробным синтаксическим мусором, чтобы потом ему было проще писать на других языках?
вообще-то играет роль их назначение, структура и особенности работы.
и этот "мусор" дает представление о структуре программе и упорядочивает описание данных. Тот же Си, если не ошибаюсь, использует ту же структуру.
Лол, ну давай заменим begin и end на { и } и получим C/C++, C#, Java, JS, PHP, что еще в голову взбредет... Но нет, давате использовать ебучие отступы)))
Ты хочешь сказать, что
begin
end
читается хуже, чем
{
}
?
Хочешь сказать, что мешанина {}[]():{}(0())({}]{}{?<>.<()<.}{ читается намного лучше, чем слова человеческого языка?
Никлаус Вирт разработал паскаль для обучения студентов.
Это изначально язык для преподавания, то, что на нём коммерцию начали делать - это вторично.
Никлаус Вирт помимо Паскаля разработал ещё и Modula и Oberon, которые весьма его напоминают, но существенно более расширены.
Тоже для обучения, надо полагать?
Какое отношение количество коммерческого кода имеет к назначению языка?
Это как с автомобилем: из того что модель грузовика не стала популярна не следует, что он планировался как автотренажёр.
Очень простое: я не знаю, для чего он их придумал. Скорее всего - совершенствование паскадя, по-крайней мере на своей лекции он именно это говорил.
Но лично я ничего не слышал об их практическом применении.
Вывод - либо только для обучения, либо для фана (такое тоже бывает).
Ни из того, что вы ничего не слышали об их практическом применении, ни из того, что этих применений действительно чуть меньше, чем нихрена (считать ли Bluebottle/Oberon OS за таковое ...) - не следует, что эти языки разрабатывались исключительно для обучения. Аналогия про грузовик остаётся верной.
PS Вас случаем не Олегом звать?
Cи гамно с его грёбанные черточками и скобочками
Си долго не мог пролесть в разрешенные в промышленности из-за убогочитаемости! И я согласен с ними.
а JS чем не угоден? вполне норм для новичка, да и практическая польза есть, хоть fed-ом стажером можно быть потом
Вот это ему тоже вредно знать. Такое вообще живым людям вредно знать, это надо запретить на мировом уровне.
На самом деле относительно всё просто, если конечно задаться целью это понять. По сути это тупо оптимизация, описанная в спецификации.
По ней, чтобы не проверять именно двойное условие (больше или равно) JS проверяет выражение «x < y» (где «x» у нас null, а «y» — 0). Раз выражение null < 0 === false, то интерпретатор отдаёт true на null >= 0.
Но если прям по существу, то такой пример в реальном проекте просто никогда не встретится, и его используют исключительно для трололо
Но если прям по существу, то такой пример в реальном проекте просто никогда не встретится, и его используют исключительно для трололо
Почему же он не встретится? Очень даже. Если я получаю данные с третьей стороны, то она вместо ожидаемого числа может выдать null, и если я не делаю предварительно проверку на is null, то результат сравнений непредсказуем.
В остальном, всё хорошо, но оптимизировать надо с умом, а именно так, чтобы не нарушалась очевидная логика. Конечно, можно наделать в языке миллион таких «оптимизаций» и всё описать в доке, но для языка неочевидность — это минус.
Ну если уж говорить про очевидную логику, то отчасти и она есть :D С точки зрения математики, если что-то строго меньше нуля, то оно точно будет больше или равно этому нулю. Но вообще согласен, такой угол можно было давно сгладить для конкретных типов данных.
Ну а проверка на is null — это само собой разумеющиеся :D Строгую проверку «===» никто не отменял
Это как раз последнее, что я помню (как раз при "Embarcadero"): зачатки разработки для мобилок и всеобщий гнев на то, что это появилось раньше x64 компилятора.
x64
Android
iOS
MacOS
Linux
Restful WebAPI из коробки
JS-фронтенд из коробки
FireDAC на туеву хучу видов БД
Бесплатная редакция professional до 5000$ в год (она же community)
Что-нибудь ещё есть, но я пару лет не слежу уже.
жесткий во всех отношениях:
1. правила оформления кода;
2. требует описания переменных с указанием их типа;
3. лаконичные команды, схожие с живым человеческим языком, без сокращений;
4. хорошо структурирован;
Для того же ТурбоПаскаля:
5. возможность линковать куски закрытого кода, что уже делает близким к реальному профессиональному средству разработки программ;
6. делать компактные exe-файл.
Какие "консольники"? В Дельфи визуальное программирование GUI, было сделано задолго до того, как это (криво и косо) было реализовано в VS. Работа с базами данных там тоже была реализована задолго до VS. В Дельфи даже 7 версии отличный дебаггер, не хуже современного VS.
Я по роду деятельности несколько проектов поддерживаю, в Дельфи, в C++ и в С#. Единственное, в чем VS опередило Дельфи - в веб-программировании.
python
минимализм, ничего лишнего, никакой магии.
В отличии от Java, C#|C++, где с самого начала идёт куча всего непонятного для человека...
Python это вообще по моему "найди самую подходящую библиотеку и она сама всё сделает"...тем и прекрасен)
А если я поддерживаю проекты на Delphi, VS C++ и C# и по результатам своего опыта могу сказать, что самое эффективное и экономичное решение - это реализовывать проекты (десктопные) на Delphi?
Не зря ведь цена Дельфей выше, чем у Студии.
ну да. javascript То новичкам самое оно, с его
2 + '2' = 22
и
typeof null
"object"
и ещё кучей всего подобного
Если обучение идет посоедовательно и в процессе нет магии , то лучше усваивается.
В C сразу же уже с первой строчки #include "stdio.h" появятся вопросы и много сложных и непонятных, для человека который не умеет программировать вещей. По хорошему их следует объяснить. В C++ аналогично, но хоть без ООП сразу можно. А в Java сразу ООП идет. Это ведет к тому что человек должен использовать сразу эту "магию" непонятную.
когда учился, честно говоря, было трудно внезапно врубиться в си-подобные языки. Что в прочем и привело к тому, что после окончания вуза я звукач а не программист, по всей видимости.
после Паскаля (в среде Делфи), C++ и прочие до диезы, реально как-то мозг ломали многим. Паскаль очень удобен по синтаксису, ну или привычка, черт его пойми.
С одним только определением переменных в разных модулях, правильно распределить определения и объявления в в h и cpp файлах - уже можно ебнуться. Вот студенту только это и надо.
Ну дельфи для обучения вполне себе. Строгая типизация, ООП, формочки и кнопочки в визуальном редакторе - можно научиться делать простейшие штуки почти методом тыка.
Потому что он хорошо проработан с академической точки зрения. В нем нет лишних вещей. Нет "фич", "сахара" и "свистоперделок", которые программисты просили добавить в него автора, как с С++. В нем нет противоречий, исключений, сложностей, которые нужно выучить (охуеть сначала от их нелогичности и вообще от их наличия) и отслеживать. Язык описания новых типов и переменных прост - разбор и построение идет слева направо, сначала имя, двоеточие, потом выражение типа. В С и С++ для описания переменных и типов нужно при разборе от имени двигаться вправо, затем влево. В случае сложных выражений - нужно несколько раз вправо-влево-вправо-влево. И вот такие сложности нужно сначала выучить, набить на них руку и глаз. В С++ система ООП, прямо сказать, ебанистическая сверх меры. Одни и те-же слова, поставленные в разном порядке, дают совершенно разные по смыслу конструкции. В Delphi одно слово обозначает ровно одно, вставлять его в конструкцию можно только в одном, предназначенном для него месте.
Все это приводит к тому, что за семестр освоить С/С++ (без применения ООП!) совершенно нереально. Точнее, если навалиться на С/С++ - то можно, но изучать одновременно в рамках одного курса язык и программирование алгоритмов - абсолютно нереально.
Delphi же можно ознакомиться за три-четыре занятия, а весь остальной курс можно посвятить алгоритмистике. Я уже не говорю, что визуальное программирование в Delphi абсолютно на интуитивном уровне, в то время, как на освоение визуального программирование на С/С++ у вас может не хватить семестра.
-----------
И не надо говорить, что я не знаю С++. Прекрасно знаю. Более того, чем больше программист продвигается в знании С++, тем больше у него накапливается отвращения к этому языку. Если вы руководитель и ваша цель - десктопное приложение, то самое разумное решение - применять Delphi. Web-приложения на Delphi не сделаешь, точнее, там это сложно, применяйте другие языки.
1. В Паскале проще синтаксис объявления типов и переменных.
2. Проще описание циклов.
3. Проще case-switch, без break-ов.
4. "Правила" расстановки точки с запятой - точка с запятой разделяет операторы.
5. Синтаксис возврата прост - это присвоение переменной Result. В то время, как в Си нужно определять переменную и ее возвращать. Легко впопыхах определить переменную для возврата, проинициализировать, сделать расчет и записать в нее результаты. Потом через некоторое время, добавляя код, повторно определить другую переменную и ее вернуть. При этом первая в лучшем случае останется мусором, с худшем - там будут невозвращенные данные, что выливается в труднонаходимые и не объяснимые ошибки выполнения. В Паскале таких проблем не может быть.
6. begin-end - ближе к человеческому языку. Обрамление кода begin-end лучше цепляется при быстрой промотке кода. Кроме того, использование служебных слов в качестве структуризации кода унифицированнее выглядит. В Паскале все служебные слова - это слова, что if, что что for, что begin-end, в Си же одни служебные структурирующие слова - это if, for, switch, а блочные служебные слова - почему-то скобочки. А в дальнейших развитиях, С++, C#, это и квадратные скобки, и угловые.
7. Определение в Паскале всегда быстрое и четкое. Если переменная - строка начинается с var, если определении типа - type, если процедура - procedure. Когда эти служебные слова прижаты к левой части кода, это дает возможность быстро проматывать текст, при этом глаз быстро схватывает эти маркеры. В Си/С++ же вид определения полностью определяется контекстом и комбинацией скобочек, причем по-разному, в частности, определение функции - без служебного слова, а вот определение типа - typedef, да еще struct, да еще для struct надо тэг указать, и все это в неочевидном порядке. А для шаблона - template. А вот лямбду без служебного слова, чисто комбинацией скобок, причем в умопомрачительном порядке. В Паскале-Дельфях все просто: служебное слово - имя - определение. Везде один порядок.
Вообще, складывается впечатление (и необоснованное), что Паскаль ПРОЕКТИРОВАЛСЯ и создавался унифицированно, А С/С++ наращивался костыль за костылем, по мере озвучивания хотелок.
Как-то так, пардон за длиннобукв.
почему нельзя при этом использовать плюсы или тот же java/python?
у совсем глупых и с паскалем будет плохо
просто глупых как-то и не жалко
средние/сильные - хоть вынесут что-то полезное из школьного образования/смогут куда лучше пилить олимпиадки
Ну, во первых плюсы, джава, питон отпадают потому как они высокоуровневые. Это плохие образцы языка для обучения программированию, если ты собрался учиться в программирование, а не стать быдлокодером за 5 минут.
для системного обучения - да, нужно и низкоуровневое (си?)
но, если говорить о школьном, то натыкался лишь на 2 типа описаний преподавания в школе - либо никакое, либо те же плюсы/java/python. И между ничем и быдлокодингом быдлокодинг смотрится очень привлекательно
Не видел. Расширьте, пожалуйста, мой кругозор, приведите контрпример из России\СНГ, где на школьном уровне реализовано относительно качественное обучение на низком уровне
Это, увы, так (у самого преподавал бывший трудовик). Хотя весь школьный курс проходится (лютое имхо, знаю) при желании меньше, чем за неделю даже без особенных навыков до начала прохождения
Быстро накидать формочку без выебонов, чтоб туда юзер вбивал параметры и получал из БД табличку, делфи самый удобный, т.е. реально дело нескольких минут, а потому много где жив.
Язык — всего лишь верхушка айсберга, это любой идиот выучит при желании. Обучать должны другому. Толку от того, что тебя будут гонять условно 5 лет на языке «сегодняшнего дня», когда через 5 лет он уже будет не нужен? (я не про питон, а в принципе).
По хорошему, в нормальных заведениях тебя должны учить структурам данных, алгоритмам, различным методологиям и парадигмам, но никак не актуальным знаниям в твоём понимании
почему нельзя учить актуальным знаниям? во многих вузах на специальности ПО учат делфи, да, можно потом выучить что угодно, но зачем тратить кучу времени в вузе на заведомо бесполезные знания?
Вот тебе пример абсурда из моего вуза, у нас были лабы по асму, надо было сделать моргающие намлоки и капслоки на досовских прерываниях на компьютерах с win 2000. Как блядь и зачем?
Потому что учат при изучении делфи не делфи, а программирование). Все языки более менее друг на друга похожи с поправкой на расстановку скобочек. Ну ещё есть функциональные - те немного отличаются.
Аналогично и с досовскими прерываниями.
В любом случае, за время учёбы (в течении последующих лет) конкретные технологии уже поменяются, а вот принципы сохранятся.
>>зато выйдя из вуза уже можно идти работать.
Можно только в случае, если выпускник уже начал работать ещё на старших курсах.
В противном случае - выпускникам вуза не хватает практики. Где-то около полугода тратится на ввод в производственный процесс. Из них 3 недели на освоение основ языка погоды не делают.
>>переучиваться с Делфи на нормальный яхык
Переучиваться придётся и не раз и при чём, как показывает практика, по ходу пьесы в любом случае.
Потому что учат при изучении делфи не делфи, а программирование
При изучении делфи учат и программирование, и программирование на делфи, со всеми его говноштуками.
Аналогично и с досовскими прерываниями.
а в чем смысл лабораторной работы по досовским прерываниям на win2000? в чем практическая польза?
ага охуенно похожи си и яваскрипт.философии у них абсолютно разные. Неправильно в яваскрипте писать по сишному а в си п ояваскриптовому вообще не получится
Отчего же не получится? Всё зависит от задач. std::promise и вперёд. Можно и ещё библиотек подтянуть.
Потому что актуальные знания сегодня ≠ актуальные знания завтра. Эти актуальные знания ты должен черпать сам в реалиях текущего времени. А вот базу должно заложить учебное заведение, и на каком языке это будет сделано не имеет значения
С таким девизом мы учили в первом семестре машину тьюринга, Паскаль с 0 и писали программы на листочках. У всех хоть как-то умеющих программировать это было хорошим опытом "как сгорать за 15 минут на паре, за пропуск которой выебут"
И всё это под пафосные выкрики про лучший факультет лучшего вуза страны
Ну уж тут проблема «на местах». Хотя многие не видят проблем и в писанине кода на листочке, но для меня это тоже дикость была на некоторых парах
2 семестра этого ада. ВМК, блин, МГУ.
MASM на листочках - это уже за гранью добра и зла.
Зато, конечно, скачок в третьем достаточно комичен: от дз в виде Hello, World! в первом месяце - к клону шелла во втором и IPC средствам в третьем (не так много, как хотелось бы, хотя спецкурсы нормальных кафедр радуют хардкорностью)
Только вот неактуальные знания сегодня 100% неактуальные знания завтра.
Я сомневаюсь, что хирургов учат по учебникам 18 века.
Или автомеханиках учат ремонтировать автомобили "Победа"
Ты подменяешь понятия. Основные вещи в программировании не меняются в зависимости от языка. В этом то и смысл.
Это как, условно, у художника есть множество инструментов для написания картины (акварель, масло, темпера, акрил, и так далее), но без навыков композиции, понимании цвета, знания анатомии и всего остального — картины не получится.
Тут тоже самое. Тебе должны дать основы, и именно их. Я не говорю про спец. предметы, я не говорю про обучение в условном физмате. Я говорю о том, что на начальном (! это очень важно) этапе обучения нет вообще никакой разницы, какой язык использовать. Да тот же MIT тонны лет учил на лиспе, и всё у всех было в порядке, а СИКП как был нереальной базой, так ей и остался, так же не взирая на то, что там всё на лиспе
«образование в РФ нет» — мощное логическое заключение. Пришли к пайтону через 26 лет. А ты можешь гарантировать, что ни одна школа не обучает на том же пайтоне? Я вот видел программы обучения с этим конкретным языком.
Потому что актуальные знания сегодня ≠ актуальные знания завтра. Эти актуальные знания ты должен черпать сам в реалиях текущего времени. А вот базу должно заложить учебное заведение, и на каком языке это будет сделано не имеет значения
так и лабы на компьютерах не нужны, давайте на перфокартах учить, базу заложим, а дальше ты сам.
Мы говорим об языках, а ты предлагаешь менять техническую сторону вопроса. Так можно дойти и до того, что будем отбивать нули и единицы с помощью подачи напряжения
Я в первом ответе описал, что имею в виду под базой. Если всего этого не давать — то на выходе будет не программист, а эникейщик.
Вот и расскажи мне, отталкиваясь от этого: какая вообще разница, что за язык будет использоваться в таком случае?
Я в первом ответе описал, что имею в виду под базой. Если всего этого не давать — то на выходе будет не программист, а эникейщик.
так никто не спорит, что нужно давать базу, что мешает ее давать на си(который и 30 лет назад был актуален, и сейчас)? Люди дипломные пишут на паскале, зачем? для кого? Зачем вообще вуз, если актуальные знания надо получать самому? По алгоритмам и прочему есть куча инфы в инете, которая намного доступнее, понятнее, полнее и актуальнее, чем то что дают в среднестатистическом вузе.
Вот и расскажи мне, отталкиваясь от этого: какая вообще разница, что за язык будет использоваться в таком случае?
Разница в количестве времени, которое ты тратишь зря. Не говоря уже о многопоточности, сокетах, syscall и прочему, о чем, скорей всего, не раскажут на лекциях о паскале.
Зачем вообще вуз, если актуальные знания надо получать самому? По алгоритмам и прочему есть куча инфы в инете, которая намного доступнее, понятнее, полнее и актуальнее, чем то что дают в среднестатистическом вузе.
Откуда вы знаете, что те же алгоритмы плохо рассказываются в учебных заведениях? Если не повезло с вашим вузом в этом плане, то это же не значит, что везде так.
Проблем в образовании много, но мы сейчас говорим о сферическом учреждении, где отличные преподаватели по каждому направлению
я уже приводил пример, лабы по досовскому ассемблеру, задача - сделать так, чтобы моргали капслок, намлок и скроллок. Стенд - win2000.
Все это сделано из тех же рассуждений "какая разница на чем базу давать", только без учета существующих реалий
так никто не спорит, что нужно давать базу, что мешает ее давать на си(который и 30 лет назад был актуален, и сейчас)?
Ну хз, нам и 10 лет назад в колледже давали C++. Хотя при этом на другом предмете был паскаль, а на третьем C#, а на веб-разработке так и вообще по PHP гоняли. Если конкретный курс предполагает использование каких либо определённых технологий, то его явно будут преподавать на том языке, который подходит для этих целей. Ещё не видел людей, которых бы учили писать серверы на бейсике (условно)
Не говоря уже о многопоточности, сокетах, syscall и прочему, о чем, скорей всего, не раскажут на лекциях о паскале.Это на какой такой специальности должны рассказать об этих вещах, но при этом заставляют писать на паскале?
даже в школе, ты там в 10км классе, учишь паскаль. Можешь ли ты его практически применить вне школы? Вряд ли.
Ты учишь питон, пришел домой, написал себе, не знаю ,чекер новых серий сериалов, бота для игрушки простого и т п, у тебя есть базовые знания, которые ты можешь применять уже сейчас, которые достаточно просто дополнить(ведь база у тебя в нужном языке, тебе не надо с 0 учить синтаксис, типы данных, характерные для этого языка и т п)
В том что после окончания универа ты никому нахуй не нужен будешь и придется учить это всё самому потратив пару месяцев, если не больши, либо тратить всё своё свободное время на обучение во время учёбы
Да как будто если тебя будут учить тому же пайтону, то прям после окончания будешь всем нужен. Не смеши.
И разве в динамично развивающиеся области ты не должен постоянно учиться? В своё свободное время. Если твой ответ нет — то дела твои плохи :D
Будешь хорошо знать базу — язык не станет проблемой. Неделю почитаешь/покодишь в удовольствие и спокойно пойдёшь джуниором, или для того, чтобы выучить типы данных, циклы и прям базовые функции тебе нужны месяцы?
одно дело разобраться в какойто области уже зная основы языка и совсем другое учить новый язык. Я пишу уже много лет на яваскрипте и пхп но в машинное обучение мне очень сложно влезть помтоучто япостоянно отвлекаюсь на гугление как делается чтото на питонеи что означает эта конструкция в чьемто коде
А на языке ты что реализуешь и используешь? Правильно — типы данных, алгоритмы и так далее.
Типы данных реализую?
Большая часть стандартных алгоритмов уже реализована, пилить свой велосипед нет смысла
Типы данных реализую?
Почему же нет? Если например тебе нужно работать с координатами, что ты сделаешь? — пойдёшь качать либу с тонной ненужного тебе говна или всё же напишешь свой тип данных/реализуешь абстракцию?
Большая часть стандартных алгоритмов уже реализована, пилить свой велосипед нет смыслаБольшая не есть все, да и к тому же алгоритм алгоритму рознь. Разреши поинтересоваться — на каком языке ты пишешь, если такие вопросы у тебя никогда не возникали?
C#
Скорее всего, если мне нужно работать с координатами, то мне вряд-ли потребуется только класс/структура, а ещё куча методов для работы с ними, и если это не уникальный случай, то да, проще взять либу, которая предоставляет необходимый минимум
Ну проще тебе. Возможно кому-то проще и своё написать. В любом случае и тот, и другой вариант полностью подходит под реализацию типов данных. Что конечно не привело нас к ответу — почему же на начальном этапе обучения плохо изучать паскаль :D
Он устарел, и его применение в коммерческой разработке крайне узконаправленно.
Есть возможность учиться на современных языках, которые дадут не только теоретический опыт, но и ПРАКТИЧЕСКИЙ, что значит, что человек выйдет из ВУЗа уже с хоть каким нибудь минимум знаний.
У сына в школе, в 8 классе училка вовсю продвигает кодинг на паскале, домашки по 5 программ плюс на уроке активно. Когда я учился в школе, я об этом мечтал, но у нас был бейсик на бумажке, а я хотел быть программистом. И вот тут теперь одно НО, сын у меня - музыкант, который в день 3-4 часа занимается музыкой и которому программинг как-то совсем не интересен, а забирает на домашку много времени. Так почему бы в школе (за ВУЗ вопросов нет) не давать именно актуальные потребности: слеопй набор на клавиатуре, презенташки и прочее что им и в учебе и в жизни пригодится...блин, но кодинг в школе для всех( Это как по музыке учить читать ноты с листа всех, ведь считай тот-же код и другой язык программирования
Исходя из вашей логики - почему бы в школе не ограничиться арифметикой и природоведением, т.к. алгебра, физика, химия и биология не всем интересны.
В школе не дают сверхглубоких знаний, идея школьного обучения - выпустить человека с некоторой минимальной эрудицией.
Простите не понял как мой комментарий противоречит вашей логике? Разве программирование - это не сверхглубокое знание для школы? Яж вроде так и написал, интересней на уроке информатики (заметим не уроке программирования) выучить слепую печать на клавиатуре или прикладное использование утилит/программ для создания презентаций, графиков и т.п., ну и кончно никто не отменяет блок-схем как начального уровня понимания логики. Вся суть ведь целесообразности
Разве программирование - это не сверхглубокое знание для школы
Оно считалось сверхглубоким, когда кампуктеры трещали дискетами и нейтрализовались кактусами. На сегодняшний день иметь хотя бы общее представление о том, как работает ПО, и как завтра будет работать "умный дом" - становится минимумом.
выучить слепую печать на клавиатуре
Не надо путать уроки информатики с физ-рой.
или прикладное использование утилит/программ для создания презентаций, графиков
Это уровень природоведения.
никто не отменяет блок-схем как начального уровня понимания логики
Было бы прекрасно, если бы этим можно было бы обойтись, но в результате получится как в недавней истории, проиллюстрированной фотографией.
Ну не согласен, считаю что программирование - это углубленное изучение предмета для школы. А насчет физ-ры и природоведения, ведь на этих уроках этим не занимаются и получается что этим нужно заниматься дома? Так я и негодую что дома есть чем заниматься, а эти в современном мире обязательные штуки (сори но программирование я еще не считаю обязательным) так и остаются неосвоенными.
Вот мы и не придём к компромису %>
В школе когда-то тоже ограничивались арифметикой, а современная школьная алгебра была уровнем университета. Всё меняется.
Ну так универ - это же специализированное завденеие, профильное. А школа - общеобразовательное и нужно обучать всему. Да уровень "всего" поднялся и поэтому появились новые предметы и сложность поднялась, но все-же программирование еще нет. Почему тогда на уроке музыки не учить нотной грамоте? это что же дискриманация гуманитариев? :)
Так сейчас даже не паскаль, а абц паскаль в школах преподают. Дочь скоро будет учить. Так еще мне геморр, дома все компы на лине, а в этом паскале под линь не все модули работают.
Нихера не могу этот блядский ST освоить, неужели впадлу было разрабам нормальные слова в качестве операторов использовать, как в обычных языках программирования?
о, а как вы языки для плк изучали?
контроллеры сами использовали?
тоже хочу попробовать, но железа нет
железа полно: китай клепает клоны, на них реально стартануть
Ищите по PLC mitsubishi fx -- для старта хватит!
Методом тыка и логики. База в виде айтишного образования имеется. LD и FBD покорились без особых проблем, в IL и SFC реальной необходимости не вижу и не тыкал. На ST все облизываюсь, но блин, бесит написание операторов, не могу я их запомнить, все из одной-двух букв состоят. Хоть синтаксис и паскалеподобный, но код выглядит жутко непонятно. Зачем так было делать?
Ещё например паскалевские скрипты используются в Inno Setup. Вот прямо сейчас сижу и натужно скриплю мозгами, ибо всё забывается, если редко пользуешься.
findUninstall := false;
uninstallProbablyPath := 'Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\';
if RegKeyExists(HKEY_LOCAL_MACHINE, uninstallProbablyPath + '{' + appId + '}') then
begin
findUninstall := true;
uninstallRegKey := uninstallProbablyPath + '{' + appId + '}';
end;
if RegKeyExists(HKEY_LOCAL_MACHINE, uninstallProbablyPath + '{' + appId + '}_is1') then
begin
findUninstall := true;
uninstallRegKey := uninstallProbablyPath + '{' + appId + '}_is1';
end;
и т. д.
Хз, с 2000 по сю пору работаю, программируя на delphi.
После перекупки Embarcadero IDE стала еще круче, плюс кроссплатформенная, можно пилить под андроид.
Или вот этот валятель валенков, аппарат трофейный, сами немцы в 30-е годы на нем обваливали шерсть заключённых
А вот прикиньте. АлтГПУ, прикладная информатика, первый курс. Запустили учебную программу совместного изучения и паскаля и с++. На лабах надо прогу написать и на паскале и на с++ и ещё 5 листов отчёта. Постановка задачи, математическая модель, описание алгоритма, блок-схема, проект программы с определением замкнутых программных единиц и необходимых структур данных, текст программы на обоих языках, тест программы на обоих языках, анализ и оценка эффективности работы, написанных на разных языках.
Я ещё понимаю С++, но паскаль-то зачем.
охуреть, если честно: когда я учился, он был Высокоуровневый (измеряли относительно ассма и машкодов).
А ныне, оказывается, он низкоуровневый, так как ниже ООП ))))))))
Низкоуровневый? Да? И поэтому помогает разобраться в алгоритмах, как сортировка? А вот и филологи подъехали, после курса паскаля
Скорее меня не так поняли. Я имел ввиду что делфи на базе паскаля. Чем "ниже" уровень кода тем он ближе к машинным кодам, без библиотек, без упрощений и т.п.