Телескопы покупают здесь


A A A A Автор Тема: Изучаю Паскаль. Присоединяйтесь.  (Прочитано 11199 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Павел Васильев

  • ****
  • Сообщений: 498
  • Благодарностей: 18
    • Сообщения от Павел Васильев
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #340 : 22 Апр 2023 [16:35:55] »
Ну нет никакого Дельфи в современном промышленном программировании.
Вы не в курсе и видимо не там ищите. Даже в самом авторитетном рейтинге языков программирования TIOBE (https://www.tiobe.com/tiobe-index/)  на данный момент Delphi\Object Pascal занимает 11 место из 100, а с учетом того, что впереди есть языки совсем не высокого уровня, такие как Sql, Php, Java Script да и Visual Basic в придачу, то Object Pascal сейчас не иначе как на 6-7 месте. Неутомимо ползёт вверх, всё впереди :good:. Так что не пугайте начинающих программистов отсутствием перспектив изучения языка Паскаль.

Оффлайн LeftUser

  • *****
  • Сообщений: 30 845
  • Благодарностей: 988
  • Кирилл ㋛
    • Сообщения от LeftUser
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #341 : 24 Апр 2023 [12:12:46] »
Вы не в курсе и видимо не там ищите.
Даже не собирался ничего искать. А не в курсе именно вы. Раз не можете привести мне вменяемую вакансию на дельфи, значит ваш пост полнейшее балабольство. Вот вобщем-то и всё.

Оффлайн Iovch

  • *****
  • Сообщений: 1 289
  • Благодарностей: 124
    • Сообщения от Iovch
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #342 : 27 Апр 2023 [19:41:29] »
Зря вы тут дискуссию про языки развели. Тема, как мне показалось была создана для изучения алгоритмов и способов программирования конкретных задач. А паскаль выбран как наиболее понятный в построении конструкций язык. Если я не прав, пусть меня ТК поправит. В свое время я изучил С чисто по книжке, без ПК даже, только потому, что его код после фортрана и бейсика нихрена не мог понять. Здесь же задача обратная : из понятного получить полезное.
Ньютон SW150/750, Рефрактор триплет 100/365_H/M, CG4_GoTo_H/M, Datyson T7C, Levenhuk T510NG, Canon 450Da, БП2 10х50 Berkut

Оффлайн LeftUser

  • *****
  • Сообщений: 30 845
  • Благодарностей: 988
  • Кирилл ㋛
    • Сообщения от LeftUser
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #343 : 28 Апр 2023 [12:11:43] »
Зря вы тут дискуссию про языки развели. Тема, как мне показалось была создана для изучения алгоритмов и способов программирования конкретных задач. А паскаль выбран как наиболее понятный в построении конструкций язык. Если я не прав, пусть меня ТК поправит. В свое время я изучил С чисто по книжке, без ПК даже, только потому, что его код после фортрана и бейсика нихрена не мог понять. Здесь же задача обратная : из понятного получить полезное.
Почему зря. Вполне уместно указать людям, чтобы правильный путь выбирали. Я тоже как раз после фортрана77 и Бейсика учил С по книжке. Отличный и простой язык. Очень схож с Паскалем. Отличие только в наличии указателей и функций с переменным числом аргументов. Всё. Остальное полностью совпадает по семантике и синтаксису.

Оффлайн Toth

  • *****
  • Сообщений: 2 602
  • Благодарностей: 175
    • Сообщения от Toth
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #344 : 28 Апр 2023 [17:07:48] »
С по книжке. Отличный и простой язык. Очень схож с Паскалем
С одной стороны - да, похожи, оба "АЛГОЛоподобные".
С другой стороны, у Паскаля гораздо выше защита от дурака, он создавался как учебный язык. А Си создавали для профи, поэтому для профи в нём больше возможностей для всяких фокусов, а защиты от дурака почти и нет. То есть бывает , то что Паскаль не компилирует, Си выполняет, но результат может быть неожиданным.


Оффлайн LeftUser

  • *****
  • Сообщений: 30 845
  • Благодарностей: 988
  • Кирилл ㋛
    • Сообщения от LeftUser
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #345 : 28 Апр 2023 [17:49:34] »
С другой стороны, у Паскаля гораздо выше защита от дурака, он создавался как учебный язык. А Си создавали для профи, поэтому для профи в нём больше возможностей для всяких фокусов, а защиты от дурака почти и нет.
Да, тут очень хорошо надо себе представлять, какие конструкции в виде ассемблерного кода получаются после компиляции. Очень хорошо начинаешь понимать и усваивать эти правила. По сути тот же пример с делением в ассемблере будет наглядно видно, что используется целочисленная математика с обычными регистрами. Но стоит записать в первом примере:

x = (double)a / b;

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

Оффлайн Павел Васильев

  • ****
  • Сообщений: 498
  • Благодарностей: 18
    • Сообщения от Павел Васильев
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #346 : 02 Мая 2023 [16:45:31] »
С другой стороны, у Паскаля гораздо выше защита от дурака, он создавался как учебный язык.
Вирт, когда создавал язык Паскаль, так не считал, а рассчитывал что язык будут использовать именно профи. Да может с успехом использоваться в образовании и грамотном описании алгоритмов (и книгу написал). А ярлык учебный ему приклеили за то, что на нём гораздо понятней писать читабельные программы. Ну а потом эту мантру про учебный язык программирования, который только для учеников начальных классов школ и годится, с удовольствием подхватили конкуренты из сишной когорты юниксоидов.   
Вот эти примеры на Паскале и Си с типизированными переменными и делением, продолжаются в холиварах уже без малого полвека, что как раз свидетельствует о недостатках типизации и её обработки в Си (хотя в Питоне и этого нет). Вот современный  вариант того, как надо писать, чтобы не было двусмысленности и мучительных догадок что ты получишь в результате.   

Оффлайн Toth

  • *****
  • Сообщений: 2 602
  • Благодарностей: 175
    • Сообщения от Toth
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #347 : 02 Мая 2023 [16:55:18] »
Ну а потом эту мантру про учебный язык программирования, который только для учеников начальных классов школ и годится, с удовольствием подхватили конкуренты из сишной когорты юниксоидов
Да я ничего .. Я сам на Паскаль пишу, мне хватает.
Разве что недавно пытался огромные файлы попробовать на Си обрабатывать, думал что быстрее будет. Но, пока непонятно.. Пока бросил.
Си я пока не освоил на том уровне, что Паскаль.

Оффлайн LeftUser

  • *****
  • Сообщений: 30 845
  • Благодарностей: 988
  • Кирилл ㋛
    • Сообщения от LeftUser
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #348 : 02 Мая 2023 [16:55:24] »
"Программист должен быть ленивым, только тогда он достигнет больших высот" (с) не помню кто.
Так и язык С, если ему не сказать, что именно надо рассчитать с применением плавающий точки, будет рассчитывать без неё обходясь одним процом (без сопроцессора) в виде целочисленного деления. И так во всём. С типизацией именно так в С. А Паскаль требует, чтобы ему сначала всё разжевали, от этого профи его забросили. Слишком зануден.  :D Но повторюсь, сами языки по синтаксису и семантике очень схожи.

Оффлайн Павел Васильев

  • ****
  • Сообщений: 498
  • Благодарностей: 18
    • Сообщения от Павел Васильев
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #349 : 02 Мая 2023 [17:28:23] »
Разве что недавно пытался огромные файлы попробовать на Си обрабатывать, думал что быстрее будет. Но, пока непонятно..
Смотря что обрабатывать - сама работа программы, написанной на с\си++, возможно и будет чуть быстрей, а вот компиляция, сборка и отладка на Дельфи точно быстрей в любом случае. Не говоря уже про более понятный синтаксис. Вот фрагмент кода обработки события движения мышки в окне отображения, во вьюере, с изменением расстояния от камеры до целевого объекта, написанный на на С++ и на Delphi. Код выглядит в целом довольно одинаково, и это хорошо, но последний всё же гораздо читабельней, а компиляция всей небольшой программы на Delphi выполняется примерно в три раза быстрей, чем для варианта на C++ с модерн компилятором LLVM (win32, на win64 вообще туши свет). И это уже главный большой недостаток.   

Оффлайн LeftUser

  • *****
  • Сообщений: 30 845
  • Благодарностей: 988
  • Кирилл ㋛
    • Сообщения от LeftUser
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #350 : 02 Мая 2023 [17:41:48] »
И это уже главный большой недостаток.
Да какой там недостаток  :) Всю программу никто не компилирует постоянно. Компилятор перекомпилирует только изменённые файлы исходников. Грамотное распределение классов по фалам и всё. Да и вообще это финальный процесс вобщем-то.
 Про чистый Си вообще молчу, это практически ассемблер, немного более высокого уровня. Отсюда и все недовольства в типизации. Но у ассемблера этого вообще нет. Зато размер и скорость выполнения недостижимы. Не даром все бортовые системы самолётов (как пример) написаны на нём. Паскаль никогда не применяется в таких серьёзных вещах.

Оффлайн LeftUser

  • *****
  • Сообщений: 30 845
  • Благодарностей: 988
  • Кирилл ㋛
    • Сообщения от LeftUser
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #351 : 02 Мая 2023 [17:58:34] »
Да, изначально это был язык Ада, на котором писались все серьёзные вещи, который постепенно был вытеснен стеком С/С++.
Доля языков программирования при написании ПО F-35. 53% C, 35% C++, 7% ассемблер, 5% Ada 83, менее 1% другие.



А здесь применение языков для боевых самолётов по годам:

« Последнее редактирование: 02 Мая 2023 [18:05:50] от LeftUser »

Оффлайн Павел Васильев

  • ****
  • Сообщений: 498
  • Благодарностей: 18
    • Сообщения от Павел Васильев
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #352 : 02 Мая 2023 [18:06:26] »
Не даром все бортовые системы самолётов (как пример) написаны на нём. Паскаль никогда не применяется в таких серьёзных вещах.
Согласен, ассемблер в паскаль также как и sql можно сказать включён как внутренняя опция, загляни в исходники vcl и ты обнаружишь там массу кода на ассемблере. Но тоже самое можно сказать и о сях. Не барское это дело в стеки матрицы проталкивать и выталкивать. А вот то, что "всю программу никто не компилирует постоянно" - чистое враньё - если ты конечно пишешь по 1-му символу в день, то да, можно не проверять как оно собирается и работает. Ну или ведёшь поддержку  законченной утилиты без изменения кода, а если постоянно добавляешь в main какие-то новые фичи или реструктурируешь, что сплошь и рядом для больших проектов, то тогда как раз постоянно и приходится делать отладку и сборку.   

Оффлайн LeftUser

  • *****
  • Сообщений: 30 845
  • Благодарностей: 988
  • Кирилл ㋛
    • Сообщения от LeftUser
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #353 : 02 Мая 2023 [18:42:31] »
Согласен, ассемблер в паскаль также как и sql можно сказать включён как внутренняя опция, загляни в исходники vcl и ты обнаружишь там массу кода на ассемблере. Но тоже самое можно сказать и о сях. Не барское это дело в стеки матрицы проталкивать и выталкивать.
А вот это я вообще не понял о чём. Я же выше написал, что Си и есть тот ассемблер, на котором всё бортовое ПО пишется.

А вот то, что "всю программу никто не компилирует постоянно" - чистое враньё - если ты конечно пишешь по 1-му символу в день, то да, можно не проверять как оно собирается и работает. Ну или ведёшь поддержку  законченной утилиты без изменения кода, а если постоянно добавляешь в main какие-то новые фичи или реструктурируешь, что сплошь и рядом для больших проектов, то тогда как раз постоянно и приходится делать отладку и сборку.
Странный у вас опыт. Написал несколько классов с обвязкой. Потом компиляция 10-20 секунд. Всё. Проект в несколько сотен тысяч строк кода компилируется уже на билдовой машине и идёт сборка очередного релиза для тестеров по несколько раз в день. Быстрее и не надо.

И вообще какую-то ерунду пишите. Вот конкретно у меня проект в котором порядка 500 файлов. Один раз когда-то я его откомпилировал взяв с корпоративного git, заняло это порядка 30 минут (пол-часа). Это со всеми библиотеками, которые ещё под 1000 файлов занимают. Далее я над ним работаю, исправляю баги, добавляю фичи. В среднем это в день 5 - 10 фалов (в том числе какой-то процент новых). Компиляция для отладки занимает секунды. Остальные то файлы не изменились, компилятор это понимает. А линкер берёт от старых давно откомпилированные объектники и всё это линкует в dll-и и exe. На этом время я практически не теряю.

зы Ну нет у Паскаля будущего. Он давно умер и это надо принять. Ну или далее спорить до исступления  :)

Оффлайн Павел Васильев

  • ****
  • Сообщений: 498
  • Благодарностей: 18
    • Сообщения от Павел Васильев
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #354 : 02 Мая 2023 [19:10:04] »
Ну нет у Паскаля будущего. Он давно умер и это надо принять.
Вот эти вопли слышны уже лет тридцать как, а он живее всех живых и у него отличное будущее. Всё познаётся в сравнении - у меня в постоянной работе и обновлении графический движок вот уже как 20 лет, причём одновременно делается для Delphi и для C++. Под миллион строк кода. Да демосов в обоих вариантах сотни, есть с чем сравнивать. Работать с С++ кодом раза в 2-3 раза более трудоёмко по многим причинам, не считая языковых различий и раздражающе медленной компиляции. При работе с github вам надо делать commit & push исходников, а не  отсылать бинарники для других участников групповой разработки и контрибуторов, так что билд придётся делать всего проекта, чтобы чего не вышло и не пришлось потом делать откаты. Что случалось не раз. Это вам не релиз собирать. Единственный плюс плюсов - большой выбор готовых либ, которые можно подключать сразу (если они не глючат), а в Delphi придётся конвертировать заголовочник. Но, как я уже сказал выше, почти всё написанное на С легко переносится на Паскаль, а теперь и полностью всё, что понаписано на Питоне напрямую можно использовать в Delphi. Кстати о самолётах. Есть отличный симулятор с исходниками, который вполне можно доработать и для развития более продвинутого тренажёра любого типа самолётов.     

Оффлайн LeftUser

  • *****
  • Сообщений: 30 845
  • Благодарностей: 988
  • Кирилл ㋛
    • Сообщения от LeftUser
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #355 : 02 Мая 2023 [19:27:27] »
вам надо делать commit & push исходников, а не  отсылать бинарники

git stash save
git pull -r
git stash pop
git add -A .

перед этим. Только что это здесь к чему на несколько строк? Какие бинарники отсылать? Я же выше написал, что релиз собирается на билдовой машине с Jenkins, если так понятней.

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

зы Даже ТС уже давно сбежал отсюда  ;D

Оффлайн Павел Васильев

  • ****
  • Сообщений: 498
  • Благодарностей: 18
    • Сообщения от Павел Васильев
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #356 : 02 Мая 2023 [21:02:02] »
git stash save  git pull -r  git stash pop  git add -A .
перед этим.
Понятно, такой shell шелухой в терминале широко пользуются особо продвинутые гитисты и им не понять зачем существует клиенты, такие как TortoiseGIT, и для чего Майкрософт предлагает всем Github Desktop. Вернее они знают, но получают от этой писанины удовольствие. Недавно услышал от одного такого - мне, говорит, удобней в командной строке белыми буковками на чёрном экране сто раз в день быстро-быстро написать git remote commit ... и т.д. и т.п., чем пользоваться какими-то удобными программами с GUI. Но он не в курсе что типы файлов в проекте могут быть разные, включая временные и отладочные, но нужные, но не включаемые в git и подсвечиваемые разным цветом, и зачем в среды программирования встраивают такие средства как BeyondCompare. В общем, удачного вам кодирования. А насчёт того, что Паскаль сдох, так это ваше личное мнение совершенно ничем не обосновано. Более того, имхо, при дальнейшем развитии ИИ и использовании таких средств как ChatGPT при программировании более строгий, отлично типизированный и более близкий по ключевым словам и конструкциям к нативному английскому, язык программирования Delphi имеет принципиальное преимущество перед остальными языками кодирования - для формулировки заданий, в машинном обучении и для получения более однозначных ответов в нём меньше неопределённости и больше смысла. Некоторые поймут, что не надо усложнять себе жизнь, будь проще и к тебе потянутся, а двигаться в сторону программирования на китайских иероглифах вообще тупиковый путь, хотя некоторые языки программирования идут именно в ту сторону.       

Оффлайн LeftUser

  • *****
  • Сообщений: 30 845
  • Благодарностей: 988
  • Кирилл ㋛
    • Сообщения от LeftUser
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #357 : 03 Мая 2023 [12:01:19] »
язык программирования Delphi имеет принципиальное преимущество перед остальными языками кодирования
Гон, ваше личное мнение. Реальность говорит об обратном.
Да и приведённый пример говорит о том, что буковок набивать больше, а смысл одинаковый, да и типизация уже у сегодняшнего С++ уж точно не худе Дельфи.



Только с красивостью и изяществом С++ никакой Дельфи уже не сравниться, если писать по сишному, а не как паскалист  ;D
« Последнее редактирование: 03 Мая 2023 [12:13:26] от LeftUser »

Оффлайн АурипигментАвтор темы

  • *****
  • Сообщений: 5 358
  • Благодарностей: 160
  • Ми пацаки с планеты Земля. А Ви кто?
    • Сообщения от Аурипигмент
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #358 : 03 Мая 2023 [21:44:52] »
зы Даже ТС уже давно сбежал отсюда
Никуда я не сбежал. У меня каникулы. :(
Нам тайны не раскрытые раскрыть пора,
Лежат без пользы тайны, как в копилке.
Мы тайны эти с корнем вырвем у ядра,
На волю пустим Джина из бутылки.

Оффлайн CyberManiac

  • *****
  • Сообщений: 8 144
  • Благодарностей: 455
  • Я ♥ オリオン!
    • Сообщения от CyberManiac
Re: Изучаю Паскаль. Присоединяйтесь.
« Ответ #359 : 05 Мая 2023 [11:39:56] »
Вирт, когда создавал язык Паскаль, так не считал, а рассчитывал что язык будут использовать именно профи.
Вирт - профессор. Керниган&Ричи - программисты, которых не уволили вовремя. И в этом корень проблемы.

« Последнее редактирование: 05 Мая 2023 [11:53:43] от CyberManiac »
Трэш, угар и астрономия!
沖縄最高